What I Did With My Winter Holidays, Part 2
Yes, it’s Google Summer Winter of Code update time, because it’s probably not a great idea for me to continue coding at 2:30 am. After a frustrating couple of days grappling with the inadequately documented mess of #defines, deprecated macros, encouraged macros and various other things that constitute the custom event support in wxWidgets, the DBGp library is now basically up to an alpha state, modulo a bit of documentation and the unit tests promised in the last update.
The breakthrough came late this afternoon when I decided to trash what I had, ignore the custom event documentation completely, and instead work off what an application found after some Googling actually did. Lo and behold, things worked. With that in place, it was easy to code the events needed in the library and start playing with them.
Although I’m still a little way off doing any work on the GUI, I decided to look at a couple of issues that impact on it tonight. I attempted to get the project building on Windows last week, but had little success. I don’t know what the difference was tonight, but things went very smoothly, and the library builds cleanly on Windows with no code changes. (For the record, I’m using SCons as a build system at present. I’ll probably — well, I might — end up switching to autoconf when it’s near time for the first release, but I much prefer SCons when I’m hacking away.)
After that, I decided to have a play with some form builders. Through a scientific process (look at the list on the wxWidgets Wiki, exclude the ones that weren’t open source, pick one at random), I came to wxFormBuilder, which seems pretty nifty. To give it a workout, I quickly hacked together a test application that was more featureful than my previous one (which had one giant button to send a status
call to the debugging engine and spat out reams of output to stdout).
Therefore, for the first time, I give you screenshots! The final application will look nothing like this, but it’s nice to have something to show off.
It’s an about box. It’s quite Gnomey, though.
Source code that a CS 101 student would get a pass minus for. Needs more comments. Also more cowbell.
Output brought to you by wxHtmlWindow. Don’t bother sending it CSS.
The debug log — now in a text control instead of stdout!
And, to prove that the Windows build works:
SCons + wxWidgets FTW. Well, apart from that whole custom event business, anyway.
July 13th, 2007 at 02:08
[...] report that’s going to be all that interesting. Reasonable progress has been made since the last update, and I’m basically done with the communication library for now, which has reasonable [...]