[wxPython-dev] Using AUI in the demo

Kevin Ollivier kevino at theolliviers.com
Wed May 9 16:31:48 PDT 2007


Hi Andrea,

On May 9, 2007, at 12:54 PM, Andrea Gavana wrote:

> HI Robin,
>
>    I believe that most of the users will say: "I prefer the native
> look of the demo". It is an understandable point of view, but I don't
> see how introducing wxAUI (or CustomTreeCtrl, even if it's not there)
> will modify the sense of native look and feel.

Let me give you a quick example. To fix the accessibility issues  
Rafael Bejarano raised (i.e. VoiceOver support on Mac) for  
CustomTreeCtrl, someone would have to craft a cross-platform wx  
accessibility API at the C++ level, go on wx-dev and iron it out,  
then implement it on Win/Mac/Linux, and then modify CustomTreeCtrl to  
use that accessibility API. Unless you or someone else volunteers for  
that effort, that leaves us with two options - forget about  
accessibility support, or use native controls, which mostly have  
support built-in or can be quickly fixed because we can access the  
underlying native control events/APIs from C++.

There are several more aspects involved (some of which I wrote to you  
before on wxPython-users, but you never replied), but in any case, I  
personally think things like accessibility support are important for  
the demo. One big reason I chose wx is that by using native controls,  
it works in 'non-standard' configs that I may not have anticipated  
users working with.

> The only thing wxAUI does less natively (but not far from it),

... on Windows ...

> is to
> draw the pane title and icons. Frame managers like wxAUI are fairly
> common on Windows (native one, I mean), and I am pretty sure GTK and
> Mac have their own.

No, as I've posted before on wxPython-users, I don't think Mac has  
many AUI-style interfaces at all, excluding perhaps Java/GTK+ type  
apps, because on Mac you don't maximize every window you create. So  
the concept of frame managers in the AUI sense is pretty tied to  
Windows/Linux window management. There's no point in 'maximizing' a  
pane in Mac, and I doubt any Mac user would expect that dragging a  
pane would detach it and make it float. (I did it on accident, in  
fact, while browsing the demo, and had to fiddle with it to get it  
back.)

The expected Mac behavior would be more like the splitter windows we  
had in previous versions of the demo. iTunes works like this, for  
example.

> I honestly admit that it looks better than before: most of the effect
> is given by the tree icons and menu icons, which in my opinion looked
> a bit "raw" before.

Yes, I completely agree with this - the thing is, as you say, a  
majority of the effect can be gotten without using CustomTreeCtrl or  
AUI. The icons look very sharp and I'd definitely keep them.

> Then, wheter the user close the wxAUI panes or not, there is still a
> menu that allows you to restore the original GUI configuration.

I think if you try customizing the UI using this approach, you'll  
find it's fairly cumbersome compared to the approach used by MSVS,  
Xcode, etc. (each individual pane can be shown/hidden via menu items)  
Changes can be easily "undone" there - here you have to start from  
scratch, and have to manually save any changes you make. I've never  
seen persistence work like that in native apps.

> All in all, I honestly can't see how the demo looks less native  
> than before.

Well, I think AUI looks less native on Mac and works in a fairly non- 
intuitive manner compared to native apps. I think some of it could be  
fixed, but I still think it would be awkward on Mac, and moreover, I  
think 2.8.4 should not be held back by it in order to increase our  
chances of getting the wx updates into Leopard.

Regards,

Kevin

> Andrea.
>
> "Imagination Is The Only Weapon In The War Against Reality."
> http://xoomer.virgilio.it/infinity77/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: wxPython-dev-unsubscribe at lists.wxwidgets.org
> For additional commands, e-mail: wxPython-dev-help at lists.wxwidgets.org
>





More information about the wxpython-dev mailing list