Boost logo

Boost :

Subject: Re: [boost] [rfc] cppgui
From: Jarrad Waterloo (jwaterloo_at_[hidden])
Date: 2009-06-15 15:11:25


Yes the items contained in those controls. Think virtual mode where the
control doesn't store items but requests the data as it is needed. That can
save memory, load faster and be able to handle large number of items.
Further, I was considering when the data changes in the model the view, ie.
the control, is notified and when the control edits data than the model is
notified. The MVC pattern encourages good OOP practices and the creation of
reusable data sources. The following are good references. Java's Swing is a
personal preference as it encourages the creation of reusable classes.

Win32 C++
ListView: LVS_OWNERDATA, LVN_GETDISPINFO

Java's Swing
Trees: TreeModel, TreeModelListener
Tables: TableModel, TableModelListener

C#
ListView: VirtualListSize, VirtualMode, RetrieveVirtualItem
 
 

-----Original Message-----
From: boost-bounces_at_[hidden] [mailto:boost-bounces_at_[hidden]]
On Behalf Of Felipe Magno de Almeida
Sent: Monday, June 15, 2009 9:33 AM
To: boost_at_[hidden]
Subject: Re: [boost] [rfc] cppgui

On Mon, Jun 15, 2009 at 10:00 AM, Jarrad
Waterloo<jwaterloo_at_[hidden]> wrote:
> Are you considering using the MVC pattern especially with respect to more
> complex controls such as list, trees and grids? Comparing it to Java, I
like
> the architecture of Swing and SWT over the simple OS wrapper based
> architecture of GWT. Even the recent version of QT, I believe is using the
> MVC pattern. In a nut shell, data mapping and binding is preferable to
> adding data to a particular control and trying to keep the data in sync
with
> the original source!

I'm not sure I follow your question.
Do you mean with regard to the items contained in these controls?
I'm working with an iterator-like interface. You can add and remove,
the signals from user input return the iterator the item used. You
just need to dereference it to see what it was.
The MVC is implemented in cppgui as responses from signals. The
signals would then be executed in another object, which implements the
controller.

[snip]

-- 
Felipe Magno de Almeida
_______________________________________________
Unsubscribe & other changes:
http://lists.boost.org/mailman/listinfo.cgi/boost

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