The biggest change is that after consulting my players I entirely abandoned the idea of submaps and removed all submap-related code. This simplified things tremendously, and let me get going on other, arguably more important issues.
I fixed a few bugs (and tried but failed to fix more) relating to the display: the map would sometimes draw over (or under) the scrollbars, but for some reason maximizing the window doesn’t change the size of the drawing area (while resizing does), and I think the viewer still lets the user scroll beyond the borders of the map.
I finally got images (icons) to fill several of my needs, namely battlefields, caves, shrubs, units, caches, and hills. I still need images for centaurs, djinn, dragons, fairies, fields (i.e. farms), giants, griffins, groves, meadows, minotaurs, oases, ogres, phoenixes, sandbars, simurghs, sphinxes, and trolls, but this is a good start.
I extended the drawing-performance test suite I created awhile back, which compares the performance of the two map-version-1 “drawing helpers,” to also test the version-2 helper, and to test drawing tiles (that is, handing them to the helper to be drawn) in the order they are in the map rather than “in order.”
And I fixed various warnings and did a bit of cleanup to reduce the code’s complexity slightly.
The one big item I’d like to get to is changesets. But I don’t really have a good idea of how to go about implementing them, so they’ll probably just sit for awhile longer.
Another somewhat major item is that I’d like to reimplement the “detail panel,” which shows the details and contents of the currently selected tile, using a list or tree rather than icons (which have their own panel showing their details). Using the standard library’s built-in tools instead of my own complicated system should simplify the application somewhat, this should make implementing things like unit movement easier, and if I use a tree I think adding and displaying unit details should be much less difficult.
After that, I hope to finally implement unit details and fixture editing, preferably with some way of defining unit types and then referring to them later.
I hope to add a “find” feature, so players don’t have to search the (increasingly “busy”) map by scrolling.
I hope to add larger images (“portraits”) for units and some other kinds of fixtures.
And I hope to let fixtures have custom images (so that different kinds of units use different icons).
Among other planned features.