On Thu, 2007-07-19 at 17:17 +0200, Günter Dannoritzer wrote:
> Hi,
> 
> I have been using dia now for a while and one drawing type I am using it
> for quite often is that of block diagrams. Now I would like to get a new
> shape that speeds up the drawing of these block diagrams and wonder how
> to create one.
> 
> To give you an idea what type of block diagram I am looking for I picked
> a data sheet from the web:
> 
> http://www.aldec.com/products/ipcores/_datasheets/Aldec/IC-DCT.pdf
> 
> On page 2 of that document they show a block diagram and I would like to
> have a shape that supports the creation of these blocks.
> 
> I am using dia 0.96.1 and I know there is one shape, the data shape in
> AADL, that comes pretty close to what I am looking for.
> 
> What is missing in that shape is that I can add the port name and it
> gets displayed in the block.

That could be done reasonably easily, unless you want to do fancy
avoidance of overlapping and autoresize, which would make it tougher.

> Also I would like a text field for the block name, which is now
> available in the AADL block, and a second text field outside the block
> for the instance name.

That part is not too tricky.

> A minor changed would be to move the arrow of the in port outside of the
> block line and for an out port not have an arrow, just a connection
> point I can connect a line to.

You're probably wanting to use Add Connection Point instead and then
have the arrowhead be on the line instead of part of the port.

> Now the cream would be to have a dialog that allows me to enter all the
> ports that I want to add to that shape at once. I am not sure how
> feasible that is?

At the moment, it would take a fair amount of hacking.  The only object
that has anything like it is the UML class, and it's dangerously
complex.  There's been a bit of work done towards having a List property
available that allows adding multiple instances of properties like the
UML class attributes/operations, but it's not ready yet.

> I looked in the source under:
> 
> http://svn.gnome.org/viewcvs/dia/trunk/objects/AADL/
> 
> And it looks like I find what I am looking for in aadldata.c and aadlport.c.

Indeed.

> In the source the author calls the objects a plug in. Could I also
> create that as a Python plugin or does it need to be in C?

If you want to extend the AADL shape, I'm afraid it'd have to be in C.

-Lars

_______________________________________________
Dia-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/dia-list
FAQ at http://live.gnome.org/Dia/Faq
Main page at http://live.gnome.org/Dia

Reply via email to