Hi, I'm not trying to start a flame war, I would simply like to understand the thinking and decision process of the core lazarus developers regarding the LCL features. I'm sure any developer using LCL would like the following answers as well.
For more background on this issue see the mantis bug report: http://bugs.freepascal.org/view.php?id=9285 In summary. TButton.Color is not available in LCL because Win32 doesn't allow a button face to change color without custom drawing. Yet other widget sets do like Qt and GTK1. Comments from Paul: -------------------------------- Kylix = qt = library that draw widgets itself Win32 = library that also has some mids about widget drawing Why LCL should invent hacks to force win32 draw color buttons? If win32 does not want to do that why LCL should have ability to override designed by ms devels way of button drawing? LCL is library of native widgets = library that uses abilities of underlying libraries. If they (win32 or other) doesnot support something then LCL should not invent own ways. My opinion - this issue should be closed. ======== Comments from Me: ------------------------------ Ok, so LCL uses native widgets - I get that. Well, Qt is a supported widget set of LCL. So Qt should in all respects be consider 'native'. So now, because Win32 doesn't allow Button.Color, Qt may not use Button.Color either! That's a bit unfair. The LCL now limits developers only to what Win32 can do! What happened to LCL being cross-platform? What about the features of other underlying native widget sets? Is Win32 the controlling widget set for LCL. If Win32 doesn't support something, neither may the other widget sets? ======== So, my question again: Is Win32 the controlling widget set in LCL? Is Win32 the deciding widget set for what is allowed in the LCL? If Win32 doesn't support it, it's not going to be supported in the LCL - even if the other native widget sets support a function? How do the core developers decide what is allowed in the LCL and what isn't? What criteria do they use? As a extra argument to Paul: MS developers decided not support MouseEnter and MouseLeave OS level events in Win32. Other widget sets do. Borland even had to hack their own support for it in the VCL. Then in Windows XP and Vista the Microsoft developers show that a 'hot' state over buttons are cool, yet the underlying Win32 still doesn't support MouseEnter and MouseLeave OS events! I wouldn't stake my life on what MS developers decided is good! They sometimes come up with pretty shitty ideas of what they think is right! Regards, - Graeme - _______________________________________________ fpGUI - a cross-platform Free Pascal GUI toolkit http://opensoft.homeip.net/fpgui/ _________________________________________________________________ To unsubscribe: mail [EMAIL PROTECTED] with "unsubscribe" as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
