Boost logo

Boost :

From: brock (brock.peabody_at_[hidden])
Date: 2003-08-08 18:46:10


----- Original Message -----
From: "Rob & Lori" <Rob.Lori_at_[hidden]>
To: "Boost mailing list" <boost_at_[hidden]>
Sent: Friday, August 08, 2003 6:14 PM
Subject: Re: [boost] Re: UI++ [was: GUI sublanguage;Re: GUI/GDI
templatelibrary]

> brock wrote:
>
> >----- Original Message -----
> >From: "Rob & Lori" <Rob.Lori_at_[hidden]>
> >To: "Boost mailing list" <boost_at_[hidden]>
> >Sent: Friday, August 08, 2003 4:10 PM
> >Subject: Re: [boost] Re: UI++ [was: GUI sublanguage; Re: GUI/GDI
> >templatelibrary]

[...]

> Well, if it's going to happen I think it would be best if the Boost
> community does this as part of the library, rather than requiring it's
> users to impelent this EVERY single time they want to use the Boost GUI
> lib for a platform it doesn't already support.

If we have a set of platform independent drawing tools it will only have to
be done once.

[...]

> I don't see the need for totally custom widgets for a Direct X game.
> You may want a custom look and feel, which could be accomplished if the
> Boost GUI lib was written is such away that you could change the 'skin'
> to match a particular platform or even allow you to write a custom skins.

This is starting to sound complicated...

>
> However, the general function the widget controls should be the same
> whether for a game or application.
>
> And this brings up another point. What if users DO want to change how a
> control functions? If we use the native widgets, users are unable to
> change this. Instead, they'd have to write platform specific code to
> create an entirely new widget, and this must be done for all platforms
> you would use this contorl in. However, if Boost imeplements controls
> from scratch then all users would have full control over how a control
> functions and it would be the same for all operating systems.

That sounds very complicated. We're trying to make a simple (as possible)
library that will solve a large chunk of problems The things you are
describing would probably more than double the copmlexity of the library. I
doubt if it would come close to doubling the number of problems we could
solve. Why would I want to change how the controls behave and confuse my
users? I bet most of us would rather rely on native controls even if making
custom controls was an easier solution.

[...]

> I can understand that. We COULD design them in such a way that, when
> using the Windows version, it would dynamically detect which operating
> system the user is running and use the appropriate skin.

Now we're back to writing different controls for each platform. The
differences in controls are more than 'skin deep' (please laugh). A control
has different behaviors on different platforms too.

> Of course,
> Windows XP allows users to use any type of style they want, so I guess
> this really isn't a solution.

What about some version of Windows that hasn't been developed yet?

>
> Either way we go there are pros and cons, it's just my opinion that
> building the controls from scratch will give us much more control and
> flexibility and make it easier to port to other platforms.

I don't think you would disagree with me when I say that the up front cost
of developing from scratch is significantly higher than simply wrapping the
native controls. If we wanted to support many (like more than 10)
platforms, _and_ wanted to have our behaviour be the same on each one we
might save effort this way because we would only have to reimplement low
level drawing utilities. I bet most of us would strongly prefer that our
windows programs look like windows programs, our Mac programs like Mac
programs, etc...

I'd like to hear what some others have to say. Maybe I'm way off base...

regards,
Brock


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk