Fun with arrows



Following Cyrille's suggestion, I tried making a better arrow selection
menu.  What I came up with can be seen at
<URL:http://shasta.cs.uiuc.edu/~lrclause/Dia/newarrows.png>.  The reason
I'm using 1-pixel lines is that with 2-pixel lines, the stem is off-center,
and with 3-pixel lines, you can't tell the three circle-with-slash arrows
from each other.  You'll notice that any defects in the arrow drawing is
highly visible here (for instance the integral line obviously has a
blanked-out area).  Hopefully that will force us to improve the arrows:)

Details: I made this by adding a new renderer, RenderPixmap.  It allows
rendering directly onto a pixmap, with a 1-1 translation of sizes.  Thus I
can use the arrow drawing code directly to draw these.  This shrinks the
dia_arrow_preview_expose function from 404 lines to about 30.  I should be
able to do the same for the arrowhead property widget, though that won't
save code.  I shall also be adding tooltips, I think.

Any objections to this?

And finally, a debugging hint:  I got in the situation where I need to
debug the drawing of a menu.  Now X (or Gtk or someone) doesn't allow you
to change window while a menu window is open, so when gdb stopped while the
arrow menu was up, I couldn't do anything... except change to the console.
So, I run gdb in 'screen' instead, when I am stuck in a menu, I change to
the console and go 'screen -d -r'.  Voila, gdb session in console.

-Lars

-- 
Lars Clausen (http://shasta.cs.uiuc.edu/~lrclause)| Hårdgrim of Numenor
"I do not agree with a word that you say, but I   |----------------------------
will defend to the death your right to say it."   | Where are we going, and
    --Evelyn Beatrice Hall paraphrasing Voltaire  | what's with the handbasket?



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]