Further tweaking of the revised members palette results in this design. First, the 4-bit depth is gone for sure, so that's one thing to cross off of my list. Additionally, as it can be seen the labeling is done by putting all members in a grid. The window is small enough that I can make it fixed size (well, except for the collapsing of the thumbnail and hints sections, though even that may be left out), and so the mini scrollbar was taken out. This frees me to use full-height buttons for the other commands (I'm also planning on adding support for icon states, as it can be seen). Finally, since I see this mode as being superior to the old members palette in every single aspect, there won't be any need for a toggle.
In some ways the new palette should be simpler to code up than the old one (since there's no scrolling to worry about, and inactive members will be drawn as disabled instead of being hidden). The expanding/collapsing of the thumbnail and hints sections may be tricker, but I'm planning on moving to Carbon Events and this should let me smoothly move controls during that operation (if the Finder can do it for its Get Info window, so can I). I think it's about time I switched to using
HIViews for my custom controls, which means requiring Mac OS X 10.2 or later, but that's something I can live with (it's not like I have installs of 10.0 and 10.1 lying around to test against anyway).
The plan is to do a bit of refactoring, by keeping the
MembersPalette interface the same, but completely rewriting its implementation. We'll see how good my object design and encapsulation really is.
The funny thing about this design is that it bears a strong resemblance to the original one that Apple had sent me, back when the plan was to turn Iconographer into the quasi-official icon editor for Mac OS X (perhaps I was being subconsciously influenced by it, but I didn't make the connection until I was done). I rejected it back then due to its bulkiness, which perhaps isn't as much of an issue now (if nothing else, Mac OS X has acquainted people with interfaces that take up a lot of space).
Finally, in light of this pretty significant interface change, and because I'm adding support of icon states, the next version should really be 3.0 (I've been stingy with bumping version numbers anyway).