Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2003-07-26 14:02:59


"Bohdan" <gejrlaug_at_[hidden]> writes:

> "E. Gladyshev" <egladysh_at_[hidden]> wrote in message
> news:20030725181118.76908.qmail_at_web40802.mail.yahoo.com...
>> I was thinking about designing a GUI/GDI template
>> library.
>>
>> The main ideas are:
>> 1. Create a portable template abstraction for standard
>> GUI/GDI elements and dialog boxes.
>> 2. Design an "iterator-like" interface.
>> 3. The most important goal is design a natural
>> connection between STL containers and GUI elements, so
>> that STL data can be easily presented in the GUI
>> environment.
>>
>
> I'm not sure but it looks like FLTK(on sourceforge) is trying
> to follow this way. IMHO it would be better to start from existing
> library, at least from its core. This can avoid design problems
> related to multiple platforms support.
> According to FLTK description, it is very efficient in
> speed & code size.

Yes, but it's terribly low-level. There's not even any way to get
FLTK to manage the lifetime of the data registered with callbacks, for
example. I wouldn't want to base a modern C++ library on it.

> Here is description for future version:
>
> "FLTK 2.0 will utilize many more C++ features including exceptions,
> namespaces, and templates. The use of exceptions and templates will
> be optional. In addition, FLTK 2.0 will provide enhanced device,
> rendering, and style interfaces to support more platforms, printing,
> and application "skins". "

That sounds nice, but I'm concerned with more fundamental
architectural problems. If templates are optional, for example, then
smart pointers can't be deeply ingrained in the library. I can't
imagine writing such a system reliably and scalably without smart
pointers at the core.

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com

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