Paul Ishenin wrote
These controls are not part of LCL.
Well if core members of the Lazarus project starts suggesting to users that more custom components should be created, then I am afraid the "original design goal" of LCL is all but lost. I've had an argument like this before in this mailing list, and it was pointed out to me that fpGUI is custom draw, LCL in *not*. LCL is only a wrapper of native components, and that is how the Lazarus team wants it to stay.... well, now clearly that design goal is wrong at this time, isn't it? So excuse me for just being a bit confused.
To make my statement factual, here is a quote from Mattias (I just took the first link Google gave me, there are plenty more): "Keep in mind that using the native widgets has several advantages:
- native look. Even when user switches theme or OS.
- widgetset specific goodies: e.g. tab menu of gtk notebook, unicode input method, assistive technology, hardware acceleration, network support (X client/server modell).
So basically every drawing should be avoided in the LCL or at least use only high level drawing functions."
http:/msg22277.html
Again, this brings me to the question, why is the MenuBar in LCL under Windows not a native component? The native component _can_ have glyphs in menu items. Clearly somebody needs to do quality control over what goes into LCL and why custom drawn components get used when native components can apparently do a better job. If no such control exists, I suggest simply make LCL totally custom drawn, have a much more stable framework, less bugs and simply ask the native components theme engine to do to the painting. Qt does this, yet it is 'perceived' as a native widgetset on all platforms it supports, and even in the LCL. And yes, Qt is custom drawn, it does have hardware acceleration, it does change as OS themes changes, it does support assistive technologies, and "network support under X" has nothing to do with native controls by the way (X-Window doesn't have native controls), the latter is all the x protocol itself.