Monday, July 13, 2009

Generic Detail Editor Update

As part and parcel of working on the next book, I've been working on the generic detail editing pane controller, and I'm actually pretty happy with the way it's shaping up. Here's a snapshot of the sample application being written for the book that uses this new detail editing pane controller:

Click for larger version

As you can see, I've now added the ability to edit date attributes:

Click for larger version

As well as the ability to edit "to-one" relationships. For "to-one" relationships, the user is allowed to select from a list of objects from the other destination entity:

Click for larger version

And optionally can allow the user to insert new managed objects of the destination type. When the user clicks the "Add new…" row, it takes them to another detail editing page that uses another layout property list file.

The application that these screenshots come from has only one custom controller class: the application's root controller. Everything else is handled by the detail editor controller and its field editor classes based on the contents of two relatively small property list files.

I've had a number of people ask if I'm willing to release the source code before the book is available. The answer to that is yes, I fully intend to release it under a non-viral open source license, but with some caveats. I won't release it until I feel it's relatively stable. Also, because I'm under the gun and behind schedule on More iPhone 3 Development, I won't be able to write much in the way of documentation or a tutorial on the framework. I also probably won't be able to release the sample application until the book is done.

No comments: