Source code for the ChopinLiszt application
The source code for Chopin Liszt is 7 pages of Objective C,
and is provided on a limited Open Source basis.
As this is the first release of this application,
it is likely that some bugs remain,
particularly in storage allocation.
As these are corrected, the source code will be updated.
This source code was developed under version 2.2.1 of the Software Developer's Kit,
when compiled under version 3.0 some warnings appear,
primarily references "deprecated" API elements in the Table Cell class.
These will be corrected in a later release.
In addition to these Class sources, the project contains:
A fairly vanilla main.m file.
Interface Builder files
The following user-transparent changes might be made.
The code to scroll the Table View so the cell under inline editing is centered is no longer needed,
as SDK 3.0 builds this into Table View (if First Responder is a subview of a cell).
Instead of using the cell supply routine to add in the EditField for inline editing,
it might be better to just erect a transparent view across the entire screen
(to disable typing) then put the EditField on top of everything else.
OTOH the way it is I could make the green buttons available even while inline editing
a button press would exit inline editing THEN insert a new row.
I'm considering doing this.
It was useful to figure out how serialization works,
but now that Core Data is available for the iPhone we should migrate to it.
It might be instructive to split the view controller into four classes,
one master class with the common code in it and subclasses for editing,
stocktaking, and shopping.
At one point there was a state variable whose value was 1, 2, or 3 depending on what mode we are in.
I removed this, preferring to deduce mode from the other variables.
This was a big lose, as such a state variable would be really useful
in making animations look better.
Maybe we should put this state variable back.
In any case, the animations are weak and should be made better.
Please feel free to report observations through the support page.
Return to Chopin Liszt