Older blog entries for cmorgan (starting at number 2)

Started more changes to a few common controls tonight. Should have a couple of significant patches(600+ lines) by this weekend that will bring those controls up to date with some of the more worked on controls like the toolbar and listview.

Didn't get around do posting a new entry until today, so this is the last 4 days worth of work on wine stuff :-)

-Added code to TOOLBAR_Paint/TOOLBAR_Refresh to only redraw buttons that are inside the invalidated rectangle. Previously whenever a WM_PAINT message was received all buttons were redrawn. As most toolbars have anywhere between 12 and 32 buttons, this was causing anywhere between 10 and 30 extra redraws when the user moved from one button to another as the change in the hot effect of the buttons only affects the button losing the hot effect and the button gaining the hot effect. The patch reduces the amount of processing performed when a toolbar receives a WM_PAINT message by anywhere between 85-95%.

-Fixed a bug in the tooltips code that was causing tooltips to not appear or be created properly.

-Added logic to the toolbar control so we only try to redraw buttons that had the hot effect applied to them, this stopped the redrawing of disabled buttons that showed no hot effect.

Fixed a sizing bug in listview yesterday night, in list mode when items were added/modified and their text became wider than the width of each item the text was cut off. Added a check to resize columns properly in list and small icon views which fixes a bug with CuteFTP.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!