On 25 Jan, Lars Clausen wrote:
>
> I've now added having a dialog with defaults pop up at double-click of a
> tool widget, and changed the properties popup to be only one per
> objecttype, not per object (saves not only the dialogs, but also 4 bytes
> per object). This is only implemented for Line yet, as I want to hear if
> the style is ok. It is trivial to add to the other objects
I didn't check out the source much, as i have a lot of other stuff to
do right now. But there is a bug somewhere in the properties stuff for
the line after your changes. By creating a few lines and clicking
pretty wildly on them and changing their properties i did manage to
get a segfault.
> I've (as I said) added polyline, with an object menu to add and delete
> points. It has a few bugs, like that corners stick out of the bounding box
> and connections get confused when new handles are added[1]. Oh, and it
> doesn't save properly yet.
There is also a problem with the bounding box when deleting nodes. You
need to do object_add_updates both before and after modifying an
object, otherwise the area that was removed from the object will not
be cleared/repainted.
> Being the lazy bastard I am, I've just tar'ed it all up in
> <URL:http://shasta.cs.uiuc.edu/~lrclause/Dia_lrclause.tar.gz> (also because
> I don't have a proper copy to diff against).
> Next thing I'd like to do is add arrows.
Just use 'cvs -z3 diff -u' to give you a diff. It's MUCH easier for me
to see what's happened. Especially since it wasn't against the newest
cvs tree which i had localy. Also make sure to update everything and
check your stuff so it works with the latest tree before submitting.
> -Lars
>
> [1] About handles: The Object has an array of handles, but we can't depend
> on the order they are in, so things like Zigzagline use a separate array
> and copy back and forth. The only reason while we can't depend on the
> order seems to be the way add_handle works. Wouldn't it save both time and
> space to change add_handle to just insert the handle in a specific place
> instead?
This is possible. The uml class objects directly manipulates stuff
instead of using add_handle. This might not be very good in general
though. It's a small matter of coding. But the current system works
(for now).
/Alex