Goldenseal is a rather big app: 6 million lines of code, which compares to the 20+ million lines in Microsoft Office. We have at least 15 programmer-years invested in it.
Like any big project, you still have to build it one day at a time. We have learned that programmers need to see tangible results at least a couple times a day. A couple times per hour is better. So we are inching along on the interface conversion, with many small milestones (yardstones?). Sometimes we add temporary code to draw something on the screen, just so there is visible progress!
Yesterday we got over a big hump when we figured out how to write ‘linkers’ that connect each of our interface classes to the matching one in Cocoa. Cocoa was using our C++ code weeks ago, but it was much harder to go the other direction. Now that we have a template for a few classes, the rest will be easier.
Along the way, there are many small details to convert or modernize. Right now we are working on colors. Goldenseal used to pick most colors from a palette of 256 colors, but Goldenseal Pro will use ‘color wheels’ with millions of choices.