File: DotNode.java

package info (click to toggle)
graphviz 14.0.5-1
  • links: PTS
  • area: main
  • in suites: experimental
  • size: 139,388 kB
  • sloc: ansic: 141,938; cpp: 11,957; python: 7,766; makefile: 4,043; yacc: 3,030; xml: 2,972; tcl: 2,495; sh: 1,388; objc: 1,159; java: 560; lex: 423; perl: 243; awk: 156; pascal: 139; php: 58; ruby: 49; cs: 31; sed: 1
file content (69 lines) | stat: -rw-r--r-- 1,584 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
//
// Time-stamp: <30.10.2003 14:33:36h liekweg>
//
// This library is distributed under the BSD license.
// See license.txt for more information.
//
// $Id$
//

package dot;

/**
   <P></P>

   @since   Sun Oct 26 21:59:20 2003
   @author  Florian Liekweg <TT>&lt;liekweg@ipd.info.uni-karlsruhe.de&gt;</TT>, Universitt Karlsruhe (TH), Germany
 */

public class DotNode
{
  /**
     <P>Create a node with the given name (identifier for dot), the
     label (text in the node) and some more attributes.</P>
     @param name    The identifier (for dot)
     @param label   The text in the node
     @param attrs   Further attributes
  */
  public DotNode (String name, String label, DotNodeAttr [] attrs)
  {
    _name = name;
    _label = label;
    _attrs = attrs;
  }

  /**
     <P>Create a node with the given name (identifier for dot) and some more attributes.</P>
     @param name    The identifier (for dot)
     @param attrs   Further attributes
  */
  public DotNode (String name, DotNodeAttr [] attrs)
  {
    this (name, "", attrs);
  }

  public void write (StringBuffer buf)
  {
    buf.append ("\t");
    buf.append (_name);
    buf.append (" [\n\t\t");

    new DotStringAttr (DotAttrNames.LABEL, _label).write (buf);

    if (0 != _attrs.length)
      buf.append (",\n\t\t");

    for (int i = 0;  i < _attrs.length; i ++) {
      _attrs [i].write (buf);
      if (i != _attrs.length-1) {
        buf.append (",\n\t\t");
      }
    }

    buf.append ("];\n");
  }

  private final String _name;
  private final String _label;
  private final DotNodeAttr [] _attrs;
}