[Uml-devel] Re: karbon/umbrello

rwlbuis at xs4all.nl rwlbuis at xs4all.nl
Tue May 13 00:18:22 UTC 2003


Hi Andrew,

> okay... i've figured out an integration plan for karbon/kpainter drawing
> frameworks. it works out in my own head pretty well... we'll see how it
> translates to code :)

Good to see you are active and enthusiastic about the current
integration/reusing plans :)

> its based, for the most part, on the maturity of the karbon framework. i
> think
> there's some better object-orientation of drawing concepts in several
> places
> - particularly the painter framework (like fills, strokes, gradients,
> patterns, etc.). i also think that KPainter has a slightly better
> hierarchy
> for things like patterns (image pattern, solid pattern, etc). i can't find
> any rationale for why those wouldn't be split into subclasses of a base
> pattern class. it's a better separation of concerns. interfaces on
> kpainter
> will be modified to reflect these changes.
>
> as for the object model - KShape stays and so does VObject. i'm going to
> replace KVectorPath with VObject in the inheritance hierarchy. I think
> that
> provides a really interesting way of looking at the object model. one
> branch
> deals with really primitive shapes like rectangles and ellipses while the
> other implements a pretty complicated SVG-like object model. it should be
> sufficient for just about any application wanting to use the kpainter lib.
>
> i'm still not sure on KCanvas. i suspect that i'm going to have
> KCanvasElement
> be a wrapper of either a KShape. maybe. i still need to figure this out a
> little bit better.
>
> i'm also not entirely sure what changes would have to be made to other
> subdirectories within KPainter to support these changes... anyways, i'm
> sure
> i'm skipping some stuff, but that's the basic gist of it. and no... i'm
> not
> going to commit any changes. i'll just send a giant patch when i'm done in
> a
> couple days :)
>
> any thoughts?

IMHO atm its best to work on two things :

- independent libs that offer a certain, clear service, like kpainter and
opal.
- work on requirements for the umbrello2 app, particularly object model,
widgets, canvas, interactivity etc. During this process an evaluation
should be made to see what parts of the object model and canvas stuff can
be reused. Also how opal and kpainter can help umbrello2, karbon and kivio
in the best way...

Ofcourse you are free to reinvent everything, there's always a chance then
to discover new things. But its a lot of work...
Cheers,

Rob.





More information about the umbrello-devel mailing list