[Uml-devel] Re: karbon/umbrello

Andrew Sutton asutton at mcs.kent.edu
Tue May 13 07:20:13 UTC 2003


> I've bee trying to follow this thread.
> some days ago I started a new diagramming code for Umbrello 1 (current
> version) in the hope of solving some problems which would be very difficult
> to fix in the current code.
> I took a (quick) look at Karbon, and I really liked the idea behind it, but
> could not use it as a base because of the KoPoint Vs. QPoint conflicts, not
> so easy integration/dependencies as QCanvas, etc, so I think it'd be great
> to move those for now KOffice specifics which are not really KO speciffic
> to some kdelib.

the stuff that i'm working on right now uses "KRect" and "KPoint". we could 
drop in a "QRect operator()" operator. or we could build our own canvas, 
which i think is what we're doing.

> The other reason I couldnt / didnt want to take Karbon's code as base, is
> that it seems to draw everything as a collection of paths ( vectors ). That
> is, a box is nothing more that four paths put together in some kind of
> container... this of course offers the most flexibility but for umbrello I
> thought it'd be easier to have more specialized objects that just paths, so
> instead of having a bunch of lines and texts for a UML::Class, I wanted a
> UMLClassShape which is specialized on drawing that kind of objects

you're right, but that's the point. we can define a class 
UML::ClassBoxNotation derived from VComposite that manages all the paths or 
drawing commands required to draw the class box based on some reference to a 
UML::Class.

> I've put two overview-diagrams (as png's) at Umbrello's site, in case
> someone is intereseted  ( of course you can also have the code. it's under
> umbrello/diagram and umbrello/plugins/umlwidgets

right. that's been the plan all along. its just that UMLWidget (what i am 
calling UML::ClassBoxNotation), would be ultimately derived from VComposite 
and contain a set of paths that defined the bounding box and contained text 
labels.


andy




More information about the umbrello-devel mailing list