Boost logo

Boost :

From: Brock Peabody (brock.peabody_at_[hidden])
Date: 2003-07-29 13:46:32


> -----Original Message-----
> From: boost-bounces_at_[hidden]
[mailto:boost-bounces_at_[hidden]]
> On Behalf Of Philippe A. Bouchard
> Sent: Tuesday, July 29, 2003 12:10 PM
> To: boost_at_[hidden]
> Subject: [boost] Re: Re: Re: GUI/GDI template library
>
> Brock Peabody wrote:
>
> [...]
>
> > 1) what types of widgets there are
> > 2) how they are positioned
>
> This is a common property. The widgets can be grouped together and
> dynamically positionned horizontally, vertically or both.
>
> > 3) how they interact with each other (a check box may
> > enable/disable
> > other widgets)
>
> This can be implemented with a signal / slot mechanism or the
container

Something represented somewhere in the implementation by a
boost::function<> is what I had in mind. Is that what you mean?

> can
> be partly specialized for button groups (radio boxes, toggled buttons,
> ...).
>
> > 4) how data is exchanged between the GUI and data structures
>
> With some string, stringstream, filestream, etc. if I understand
> correctly.

There are really two parts. The first is expressing which GUI fields
are tied to which real data fields. This needs to be flexible, but the
simple cases should be simple to write:

   line_edit(&employee::pay_rate);

You also need to be able to specify how that data is formatted and
interpreted. I'm not sure how this would look:

  line_edit(&employee::pay_rate, format_money());

>
> > 5) what is valid input for a given widget. How is invalid input
> > handled
>
> I vote for regex++ on this.

Sounds good to me. I wasn't referring to error detection so much as
the error handling though. I'm sure it will be some sort of signal/slot
mechanism too.

>
> > 6) what is valid input for a group of widgets (each widget may
have
> > valid data but as a group the data is valid)
>

I know we can do all of these things. The tricky part is coming up with
an elegant syntax.


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