From: Brad A. <bra...@ma...> - 2006-05-26 15:03:12
|
Alex Tweedly wrote: >The Mac OS X guidelines, indeed the OS provided controls, have some >restrictions on what they allow. Since wxWidgets uses these >controls, wxPython and PythonCard have the same restrictions. >Currently those restrictions are not reflected in the layoutEditor, >which can lead users to think there is a bug in the layoutEditor >(and therefore PythonCard in general). (btw - I wouldn't be at all >surprised if there were indeed bugs in PythonCard and/or the >layoutEditor that exacerbate these problems - but so far I haven't >seen any confirmed cases). > >There probably are lots of such restrictions, but the ones I have >come across are >- textfields (i.e. single line TextCtrl) does not support setting >the backgroundColour >- textarea (i.e. multi-line TextCtrl) does not support alignment >(other than left) >- button does not support setting foregroundColour >- button does not (adequately) support setting backgroundColour > (the rectangle "behind" the button is set, but not within >the button itself - ugly !!) Thanks for bringing this up, Alex. I hadn't tried any of those settings on the Mac. The only limitation I was aware of was on button height; apparently there is UI standard for button height on Mac OS X, and wx keeps you from violating it while running on the Mac. If you create a tall button on another platform, and then run it on a Mac, the button smashes down to the standard size, leaving your button label hanging outside the button (usually above). I like the idea of a popping up warning dialog when using LayoutEditor to change a widget in a way that causes problems with other platforms. It should explain in each case which platform doesn't support the change, and offer to either cancel the change or apply anyway. There could also be a checkbox in the dialog saying "Don't warn me about this again." For those who are targeting only a single platform, and find the warnings annoying, create a preference setting for multiresource editor: checkbox: "Disable All Cross-Platform Warnings" > If that was a preference - should it be per-user, or per project ? I didn't know that PythonCard had a concept of "project". I had assumed the preference would be per user, but if you can tie it to a project that would be great. Some projects target cross-platform, while others do not. |