At 17:19 +0100 10/02/01, Mike Nordell wrote:
>Adding some XP thoughts to the libglade fuel. ;->
>
>I've since I first lay my eyes on our dialog code had a firm belief that all
>dialogs should really be in XP code and XAP code should provide the adaption
>needed to get them to work on each our platforms.

I agree on this. But this NOT an easy task.

>I've mentioned before that I think that currently there's hardly any, if any
>at all, hope that we will ever support a new platform since it would be a
>too daunting task to create all dialogs *once again* for a new platform
>(i.e. we're wasting time doing this over and over, and over again). We also
>have a maintenance nightmare that if any dialog gets changed for one
>platform we have to (currently) change it three times more for the other
>ones.

As the current MacOS porter, I must say that I thought AF would 
provide more things and less pain.

>Which bring me to the issue, what your opinions are re. creating dialog
>controls. Please try to think what you would _like_ to have, not what you
>think is possible on your current platform or in your current
>library/framework (unless of course there is some issue that's you _know_ is
>impossible with that framework/library/window-manager/...).

My opinion is as follow:

We should have a "widget" granularity rather than a "dialog" 
granularity. For most of task, we can have XP code to manage a 
dialog, because fetching/setting widget datas/state/whatever does 
usually work almost the same way.

As for layouting, we could provide a standard scheme to do it and 
each platform maintainer implements the necessary code for the 
platform. Then building a dialog would be just a matter of calling XP 
code.
Something like glade (please, don't flame) but cross platform, would 
be IMHO a nice start.

Another thing I don't understand is why isn't there a standard way to 
construct a platform object. I think it would have been smarter to 
have a standard method, for example XAP_Frame::newPlatformFrame() to 
construct a new XAP_{Unix,Win,BeOS,QNX,Mac}Frame automatically. Note 
that this is valid for most XAP and AP classes, and would move lot of 
code to the XP.




Hub

Reply via email to