On Fri, 04 Jun 1999 12:37:15 Brian Bruns wrote: > I just found Dia today and got it, compiled. It is a truely impressive > program. As someone who occasionally boots to 95 to do diagraming in > Visio of our database replication domains, this could increase my Linux > boxes uptime considerably at work. (My other required Win95 program, Notes > runs under Wine) I had the same problem the other day when I had to use CorelFLOW. > Which brings me to my next point, I am adding a new set of objects that > are particular to Sybase ASE and Sybase replication server. (By the way > the ease of adding such a thing amazed me, I finished adding 4 of 6 > objects in just an hour or two, having never seen the code > before....congrats!) Damn! It's taken me a good 4 hours just to do the "Document" symbol and "Manual Process" Symbol for my damn Business Studies Assignment, but this is my first real experience w/ C. Anyway, my problem...I'm trying to keep the symbols > looking very close to the Sybase ones. There is a symbol for something > called a log transfer manager which (pardon the text rendering) looks > something like: > > /\ > / \ > /________\ > | | ____ > \ \ / / > \____\/____/ > > (It's supposed to look like an arrow with a little tail on it) > > Anyway, I couldn't see any support for doing a filled region based on a > couple of arcs and a couple lines. That is, picking an arbitrary point > inside the closed area and having it filled. Is there such a thing? If > not what would be the best way to go about adding it? I've found beziers to work better, to get the tail _only_ do something like this: bezier[0].x = x; bezier[0].y = y; bezier[1].x = x+0.25*w; bezier[1].y = y+h; bezier[2] = bezier[1]; bezier[3].x = x+0.5*w; bezier[3].y = y+h; bezier[4].x = x+0.75*w; bezier[4].y = y+h; bezier[5] = bezier[4]; bezier[6].x = x+w; bezier[6].y = y; bezier[7] = bezier[6]; bezier[8] = bezier[6]; bezier[9].x = x+2.0*w/3.0; bezier[9].y = y; bezier[10] = bezier[9]; bezier[11].x = x+2.0*w/3.0; bezier[11].y = y+h; bezier[12] = bezier[3]; bezier[13].x = x+1.0*w/3.0; bezier[13].y = y+h; bezier[14].x = x+w/3.0; bezier[14].y = y; bezier[15] = bezier[14]; renderer->ops->draw_bezier(renderer, bezier, 16, &color_black); You'd have to modify the points to get the arrow point on top, of course, but the shift would be (almost) arbitary. > Also a couple other ideas, if you're interested: > 1) one thing I miss from Visio is a duplicate option on the edit menu, > saves a couple of key strokes/mouse clicks. CorelFLOW had the same option. Ctl-D would be useful here > 2) It would be nice if the delete key was bound to the delete operation > (Click on an object and press delete as opposed to Ctl-D) Or Ctl-K (Clear) like in The GIMP > 3) Is anyone working on exporting to HTML? I'd be interested in lending a > hand with this. > 4) It would be nice to denote (on the grid) where a page break is for > printing. All my print outs came out badly. What! you use hardcopy! :-) <<SNIP>> Would it be good to have a second list, for object (plug-in) development? Daniel