Login | Register
My pages Projects Community openCollabNet

Discussions > dev > [gef-dev] UI/Model split (was Scaling problems)

gef
Discussion topic

Back to topic list

[gef-dev] UI/Model split (was Scaling problems)

Reply

Author Bob Tarling <bob dot tarling at ntlworld dot com>
Full name Bob Tarling <bob dot tarling at ntlworld dot com>
Date 2004-01-30 11:31:17 PST
Message > IIRC, that was an attempt at making it optional for a developer using
> GEF to understand the concept of a Renderer.
One of the things I'd like to investigate at some stage is a client server
version of GEF. This is why I want to firmly split the model from the UI.

I'm thinking of this initially being a 'pass the baton' approach where only
one user, the 'baton' holder can make modifications. All users see these
changes in their view in real time. The baton holder can pass the baton by
clicking in user in a user list panel. Any user can request the baton by
clicking on the current baton holder.

Once this simple approach is working some work could begin to allow multiple
edits.

Please note - this is some way off, I have many other things on my list, but
I'd like to gradually start architecting for this by gradually removing the
models knowledge of the GUI. Possibly eventually splitting GEF into 2 jars,
one for model and one for GUI, I wouldn't like to see any cyclic
dependencies between these.

However I sometimes wonder if Figs are truly GUI objects. I'm starting to
view these as a 2nd layer model, it is more like data about where to
display, very little on how to display.

> I wish there was an easy way for developers to express pairs of
> corresponding classes without having to write a bunch of code to
> explicitly manage the correspondence

Personally I don't like relying on naming conventions. ALthough JUnit is
cool and I'd like to start a test suite.

I've been thinking about the possibilty of letting users define their own
Figs in XML. The same XML could map that Fig to a model class.
XML rules could also dictate which ports can be attached by which edges and
maybe some other simple rules such as degree.

I have quite a few ideas I'd like to try to implement. I'll maybe put a few
proposals together and add some links to the homepage. These can be
discussed further and refined on the dev list.

Others are

- LayoutManagers for better resizing of Figs. I've already started on a
FigFactory as a quick fix to help with this same problem. This is what I'm
working on in core GEF at the moment.

- Change the co-ordinate system of child figs to be based on the position in
parent rather than position in Canvas.

Bob.

----- Original Message -----
From: "Jason Robbins" <jrobbins at tigris dot org>
To: <dev at gef dot tigris dot org>
Sent: Friday, January 30, 2004 6:02 PM
Subject: Re: RE: [gef-dev] Scaling problems


> On Fri, 2004-01-30 at 09:23, bob dot tarling at ntlworld dot com wrote:
> > >>e.g. FigNode has a makePresentation() method
> >
> > Oops, I meant to point out that a NetNode has a makePresentation method.
I don't think the model should know how it's presented.
>
>
> IIRC, that was an attempt at making it optional for a developer using
> GEF to understand the concept of a Renderer.
>
> I think it is good to make some key concepts optional so that new
> developers can get started more easily and so that simple cases can be
> handled simply (e.g., an application object that is only rendered by one
> corresponding Fig object). However, when it is not documented well, it
> looks like bad design.
>
> I wish there was an easy way for developers to express pairs of
> corresponding classes without having to write a bunch of code to
> explicitly manage the correspondence, unless they have a special
> correspondence rule. E.g., if I had application objects Student,
> Instructor, and Course, I might want them rendered by FigStudent,
> FigInstructor, and FigCourse. But. maybe there is one special case,
> applicaton object Room should be rendered by FigBuilding.
>
> One thing has been added to the Java culture since I started GEF is the
> wide spread usage of JUnit. JUnit encourages the use of a simple naming
> convention for corresponding classes. E.g., Student and StudentTest.
> But, it also allows a developer to build their own TestSuite if desired.
>
> Maybe we could go with a naming convention as a way to make Renderers
> optional. E.g., when adding an instance of model class C, the default
> renderer would look for FigC. But, what package should it look in?
> Of course, developers could always add their own Renderer to handle
> special cases.
>
> jason!
>
>
>
> --------------------​--------------------​--------------------​---------
> To unsubscribe, e-mail: dev-unsubscribe at gef dot tigris dot org
> For additional commands, e-mail: dev-help at gef dot tigris dot org
>


--------------------​--------------------​--------------------​---------
To unsubscribe, e-mail: dev-unsubscribe at gef dot tigris dot org
For additional commands, e-mail: dev-help at gef dot tigris dot org

« Previous message in topic | 6 of 10 | Next message in topic »

Messages

Show all messages in topic

[gef-dev] Scaling problems Bob Tarling <bob dot tarling at ntlworld dot com> Bob Tarling <bob dot tarling at ntlworld dot com> 2004-01-29 18:06:21 PST
     RE: [gef-dev] Scaling problems "Christensen, Blake" <Blake dot Christensen at dsionline dot com> "Christensen, Blake" <Blake dot Christensen at dsionline dot com> 2004-01-30 09:01:41 PST
         Re: RE: [gef-dev] Scaling problems bob dot tarling at ntlworld dot com bob dot tarling at ntlworld dot com 2004-01-30 09:19:48 PST
             Re: RE: [gef-dev] Scaling problems bob dot tarling at ntlworld dot com bob dot tarling at ntlworld dot com 2004-01-30 09:23:18 PST
                 Re: RE: [gef-dev] Scaling problems anoncvs anonymous CVS access 2004-01-30 10:02:11 PST
                     [gef-dev] UI/Model split (was Scaling problems) Bob Tarling <bob dot tarling at ntlworld dot com> Bob Tarling <bob dot tarling at ntlworld dot com> 2004-01-30 11:31:17 PST
                         RE: RE: [gef-dev] Scaling problems "Christensen, Blake" <Blake dot Christensen at dsionline dot com> "Christensen, Blake" <Blake dot Christensen at dsionline dot com> 2004-01-30 11:46:28 PST
                             Re: RE: [gef-dev] Scaling problems Bob Tarling <bob dot tarling at ntlworld dot com> Bob Tarling <bob dot tarling at ntlworld dot com> 2004-01-30 11:47:42 PST
                                 Re: RE: [gef-dev] Scaling problems Bob Tarling <bob dot tarling at ntlworld dot com> Bob Tarling <bob dot tarling at ntlworld dot com> 2004-01-30 12:09:41 PST
                         Re: [gef-dev] UI/Model split (was Scaling problems) anoncvs anonymous CVS access 2004-01-30 12:22:52 PST
Messages per page: