From: Beman Dawes (bdawes_at_[hidden])
Date: 2003-07-30 08:09:18
At 02:24 AM 7/30/2003, E. Gladyshev wrote:
>...[compile-time or run-time?] I don't know what is the best way to go.
It is always hard to know the best way to go if you don't know where you
A GUI/GDI library might fill one or more needs:
1) A conceptually clean library, easy-to-use, good for teaching GUI
principles, and useful for real applications where the emphasis is on
portability. Controlling the look-and-feel on different platforms not a
concern. Access to platform specific features not a concern.
2) An adaptable library for applications which do need a certain amount of
control over look-and-feel on different platforms. Portability is quite
important, but so is ability to adapt look-and-feel to different platforms.
Access to some platform specific features may be a concern.
3) Totally controllable library for applications which need to manage every
aspect of look-and-feel, and need access to every feature the platform
provides. Portability not a concern.
(That's an oversimplification, but good enough for discussion.)
Baring a stroke of genius (although on Boost that isn't totally
impossible), it seems very hard to fill all of those needs.
It seems to me that most people who need (3) (or think they need (3))
aren't going to use a portable library anyhow. I'd write-off (3) as a
Once you get over the mental hurtle of being willing to say "this library
doesn't try to fill every possible need", then (1) starts to look very
attractive. It is a niche many other GUI libraries seem to have ignored. If
you concentrate on a conceptually clean and elegant design, then it may
turn out that it can also accommodate (2) fairly well.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk