Our main programming season runs September to June, so it’s ramping up now. First thing on the agenda is the user interface for Windows.
Last January, we built a single-window version for Windows that we really liked. It has a ribbon at the top, an outline view on the left, and a main data entry area on the right. No menu bar at all: everything happens by clicking in the ribbon. We were very excited about the improvement. It condensed the current 200+ menu commands into a much simpler layout. Much more understandable, and easier to use.
Then we switched over to Macintosh, and spent a couple months developing a similar window layout. The first attempt was almost identical. Then we removed most of the clutter from the top, and found that it worked the same, but looked even better.
So we went back to Windows, planning to revise it to look the same as the Mac version. We spent a couple months futzing with toolbars, tear-off windows, and different styles of ribbons. Unfortunately, every attempt failed miserably. Many would crash with mystery error messages. The rest just plain didn’t work.
Software design is hard. There are many ways to fail at it, and over the years we have failed many, many times. Often in new and creative ways. Throwing things out and starting over is a normal part of the software design process. So is giving up for a while, then coming back later. Sometimes inspiration strikes during the gap.
So, in May we decided to work on other things, and postponed the Windows ribbon problem until September.
Well, now it’s September. We still haven’t discovered how to make the Windows and Mac versions look the same, and still work well. There may be an answer lurking in some hidden nook or cranny of the MFC library, but our time is finite, and it’s time to stop looking. They will just be different.
Goldenseal Pro for Windows will have a ribbon at the top, similar to Microsoft Excel or Word. It will be easier for us to program it that way, and Windows users will already be familiar with the appearance. On Mac, Goldenseal will have a simpler, cleaner, more elegant design. That’s what Mac users expect.
The bottom 90% of the Goldenseal Pro window will look the same on both platforms. The top 10% of the window will be different, even though it does the same stuff. Windows will have tabs and labels for each of the ribbon sections, and the Mac won’t.
For most users, this is probably the ideal solution. However, anyone who switches platforms will find there are slightly different instructions for Mac vs Windows. It will be a slight nuisance for those users, and a much bigger nuisance for our tech writing staff. They will be explaining everything twice.
Now that we’ve settled on the basic appearance, it’s just a matter of getting many small things to work, one by one. At the moment, it feels as if the current Goldenseal code is a living and breathing organism, and MFC is a giant and rather clunky mechanical robot. “All” we need to do is hook up electrodes in the right places, so they can work together.
We will post screen shots and pre-release apps, once progress gets further along.