OK, I declare scrollbars to be done. Aside from the ScrollbarHorizontal class, which is more or less a copy-and-paste of the vertical scrollbar, I’m not going to spend any more time on scrollers. They’re not perfect, but they’re close enough for the moment at least. The scrollbar buttons now move the slider by the same amount. (Oh, and I need a resize() function too. Nuts.)
Other things fixed include a number of small problems in the MultiLineTextBox (all out-by-one errors, or ignoring the border errors, etc). It’s got a resize() function now, and the horizontal alignment options work. There are a couple of remaining bugs in this class:
- The vertical alignment options don’t work;
- Increasing the border padding amount to 12 pixels or greater screws up the text.
Neither one is a major problem, and neither should interfere with anything else.
The Alert class is finished. I didn’t bother with a self-resizing window in the end; it was far too much work for very little benefit.
On the SDL side of things, I’ve modified the main loop so that it pumps events correctly. This fixes keyboard reading when Woopsi is compiled for Windows.
The list of changes needed before the next release is now down to:
- Textbox resize
- Slider resize
- Horizontal scrollbar
Spaghetti removal can happen later.