These last days I started to work on drop down listboxes. I implemented the drawing of the button some weeks ago, but listboxes hadn't an aqua look, the drawing of their frame didn't call the native functions. So, I looked at the platform independent part of VCL, and I created a new class of listbox windows, inspired by the floating menu class, and helped by advice of Philipp Lohmann. I added two variables to the ImplSVNWFData structure (svdata.hxx) to chose which listbox window should be used, and if it has scrollbars or scroll symbols like popup menus.
Old style of listbox:
New style of listbox (without and with scroll symbols):
But some bugs still exist, and some features have still to be implemented. For example, there's sometimes a drawing bug (which concerns only listboxes with scroll symbols): some entries and the scroll symbols are not drawn.
Another bug appears when the user clicks the listbox, if the mouse pointer is not in the region of the popup window, this popup window disappears.
Concerning missing features, the checkmark for the selected item is not yet implemented. And when the mouse is over the scroll symbols, the window doesn't scroll yet.
Correct drop down listbox (image from the Apple Human Interface Guidelines):
I'll continue my work these next days to have a more stable and feature complete listbox control.
The patch is here: http://lebasket.free.fr/OOo/02_07_07/patchListBox.diff