Our staff is gradually getting Goldenseal Pro to run, using the QT framework. Right now the app launches, opens files, and fills in a list of accounts and transaction types on the left side of the main window. Next step is to get it to load layouts into tabs on the right. That’s the most important part of the interface for Goldenseal Pro.
Back when we attempted to use Apple’s Cocoa framework, it took two or three months to get this far. So far, progress seems faster with QT, despite spending fewer hours per week. Some of speed increase is because we can reuse previous programming, or at least the logic behind it. Some is because we don’t have to futz with two different programming languages.
We currently are working mostly on Macs, but the same code also runs on Windows. Most likely we will alternate between them.
People warned us that QT is bloated, and they weren’t kidding. I found a list of all the QT classes: there are 1,718 of them. In comparison, Apple’s Cocoa has 654 classes, and Microsoft’s MFC has 475. I put all the QT stuff into a spreadsheet and narrowed it down to things that we might actually use. That gets it to a couple hundred.
In the past few years we used both Cocoa and MFC to build Goldenseal Pro, and failed completely. Not the first time we’ve had to toss months or years of work. Since 1987, our staff has tried about 20 different frameworks for building desktop apps. Only three resulted in actual apps: Microsoft Excel (MacNail), Apple HyperCard (BidMagic), and Metrowerks PowerPlant (the current Goldenseal). All three of them were productive right from the start. So far, QT feels the same way. Despite the bloat, it works. It’s not painful to use. Success is not guaranteed, but I’m more optimistic that we will finish this time.
The real test will be breakdown tables. If necessary we can use the work-arounds already developed for Cocoa, but it would be better if we can have something closer to the current interface. It probably will be 2 or 3 months until we get that far.