[Uml-devel] Umbrello2

Andrew Sutton ansutton at kent.edu
Wed Feb 26 11:32:07 UTC 2003


> I don't use kdevelop, but the idea you described, does sound appealing ;)
> The treeview looks a bit overloaded with all that stuff put in it. It's
> useable, though, but there's always room for optimization.

yup.

> > we should include the possibility to work on diagrams in multiple
> > top-level windows. that should work really well with large design
> > projects and multihead displays. for each window there should be an
> > associated toolbar that contains icons representing all the elements
> > that can be applied to the specific type of diagram - including
> > non-databound graphical artifacts like boxes and text labels. those
> > generic tools should be applicable to all diagrams.
>
> Multiple windows? Hmm, what about making it possible to edit more than one
> diagram at one time and using a tabview on top to switch between them?
> That was an idea that popped into my head when I started using Umbrello.
> However, there has to be a way to edit more than one diagram at a time,
> that's our common ground here.

that could certainly be another possibility. maybe we could follow the 
netscape example and allow both: tabbed browing and multiple top-level 
windows. I think we should definitely include multiple top-level windows. if 
designers have more than one monitor, lets give them the ability to take 
advantage of it.

> Throwing up more than one dialog at a time can be useful, but it's tricky
> to implement, isn't it? You definitely gotta take care of not having two
> of the same dialoges open. And, for example take the class properties
> dialog. If that wouldn't be modal, you'd have to take care that, if the
> user would change some attribute of a class, using its properties dialog,
> you reflect possible changes in the other open dialog. You did mention
> that regarding the diagram, but I think there's more to it ;)
> But I definitely like the idea of having it all more flexible. Slots &
> signals should be our best friends here, don't they?

hmmm... yes. there are some issues here - resolvable with some effort and 
worthwhile. lets say that each class of object in UML (UML::Class, 
UML::Attribute, etc) has an associated dialog (there's only... a couple 
hundred :) for any object in a model, there can be only one dialog open for 
that object - it would be the primary observer of the object.

a short example...
consider a case where you have created a UML class "Foo" and it has an 
operation "goo()". You open a properties dialog for the class Foo and click 
on the Operations tab (or section) and then open another dialog for the 
operation goo(). you now have two dialogs open - one for the class and one 
for the operation. the class dialog should reflect certain changes made to 
the goo() operation object (like updating the return type) because it should 
be displayed with the operation in the class dialog. If you add parameters 
through the operation dialog, they could be reflected in the class dialog as 
well...

it might take some work, but it could be alot worse (really a lot worse). the 
UML metamodel implementation has some signals built into that allows us to 
implement a pretty simple observer pattern. now, the dialogs might be 
somewhat complex - or at least tedious to build, but its certainly do-able.

andy




More information about the umbrello-devel mailing list