1
<html><head><TITLE>Diagram</TITLE></head>
3
<H2><A HREF ="#DOC.DOCU" > <IMG BORDER=0 SRC=down.gif></A> class Diagram : public <!2><A HREF="Document.html#DOC.118.1">Document</A> </H2><BLOCKQUOTE>
4
(abstract) diagram class.
8
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=365>
9
<param name=classes value="CDocument,MDocument.html,CDiagram,MDiagram.html,CTRDiagram,MTRDiagram.html,CSTDiagram,MSTDiagram.html,CSNDiagram,MSNDiagram.html,CRPDiagram,MRPDiagram.html,CPSDiagram,MPSDiagram.html,CGDDiagram,MGDDiagram.html,CERDiagram,MERDiagram.html,CDFDiagram,MDFDiagram.html,CCPDiagram,MCPDiagram.html,CATDiagram,MATDiagram.html">
10
<param name=before value="M,M,M|_,MR_,MR_,MR_,MR_,MR_,MR_,MR_,MR_,Mr_">
11
<param name=after value="Md_,M,M,M,M,M,M,M,M,M,M,M">
12
<param name=indent value="0,1,1,1,1,1,1,1,1,1,1,1">
13
<param name=arrowdir value="down">
19
<DT><h3>Public Fields</h3><DD><TR><TD VALIGN=top><A HREF="#DOC.111.38"> <IMG BORDER=0 SRC=icon1.gif></A> static <!1><A HREF="Sequence.html">Sequence</A> </TD><TD><B>sequence</B> <br>
21
</TD></TR></TABLE><TABLE>
22
<DT><h3>Public Methods</h3><DD><TR><TD VALIGN=top><A HREF="#DOC.111.1"> <IMG BORDER=0 SRC=icon1.gif></A> </TD><TD><B>Diagram</B> (<!1><A HREF="Config.html">Config</A> *, <!1><A HREF="DiagramWindow.html">DiagramWindow</A> *, <!1><A HREF="DiagramViewer.html">DiagramViewer</A> *, <!1><A HREF="Graph.html">Graph</A> *)<br>
24
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.2"> <IMG BORDER=0 SRC=icon1.gif></A> virtual </TD><TD><B>~Diagram</B> ()<br>
26
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.3"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>Initialize</B> ()<br>
28
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.4"> <IMG BORDER=0 SRC=icon1.gif></A> <!1><A HREF="Graph.html">Graph</A>* </TD><TD><B>GetGraph</B> () const <br>
30
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.5"> <IMG BORDER=0 SRC=icon1.gif></A> <!1><A HREF="AssocList.html">AssocList</A>* </TD><TD><B>GetAssocList</B> () const <br>
32
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.6"> <IMG BORDER=0 SRC=icon1.gif></A> virtual <!1><A HREF="Node.html">Node</A>* </TD><TD><B>CreateNode</B> ()<br>
33
<I> Create a new node subject. Depends on current node type.</I>
34
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.7"> <IMG BORDER=0 SRC=icon1.gif></A> virtual <!1><A HREF="Edge.html">Edge</A>* </TD><TD><B>CreateEdge</B> (<!1><A HREF="Subject.html">Subject</A> *n1, <!1><A HREF="Subject.html">Subject</A> *n2)<br>
35
<I> Create edge, checks if connection is allowed. </I>
36
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.8"> <IMG BORDER=0 SRC=icon1.gif></A> virtual <!1><A HREF="NodeShape.html">NodeShape</A>* </TD><TD><B>CreateNodeShape</B> (<!1><A HREF="Node.html">Node</A> *node, int x, int y)<br>
37
<I> Create a node shape at (x,y), with default size and node as subject.</I>
38
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.9"> <IMG BORDER=0 SRC=icon1.gif></A> virtual <!1><A HREF="Line.html">Line</A>* </TD><TD><B>CreateLine</B> (<!1><A HREF="Edge.html">Edge</A> *edge, <!1><A HREF="GShape.html">GShape</A> *fromShape, <!1><A HREF="GShape.html">GShape</A> *toShape, <!1><A HREF="List.html">List</A><<!1><A HREF="Point.html">Point</A> *> *line)<br>
39
<I> Create a line of lineType from fromShape to toShape via points.</I>
40
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.10"> <IMG BORDER=0 SRC=icon1.gif></A> virtual void </TD><TD><B>UpdateNodeType</B> (int num)<br>
41
<I> set/reset current node shape type to/from num.</I>
42
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.11"> <IMG BORDER=0 SRC=icon1.gif></A> virtual void </TD><TD><B>UpdateEdgeType</B> (int num)<br>
43
<I> set/reset current edge shape type to/from num.</I>
44
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.12"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetCurve</B> (bool set)<br>
45
<I> set/reset curved edge shapes.</I>
46
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.13"> <IMG BORDER=0 SRC=icon1.gif></A> bool </TD><TD><B>IsCurve</B> () const <br>
48
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.14"> <IMG BORDER=0 SRC=icon1.gif></A> bool </TD><TD><B>CheckConnection</B> (<!1><A HREF="Subject.html">Subject</A> *n1, <!1><A HREF="Subject.html">Subject</A> *n2)<br>
49
<I> Check if connection between those two nodes is allowed.</I>
50
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.15"> <IMG BORDER=0 SRC=icon1.gif></A> virtual void </TD><TD><B>AddSubject</B> (<!1><A HREF="Subject.html">Subject</A> *s)<br>
51
<I> Add node/edge to graph data structure.</I>
52
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.16"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>AddSubjects</B> (<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *s)<br>
53
<I> Add nodes and edges to graph data structure.</I>
54
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.17"> <IMG BORDER=0 SRC=icon1.gif></A> virtual void </TD><TD><B>RemoveSubject</B> (<!1><A HREF="Subject.html">Subject</A> *s)<br>
55
<I> Remove node/edge from graph data structure.</I>
56
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.18"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>RemoveSubjects</B> (<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *s)<br>
57
<I> Remove nodes and edges from graph data structure.</I>
58
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.19"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>CompleteSubjects</B> (<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *subjects)<br>
59
<I> add edges to subjects which connect the subjects in subjects.</I>
60
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.20"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>CompleteEdges</B> (<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *subjects)<br>
61
<I> add subjects to subjects which are connected by edges in subjects.</I>
62
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.21"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>CompleteSubject</B> (<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *edges, <!1><A HREF="Subject.html">Subject</A> *subject)<br>
63
<I> add to edges all edges of which subject is part.</I>
64
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.22"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>RemoveAll</B> ()<br>
65
<I> Remove all nodes and edges.</I>
66
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.23"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>AnnotateSubject</B> (<!1><A HREF="Subject.html">Subject</A> *s)<br>
67
<I> Annotate subject via pop-up dialog.</I>
68
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.24"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetSubjectAnnotation</B> (<!1><A HREF="string.html">string</A> *s)<br>
69
<I> Annotate annotationSubject</I>
70
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.25"> <IMG BORDER=0 SRC=icon1.gif></A> bool </TD><TD><B>RedirectEdge</B> (<!1><A HREF="Line.html">Line</A> *line, bool first, const <!1><A HREF="Point.html">Point</A> *pt)<br>
71
<I> Redirect line from first or last subject that covers point pt.</I>
72
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.26"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>Move</B> (<!2><A HREF="Document.html#DOC.118.42">MoveType</A>)<br>
73
<I> move diagram in main window.</I>
74
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.27"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SelectSubject</B> (<!1><A HREF="Subject.html">Subject</A> *s)<br>
75
<I> select all shapes of subject in current view. </I>
76
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.28"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SelectSubjects</B> (<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *s)<br>
77
<I> select all shapes of subjects in list in current view.</I>
78
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.29"> <IMG BORDER=0 SRC=icon1.gif></A> virtual bool </TD><TD><B>SetText</B> (<!1><A HREF="TextShape.html">TextShape</A> *t, const <!1><A HREF="string.html">string</A> *s)<br>
79
<I> Update the text of text shape t and the corresponding subject.</I>
80
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.30"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>FindAll</B> (const <!1><A HREF="string.html">string</A> *s, bool send, bool substring, bool nameOnly)<br>
82
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.31"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>FindNext</B> (const <!1><A HREF="string.html">string</A> *s, bool send, bool substring, bool nameOnly)<br>
84
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.32"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>ReplaceAll</B> (const <!1><A HREF="string.html">string</A> *s1, const <!1><A HREF="string.html">string</A> *s2, bool send, bool substring, bool nameOnly)<br>
86
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.33"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>ReplaceNext</B> (const <!1><A HREF="string.html">string</A> *s1, const <!1><A HREF="string.html">string</A> *s2, bool send, bool substring, bool nameOnly)<br>
88
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.34"> <IMG BORDER=0 SRC=icon1.gif></A> virtual bool </TD><TD><B>HasIndexNode</B> (int)<br>
90
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.35"> <IMG BORDER=0 SRC=icon1.gif></A> virtual bool </TD><TD><B>HasIndexShape</B> (int)<br>
92
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.36"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>Reindex</B> ()<br>
94
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.37"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetNextIndex</B> (<!1><A HREF="Node.html">Node</A> *n)<br>
95
<I> Give Node next index nr. and update shapes.</I>
96
</TD></TR></TABLE><TABLE>
97
<DT><h3>Protected Methods</h3><DD><TR><TD VALIGN=top><A HREF="#DOC.111.39"> <IMG BORDER=0 SRC=icon1.gif></A> <!1><A HREF="DiagramViewer.html">DiagramViewer</A>* </TD><TD><B>GetDiagramViewer</B> () const <br>
99
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.40"> <IMG BORDER=0 SRC=icon1.gif></A> int </TD><TD><B>GetNodeType</B> () const <br>
101
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.41"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetNodeType</B> (int n)<br>
103
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.42"> <IMG BORDER=0 SRC=icon1.gif></A> int </TD><TD><B>GetEdgeType</B> () const <br>
105
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.43"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetEdgeType</B> (int n)<br>
107
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.44"> <IMG BORDER=0 SRC=icon1.gif></A> int </TD><TD><B>GetNodeShapeType</B> () const <br>
109
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.45"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetNodeShapeType</B> (int n)<br>
111
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.46"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetLineType</B> (int n)<br>
113
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.47"> <IMG BORDER=0 SRC=icon1.gif></A> int </TD><TD><B>GetLineType</B> () const <br>
115
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.48"> <IMG BORDER=0 SRC=icon1.gif></A> <!2><A HREF="LineStyle.html#DOC.213.1">LineStyle::Type</A> </TD><TD><B>GetNodeLineStyle</B> ()<br>
117
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.49"> <IMG BORDER=0 SRC=icon1.gif></A> <!2><A HREF="LineStyle.html#DOC.213.1">LineStyle::Type</A> </TD><TD><B>GetEdgeLineStyle</B> ()<br>
119
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.50"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetNodeLineStyle</B> (<!2><A HREF="LineStyle.html#DOC.213.1">LineStyle::Type</A> n)<br>
121
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.51"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetEdgeLineStyle</B> (<!2><A HREF="LineStyle.html#DOC.213.1">LineStyle::Type</A> e)<br>
123
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.52"> <IMG BORDER=0 SRC=icon1.gif></A> <!2><A HREF="LineEnd.html#DOC.209.1">LineEnd::Type</A> </TD><TD><B>GetLineEnd1</B> ()<br>
125
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.53"> <IMG BORDER=0 SRC=icon1.gif></A> <!2><A HREF="LineEnd.html#DOC.209.1">LineEnd::Type</A> </TD><TD><B>GetLineEnd2</B> ()<br>
127
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.54"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetLineEnd1</B> (<!2><A HREF="LineEnd.html#DOC.209.1">LineEnd::Type</A> t)<br>
129
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.55"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SetLineEnd2</B> (<!2><A HREF="LineEnd.html#DOC.209.1">LineEnd::Type</A> t)<br>
131
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.56"> <IMG BORDER=0 SRC=icon1.gif></A> bool </TD><TD><B>SetSubjectName</B> (<!1><A HREF="Subject.html">Subject</A> *subject, const <!1><A HREF="string.html">string</A> *s)<br>
132
<I> Sets name of subject to s. Checks if name is allowed.</I>
133
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.57"> <IMG BORDER=0 SRC=icon1.gif></A> bool </TD><TD><B>SetIndex</B> (<!1><A HREF="Node.html">Node</A> *n, const <!1><A HREF="string.html">string</A> *index)<br>
134
<I> Check and set index of a node.</I>
135
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.58"> <IMG BORDER=0 SRC=icon1.gif></A> virtual void </TD><TD><B>PlaceShapes</B> ()<br>
137
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.59"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>LoadEntries</B> ()<br>
139
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.60"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>SaveEntries</B> ()<br>
141
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.61"> <IMG BORDER=0 SRC=icon1.gif></A> virtual <!1><A HREF="Thing.html">Thing</A>* </TD><TD><B>CreateThing</B> (int classNr)<br>
142
<I> Creates a new shape/subject depending on classNr.</I>
143
</TD></TR><TR><TD VALIGN=top><A HREF="#DOC.111.62"> <IMG BORDER=0 SRC=icon1.gif></A> void </TD><TD><B>UpdateNameStrings</B> (<!1><A HREF="Subject.html">Subject</A> *subject)<br>
144
<I> update all name strings of shapes representing subject.</I>
145
</TD></TR></TABLE></DL>
146
<hr><H3>Inherited from <A HREF="Document.html">Document:</A></h3>
150
<DT><h3>Public Classes</h3><DD><DT><IMG SRC=icon2.gif> enum <B>MoveType</B>
152
<DT><h3>Public Methods</h3><DD><DT><IMG SRC=icon2.gif> void <B>New</B>()
153
<DT><IMG SRC=icon2.gif> virtual void <B>Load</B>()
154
<DT><IMG SRC=icon2.gif> virtual void <B>Append</B>()
155
<DT><IMG SRC=icon2.gif> void <B>Save</B>()
156
<DT><IMG SRC=icon2.gif> void <B>SaveAs</B>()
157
<DT><IMG SRC=icon2.gif> void <B>SaveSelectionAs</B>()
158
<DT><IMG SRC=icon2.gif> void <B>Quit</B>()
159
<DT><IMG SRC=icon2.gif> void <B>ShowDocInfo</B>()
160
<DT><IMG SRC=icon2.gif> void <B>ShowSource</B>()
161
<DT><IMG SRC=icon2.gif> void <B>SaveSource</B>()
162
<DT><IMG SRC=icon2.gif> virtual void <B>ShowSummary</B>()
163
<DT><IMG SRC=icon2.gif> virtual void <B>CheckDocument</B>()
164
<DT><IMG SRC=icon2.gif> virtual void <B>ModelCheckDocument</B>()
165
<DT><IMG SRC=icon2.gif> void <B>Annotate</B>()
166
<DT><IMG SRC=icon2.gif> void <B>LoadSave</B>(const <!1><A HREF="string.html">string</A> *file)
167
<DT><IMG SRC=icon2.gif> virtual void <B>DoLoad</B>(const <!1><A HREF="string.html">string</A> *file)
168
<DT><IMG SRC=icon2.gif> void <B>DoSaveAs</B>(const <!1><A HREF="string.html">string</A> *file)
169
<DT><IMG SRC=icon2.gif> void <B>DoSaveSelectionAs</B>(const <!1><A HREF="string.html">string</A> *file)
170
<DT><IMG SRC=icon2.gif> double <B>GetLoadFormat</B>() const
171
<DT><IMG SRC=icon2.gif> void <B>NewFile</B>(const <!1><A HREF="string.html">string</A> *file)
172
<DT><IMG SRC=icon2.gif> bool <B>NewName</B>(const <!1><A HREF="string.html">string</A> *newname)
173
<DT><IMG SRC=icon2.gif> void <B>SetName</B>(const <!1><A HREF="string.html">string</A> *newname)
174
<DT><IMG SRC=icon2.gif> const <!1><A HREF="string.html">string</A>* <B>GetName</B>() const
175
<DT><IMG SRC=icon2.gif> const <!1><A HREF="string.html">string</A>* <B>GetDocType</B>() const
176
<DT><IMG SRC=icon2.gif> const <!1><A HREF="string.html">string</A>* <B>GetSuffix</B>() const
177
<DT><IMG SRC=icon2.gif> const <!1><A HREF="string.html">string</A>* <B>GetToolName</B>() const
178
<DT><IMG SRC=icon2.gif> const <!1><A HREF="string.html">string</A>* <B>GetAuthor</B>() const
179
<DT><IMG SRC=icon2.gif> const <!1><A HREF="string.html">string</A>* <B>GetCreationTime</B>() const
180
<DT><IMG SRC=icon2.gif> bool <B>IsDefault</B>()
181
<DT><IMG SRC=icon2.gif> void <B>NewDir</B>(const <!1><A HREF="string.html">string</A> *newdir)
182
<DT><IMG SRC=icon2.gif> void <B>SetDir</B>(const <!1><A HREF="string.html">string</A> *newdir)
183
<DT><IMG SRC=icon2.gif> const <!1><A HREF="string.html">string</A>* <B>GetDir</B>() const
184
<DT><IMG SRC=icon2.gif> void <B>SetFSDir</B>()
185
<DT><IMG SRC=icon2.gif> void <B>IncChanges</B>()
186
<DT><IMG SRC=icon2.gif> void <B>DecChanges</B>()
187
<DT><IMG SRC=icon2.gif> int <B>GetChanges</B>() const
188
<DT><IMG SRC=icon2.gif> virtual void <B>SetInlineEdit</B>(bool)
189
<DT><IMG SRC=icon2.gif> bool <B>IsModified</B>() const
190
<DT><IMG SRC=icon2.gif> void <B>SetModified</B>(bool set)
191
<DT><IMG SRC=icon2.gif> bool <B>IsLoaded</B>() const
192
<DT><IMG SRC=icon2.gif> bool <B>MayWrite</B>(const <!1><A HREF="string.html">string</A> *path)
193
<DT><IMG SRC=icon2.gif> void <B>SetStatus</B>(const char *msg)
194
<DT><IMG SRC=icon2.gif> void <B>SetStatus</B>(const <!1><A HREF="string.html">string</A> *msg)
195
<DT><IMG SRC=icon2.gif> void <B>SetAnnotation</B>(const <!1><A HREF="string.html">string</A> *s)
196
<DT><IMG SRC=icon2.gif> virtual void <B>Find</B>()
197
<DT><IMG SRC=icon2.gif> virtual void <B>Replace</B>()
198
<DT><IMG SRC=icon2.gif> void <B>UpdateWindow</B>()
199
<DT><IMG SRC=icon2.gif> <!1><A HREF="EditWindow.html">EditWindow</A>* <B>GetMainWindow</B>() const
200
<DT><IMG SRC=icon2.gif> <!1><A HREF="Config.html">Config</A>* <B>GetConfig</B>() const
201
<DT><IMG SRC=icon2.gif> <!1><A HREF="Viewer.html">Viewer</A>* <B>GetViewer</B>() const
202
<DT><IMG SRC=icon2.gif> <!1><A HREF="InputFile.html">InputFile</A>* <B>GetInputFile</B>() const
203
<DT><IMG SRC=icon2.gif> <!1><A HREF="OutputFile.html">OutputFile</A>* <B>GetOutputFile</B>() const
204
<DT><IMG SRC=icon2.gif> <!1><A HREF="TextEditDialog.html">TextEditDialog</A>* <B>GetSourceEditDialog</B>() const
205
<DT><IMG SRC=icon2.gif> <!1><A HREF="TextEditDialog.html">TextEditDialog</A>* <B>GetDocAnnotationDialog</B>() const
206
<DT><IMG SRC=icon2.gif> <!1><A HREF="TextEditDialog.html">TextEditDialog</A>* <B>GetEltAnnotationDialog</B>() const
207
<DT><IMG SRC=icon2.gif> <!1><A HREF="FileSelectionDialog.html">FileSelectionDialog</A>* <B>GetFileSelectionDialog</B>() const
208
<DT><IMG SRC=icon2.gif> <!1><A HREF="FindDialog.html">FindDialog</A>* <B>GetFindDialog</B>() const
209
<DT><IMG SRC=icon2.gif> <!1><A HREF="ReplaceDialog.html">ReplaceDialog</A>* <B>GetReplaceDialog</B>() const
211
<DT><h3>Protected Fields</h3><DD><DT><IMG SRC=icon2.gif> <!1><A HREF="string.html">string</A> <B>chkbuf</B>
213
<DT><h3>Protected Methods</h3><DD><DT><IMG SRC=icon2.gif> bool <B>IsAppending</B>() const
214
<DT><IMG SRC=icon2.gif> bool <B>IsSaveSelection</B>() const
215
<DT><IMG SRC=icon2.gif> virtual void <B>UpdateDirectory</B>(const <!1><A HREF="string.html">string</A> *s)
216
<DT><IMG SRC=icon2.gif> void <B>ShowDialog</B>(<!2><A HREF="MessageDialog.html#DOC.225.1">MessageDialog::DialogType</A>, const char *title, const char *text)
217
<DT><IMG SRC=icon2.gif> void <B>ShowDialog</B>(<!2><A HREF="MessageDialog.html#DOC.225.1">MessageDialog::DialogType</A>, const char *title, const <!1><A HREF="string.html">string</A> *text)
218
<DT><IMG SRC=icon2.gif> void <B>ReportCheck</B>(int errors, const <!1><A HREF="string.html">string</A> *msg)
219
<DT><IMG SRC=icon2.gif> bool <B>Save</B>(const <!1><A HREF="string.html">string</A> *file)
223
<h2> Documentation </h2>
225
(abstract) diagram class.
231
<A NAME ="DOC.111.1">
232
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> Diagram(<!1><A HREF="Config.html">Config</A> *, <!1><A HREF="DiagramWindow.html">DiagramWindow</A> *, <!1><A HREF="DiagramViewer.html">DiagramViewer</A> *, <!1><A HREF="Graph.html">Graph</A> *)</B></TT>
235
<A NAME ="DOC.111.2">
236
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual ~Diagram()</B></TT>
238
<A NAME="Initialize">
239
<A NAME ="DOC.111.3">
240
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void Initialize()</B></TT>
243
<A NAME ="DOC.111.4">
244
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> <!1><A HREF="Graph.html">Graph</A>* GetGraph() const </B></TT>
246
<A NAME="GetAssocList">
247
<A NAME ="DOC.111.5">
248
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> <!1><A HREF="AssocList.html">AssocList</A>* GetAssocList() const </B></TT>
250
<A NAME="CreateNode">
251
<A NAME ="DOC.111.6">
252
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual <!1><A HREF="Node.html">Node</A>* CreateNode()</B></TT>
253
<DD> Create a new node subject. Depends on current node type.
255
<A NAME="CreateEdge">
256
<A NAME ="DOC.111.7">
257
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual <!1><A HREF="Edge.html">Edge</A>* CreateEdge(<!1><A HREF="Subject.html">Subject</A> *n1, <!1><A HREF="Subject.html">Subject</A> *n2)</B></TT>
258
<DD> Create edge, checks if connection is allowed.
260
<A NAME="CreateNodeShape">
261
<A NAME ="DOC.111.8">
262
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual <!1><A HREF="NodeShape.html">NodeShape</A>* CreateNodeShape(<!1><A HREF="Node.html">Node</A> *node, int x, int y)</B></TT>
263
<DD> Create a node shape at (x,y), with default size and node as subject.
265
<A NAME="CreateLine">
266
<A NAME ="DOC.111.9">
267
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual <!1><A HREF="Line.html">Line</A>* CreateLine(<!1><A HREF="Edge.html">Edge</A> *edge, <!1><A HREF="GShape.html">GShape</A> *fromShape, <!1><A HREF="GShape.html">GShape</A> *toShape, <!1><A HREF="List.html">List</A><<!1><A HREF="Point.html">Point</A> *> *line)</B></TT>
268
<DD> Create a line of lineType from fromShape to toShape via points.
270
<A NAME="UpdateNodeType">
271
<A NAME ="DOC.111.10">
272
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual void UpdateNodeType(int num)</B></TT>
273
<DD> set/reset current node shape type to/from num.
275
<A NAME="UpdateEdgeType">
276
<A NAME ="DOC.111.11">
277
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual void UpdateEdgeType(int num)</B></TT>
278
<DD> set/reset current edge shape type to/from num.
281
<A NAME ="DOC.111.12">
282
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetCurve(bool set)</B></TT>
283
<DD> set/reset curved edge shapes.
286
<A NAME ="DOC.111.13">
287
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> bool IsCurve() const </B></TT>
289
<A NAME="CheckConnection">
290
<A NAME ="DOC.111.14">
291
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> bool CheckConnection(<!1><A HREF="Subject.html">Subject</A> *n1, <!1><A HREF="Subject.html">Subject</A> *n2)</B></TT>
292
<DD> Check if connection between those two nodes is allowed.
294
<A NAME="AddSubject">
295
<A NAME ="DOC.111.15">
296
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual void AddSubject(<!1><A HREF="Subject.html">Subject</A> *s)</B></TT>
297
<DD> Add node/edge to graph data structure.
299
<A NAME="AddSubjects">
300
<A NAME ="DOC.111.16">
301
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void AddSubjects(<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *s)</B></TT>
302
<DD> Add nodes and edges to graph data structure.
304
<A NAME="RemoveSubject">
305
<A NAME ="DOC.111.17">
306
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual void RemoveSubject(<!1><A HREF="Subject.html">Subject</A> *s)</B></TT>
307
<DD> Remove node/edge from graph data structure.
309
<A NAME="RemoveSubjects">
310
<A NAME ="DOC.111.18">
311
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void RemoveSubjects(<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *s)</B></TT>
312
<DD> Remove nodes and edges from graph data structure.
314
<A NAME="CompleteSubjects">
315
<A NAME ="DOC.111.19">
316
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void CompleteSubjects(<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *subjects)</B></TT>
317
<DD> add edges to subjects which connect the subjects in subjects.
319
<A NAME="CompleteEdges">
320
<A NAME ="DOC.111.20">
321
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void CompleteEdges(<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *subjects)</B></TT>
322
<DD> add subjects to subjects which are connected by edges in subjects.
324
<A NAME="CompleteSubject">
325
<A NAME ="DOC.111.21">
326
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void CompleteSubject(<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *edges, <!1><A HREF="Subject.html">Subject</A> *subject)</B></TT>
327
<DD> add to edges all edges of which subject is part.
330
<A NAME ="DOC.111.22">
331
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void RemoveAll()</B></TT>
332
<DD> Remove all nodes and edges.
334
<A NAME="AnnotateSubject">
335
<A NAME ="DOC.111.23">
336
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void AnnotateSubject(<!1><A HREF="Subject.html">Subject</A> *s)</B></TT>
337
<DD> Annotate subject via pop-up dialog.
339
<A NAME="SetSubjectAnnotation">
340
<A NAME ="DOC.111.24">
341
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetSubjectAnnotation(<!1><A HREF="string.html">string</A> *s)</B></TT>
342
<DD> Annotate annotationSubject
344
<A NAME="RedirectEdge">
345
<A NAME ="DOC.111.25">
346
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> bool RedirectEdge(<!1><A HREF="Line.html">Line</A> *line, bool first, const <!1><A HREF="Point.html">Point</A> *pt)</B></TT>
347
<DD> Redirect line from first or last subject that covers point pt.
350
<A NAME ="DOC.111.26">
351
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void Move(<!2><A HREF="Document.html#DOC.118.42">MoveType</A>)</B></TT>
352
<DD> move diagram in main window.
354
<A NAME="SelectSubject">
355
<A NAME ="DOC.111.27">
356
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SelectSubject(<!1><A HREF="Subject.html">Subject</A> *s)</B></TT>
357
<DD> select all shapes of subject in current view.
359
<A NAME="SelectSubjects">
360
<A NAME ="DOC.111.28">
361
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SelectSubjects(<!1><A HREF="List.html">List</A><<!1><A HREF="Subject.html">Subject</A> *> *s)</B></TT>
362
<DD> select all shapes of subjects in list in current view.
365
<A NAME ="DOC.111.29">
366
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual bool SetText(<!1><A HREF="TextShape.html">TextShape</A> *t, const <!1><A HREF="string.html">string</A> *s)</B></TT>
367
<DD> Update the text of text shape t and the corresponding subject.
370
<A NAME ="DOC.111.30">
371
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void FindAll(const <!1><A HREF="string.html">string</A> *s, bool send, bool substring, bool nameOnly)</B></TT>
374
<A NAME ="DOC.111.31">
375
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void FindNext(const <!1><A HREF="string.html">string</A> *s, bool send, bool substring, bool nameOnly)</B></TT>
377
<A NAME="ReplaceAll">
378
<A NAME ="DOC.111.32">
379
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void ReplaceAll(const <!1><A HREF="string.html">string</A> *s1, const <!1><A HREF="string.html">string</A> *s2, bool send, bool substring, bool nameOnly)</B></TT>
381
<A NAME="ReplaceNext">
382
<A NAME ="DOC.111.33">
383
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void ReplaceNext(const <!1><A HREF="string.html">string</A> *s1, const <!1><A HREF="string.html">string</A> *s2, bool send, bool substring, bool nameOnly)</B></TT>
385
<A NAME="HasIndexNode">
386
<A NAME ="DOC.111.34">
387
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual bool HasIndexNode(int)</B></TT>
389
<A NAME="HasIndexShape">
390
<A NAME ="DOC.111.35">
391
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual bool HasIndexShape(int)</B></TT>
394
<A NAME ="DOC.111.36">
395
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void Reindex()</B></TT>
397
<A NAME="SetNextIndex">
398
<A NAME ="DOC.111.37">
399
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetNextIndex(<!1><A HREF="Node.html">Node</A> *n)</B></TT>
400
<DD> Give Node next index nr. and update shapes.
403
<A NAME ="DOC.111.38">
404
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> static <!1><A HREF="Sequence.html">Sequence</A> sequence</B></TT>
406
<A NAME="GetDiagramViewer">
407
<A NAME ="DOC.111.39">
408
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> <!1><A HREF="DiagramViewer.html">DiagramViewer</A>* GetDiagramViewer() const </B></TT>
410
<A NAME="GetNodeType">
411
<A NAME ="DOC.111.40">
412
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> int GetNodeType() const </B></TT>
414
<A NAME="SetNodeType">
415
<A NAME ="DOC.111.41">
416
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetNodeType(int n)</B></TT>
418
<A NAME="GetEdgeType">
419
<A NAME ="DOC.111.42">
420
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> int GetEdgeType() const </B></TT>
422
<A NAME="SetEdgeType">
423
<A NAME ="DOC.111.43">
424
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetEdgeType(int n)</B></TT>
426
<A NAME="GetNodeShapeType">
427
<A NAME ="DOC.111.44">
428
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> int GetNodeShapeType() const </B></TT>
430
<A NAME="SetNodeShapeType">
431
<A NAME ="DOC.111.45">
432
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetNodeShapeType(int n)</B></TT>
434
<A NAME="SetLineType">
435
<A NAME ="DOC.111.46">
436
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetLineType(int n)</B></TT>
438
<A NAME="GetLineType">
439
<A NAME ="DOC.111.47">
440
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> int GetLineType() const </B></TT>
442
<A NAME="GetNodeLineStyle">
443
<A NAME ="DOC.111.48">
444
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> <!2><A HREF="LineStyle.html#DOC.213.1">LineStyle::Type</A> GetNodeLineStyle()</B></TT>
447
<A NAME="GetEdgeLineStyle">
448
<A NAME ="DOC.111.49">
449
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> <!2><A HREF="LineStyle.html#DOC.213.1">LineStyle::Type</A> GetEdgeLineStyle()</B></TT>
452
<A NAME="SetNodeLineStyle">
453
<A NAME ="DOC.111.50">
454
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetNodeLineStyle(<!2><A HREF="LineStyle.html#DOC.213.1">LineStyle::Type</A> n)</B></TT>
457
<A NAME="SetEdgeLineStyle">
458
<A NAME ="DOC.111.51">
459
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetEdgeLineStyle(<!2><A HREF="LineStyle.html#DOC.213.1">LineStyle::Type</A> e)</B></TT>
462
<A NAME="GetLineEnd1">
463
<A NAME ="DOC.111.52">
464
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> <!2><A HREF="LineEnd.html#DOC.209.1">LineEnd::Type</A> GetLineEnd1()</B></TT>
466
<A NAME="GetLineEnd2">
467
<A NAME ="DOC.111.53">
468
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> <!2><A HREF="LineEnd.html#DOC.209.1">LineEnd::Type</A> GetLineEnd2()</B></TT>
470
<A NAME="SetLineEnd1">
471
<A NAME ="DOC.111.54">
472
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetLineEnd1(<!2><A HREF="LineEnd.html#DOC.209.1">LineEnd::Type</A> t)</B></TT>
474
<A NAME="SetLineEnd2">
475
<A NAME ="DOC.111.55">
476
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SetLineEnd2(<!2><A HREF="LineEnd.html#DOC.209.1">LineEnd::Type</A> t)</B></TT>
478
<A NAME="SetSubjectName">
479
<A NAME ="DOC.111.56">
480
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> bool SetSubjectName(<!1><A HREF="Subject.html">Subject</A> *subject, const <!1><A HREF="string.html">string</A> *s)</B></TT>
481
<DD> Sets name of subject to s. Checks if name is allowed.
484
<A NAME ="DOC.111.57">
485
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> bool SetIndex(<!1><A HREF="Node.html">Node</A> *n, const <!1><A HREF="string.html">string</A> *index)</B></TT>
486
<DD> Check and set index of a node.
488
<A NAME="PlaceShapes">
489
<A NAME ="DOC.111.58">
490
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual void PlaceShapes()</B></TT>
492
<A NAME="LoadEntries">
493
<A NAME ="DOC.111.59">
494
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void LoadEntries()</B></TT>
496
<A NAME="SaveEntries">
497
<A NAME ="DOC.111.60">
498
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void SaveEntries()</B></TT>
500
<A NAME="CreateThing">
501
<A NAME ="DOC.111.61">
502
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> virtual <!1><A HREF="Thing.html">Thing</A>* CreateThing(int classNr)</B></TT>
503
<DD> Creates a new shape/subject depending on classNr.
505
<A NAME="UpdateNameStrings">
506
<A NAME ="DOC.111.62">
507
<DT><IMG BORDER=0 SRC=icon2.gif><TT><B> void UpdateNameStrings(<!1><A HREF="Subject.html">Subject</A> *subject)</B></TT>
508
<DD> update all name strings of shapes representing subject.
511
<DL><DT><B>Direct child classes:
512
</B><DD><A HREF="TRDiagram.html"> TRDiagram </A><br>
513
<A HREF="STDiagram.html"> STDiagram </A><br>
514
<A HREF="SNDiagram.html"> SNDiagram </A><br>
515
<A HREF="RPDiagram.html"> RPDiagram </A><br>
516
<A HREF="PSDiagram.html"> PSDiagram </A><br>
517
<A HREF="GDDiagram.html"> GDDiagram </A><br>
518
<A HREF="ERDiagram.html"> ERDiagram </A><br>
519
<A HREF="DFDiagram.html"> DFDiagram </A><br>
520
<A HREF="CPDiagram.html"> CPDiagram </A><br>
521
<A HREF="ATDiagram.html"> ATDiagram </A><br>
523
<DL></DL><P><I><A HREF="aindex.html"> alphabetic index</A></I> <I><A HREF="HIER.html"> hierarchy of classes</A></I><P><hr>
524
<A HREF="http://www.zib.de/Visual/software/doc++/index.html"><IMG BORDER=0 ALIGN=RIGHT SRC=logo.gif></A>
525
<P Align=Center><I>this page has been generated automatically by doc++</I>
526
<P Align=Center><I>(c)opyright by <A HREF="http://www.zib.de/zoeckler/"> Malte Zöckler</A>, <A HREF="mailto:wunderling@zib.de"> Roland Wunderling </A><br>contact: <A HREF="mailto:doc++@zib.de"> doc++@zib.de</a></I>