Boost logo

Boost :

From: Brock Peabody (brock.peabody_at_[hidden])
Date: 2003-08-04 13:49:07


> -----Original Message-----
> From: boost-bounces_at_[hidden]
[mailto:boost-bounces_at_[hidden]]
> On Behalf Of E. Gladyshev
> Sent: Monday, August 04, 2003 11:29 AM
> To: Boost mailing list
> Subject: RE: Re: [boost] GUI/GDI template library
>
>
> --- Brock Peabody <brock.peabody_at_[hidden]>
> wrote:
> >
> > http://groups.yahoo.com/group/boost/files/
> >
> > The name is boost_gui.zip. There is a ton of code,
> > but the interface
>
> I think, your library has a lot of good stuff. However
> it does need a major redesign to cleanly remove all
> direct references to the physhical layer (MFC) in the
> template code. For example I am a bit worried about
> defintions like this one:
>
> namespace controls {
>
> struct static_control :
> controls::callback_cwnd<CStatic> {
>
> enum { default_style = WS_CHILD | WS_VISIBLE |
> SS_CENTERIMAGE };
>
> void create(CWnd& parent,
> const std::string& text = "",
> unsigned int style =
default_style,
> const CRect& = CRect(0,0,0,0));
>
> void create(CWnd& parent, unsigned int style);
> };
> }
>
> It seems to me that it might not be very easy to clean
> it up from all MFC references w/o a sustantial
> architectural redesign.

The implementation definitely needs to be redesigned from the ground up.
The nice things is that even with my poor implementation, at the highest
level (dialog.h and dialog.cpp) all of the MFC references are already
hidden.

>
> As far as I remember you suggested to overwrite it
> from scratch too. If we are to do it anyway, I think
> we need to redesign it from scratch as well using your
> library as a knowledge/experience base.

That sounds right to me. The sample boost_gui code was just a proof on
concept, it will be much prettier if we start from scratch.

The biggest thing I am lacking is any experience doing GUI development
outside of MFC. If we can keep our interface simple it might be easiest
to just make the library an interface specification which is implemented
totally independently for each target platform. Does that seem
reasonable?

Brock


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