Mathieu Tozer's Dev Blog

Cocoa, the development of Words, and other software projects (including those dang assessment tasks).




Planning Features


E-mail this post



Remember me (?)



All personal information that you provide here will be governed by the Privacy Policy of Blogger.com. More...



Well the whole purpose of this is to get definitions from dictionaries, right?

So let's make Words look up words.

Again back to the UI drawing board.

Words should try to define themselves on awakeFromInsert
They should know when they have been defined (checkbox)

The application should be able to go through a list of words and define all the ones that haven't been defined yet, when the user indicates that it should be done (maybe via a menu system).

So I have to write awakeFromInsert{}

Maybe I need some kind of utility object that any object can just ask for definitions through. Like something awake from nib in the app delegate, and the object can be given to any other object via an accessor.

This way the words themselves and their controllers (like the thing that goes through a list) can use it to define words.

HEY! It worked first try. It's really nice when things JUST WORK!

It's funny though how you can get something working, but then not want to try it out TOO much for fear of breaking it. Well I'd better get over that, because for my app to survive in the real world I can't allow people to tiptoe around it all the time! So let's really try it out.

[] Connect only once per launch, reconnect as needed.

Ok we had some issues. They have to do with failing gracefully. The one noted above about connecting only once per launch, not every time the dictionary entity object is fetched is important.

Another important modification that needs to be made is with the UI of defining dictionaries.

It took a few minutes of beach ball time, but 171 words auto defined at once, right there, but what good is a definition if you can't read it in the table view?

[] eliminate duplicate words when importing.

But shit, look at that. 171 words and the sql lite database is already 1.4 megabytes. I hope core data is up to the challenge! Access time is still reasonable though.

Use sparkle to distribute from the start so that testers are kept up to date with the developments.

I've been looking at the Cocoa APIs which will let my application know about the availability of networks.

This is what I think it should look like
LookupSystemToDo.jpg

And for word input, there are a few things I need to implement
ServicesMenuWordInputToDo.jpg
This part is also important too for the viewing of definitions
DefiningWordsTodo.jpg

I'm dreaming of the time when I can seed testers with my app.

Along with sparkle, I would like to have a 'feature request' and 'comments / suggestions' menu item which emails them right through to me.

Also, when adding a smart group, I'm still getting all the English words in the Chinese words list, which might mean that when I am creating words in the services menu, I am not properly associating them to a language. Or it could be that the smart group is still fetching for all languages from the moc rather than for the currently selected language to which the smart group belongs.
So what's next?


0 Responses to “Planning Features”

Leave a Reply

      Convert to boldConvert to italicConvert to link

 


+RSS | dev blog | Portfolio

About me

My status

Previous posts

  • my del.icio.us
  • my flickr