src/eric7/Documentation/Source/eric7.Graphics.UMLClassDiagramBuilder.html

branch
eric7
changeset 9209
b99e7fd55fd3
parent 8596
d64760b2da50
child 10070
9f5758c0fec1
equal deleted inserted replaced
9208:3fc8dfeb6ebe 9209:b99e7fd55fd3
1 <!DOCTYPE html>
2 <html><head>
3 <title>eric7.Graphics.UMLClassDiagramBuilder</title>
4 <meta charset="UTF-8">
5 <link rel="stylesheet" href="styles.css">
6 </head>
7 <body>
8 <a NAME="top" ID="top"></a>
9 <h1>eric7.Graphics.UMLClassDiagramBuilder</h1>
10
11 <p>
12 Module implementing a dialog showing a UML like class diagram.
13 </p>
14 <h3>Global Attributes</h3>
15
16 <table>
17 <tr><td>None</td></tr>
18 </table>
19 <h3>Classes</h3>
20
21 <table>
22
23 <tr>
24 <td><a href="#UMLClassDiagramBuilder">UMLClassDiagramBuilder</a></td>
25 <td>Class implementing a builder for UML like class diagrams.</td>
26 </tr>
27 </table>
28 <h3>Functions</h3>
29
30 <table>
31 <tr><td>None</td></tr>
32 </table>
33 <hr />
34 <hr />
35 <a NAME="UMLClassDiagramBuilder" ID="UMLClassDiagramBuilder"></a>
36 <h2>UMLClassDiagramBuilder</h2>
37
38 <p>
39 Class implementing a builder for UML like class diagrams.
40 </p>
41 <h3>Derived from</h3>
42 UMLDiagramBuilder
43 <h3>Class Attributes</h3>
44
45 <table>
46 <tr><td>None</td></tr>
47 </table>
48 <h3>Class Methods</h3>
49
50 <table>
51 <tr><td>None</td></tr>
52 </table>
53 <h3>Methods</h3>
54
55 <table>
56
57 <tr>
58 <td><a href="#UMLClassDiagramBuilder.__init__">UMLClassDiagramBuilder</a></td>
59 <td>Constructor</td>
60 </tr>
61 <tr>
62 <td><a href="#UMLClassDiagramBuilder.__addExternalClass">__addExternalClass</a></td>
63 <td>Private method to add a class defined outside the module.</td>
64 </tr>
65 <tr>
66 <td><a href="#UMLClassDiagramBuilder.__addLocalClass">__addLocalClass</a></td>
67 <td>Private method to add a class defined in the module.</td>
68 </tr>
69 <tr>
70 <td><a href="#UMLClassDiagramBuilder.__arrangeClasses">__arrangeClasses</a></td>
71 <td>Private method to arrange the shapes on the canvas.</td>
72 </tr>
73 <tr>
74 <td><a href="#UMLClassDiagramBuilder.__createAssociations">__createAssociations</a></td>
75 <td>Private method to generate the associations between the class shapes.</td>
76 </tr>
77 <tr>
78 <td><a href="#UMLClassDiagramBuilder.__getCurrentShape">__getCurrentShape</a></td>
79 <td>Private method to get the named shape.</td>
80 </tr>
81 <tr>
82 <td><a href="#UMLClassDiagramBuilder.buildDiagram">buildDiagram</a></td>
83 <td>Public method to build the class shapes of the class diagram.</td>
84 </tr>
85 <tr>
86 <td><a href="#UMLClassDiagramBuilder.fromDict">fromDict</a></td>
87 <td>Public method to populate the class with data persisted by 'toDict()'.</td>
88 </tr>
89 <tr>
90 <td><a href="#UMLClassDiagramBuilder.initialize">initialize</a></td>
91 <td>Public method to initialize the object.</td>
92 </tr>
93 <tr>
94 <td><a href="#UMLClassDiagramBuilder.parsePersistenceData">parsePersistenceData</a></td>
95 <td>Public method to parse persisted data.</td>
96 </tr>
97 <tr>
98 <td><a href="#UMLClassDiagramBuilder.toDict">toDict</a></td>
99 <td>Public method to collect data to be persisted.</td>
100 </tr>
101 </table>
102 <h3>Static Methods</h3>
103
104 <table>
105 <tr><td>None</td></tr>
106 </table>
107
108 <a NAME="UMLClassDiagramBuilder.__init__" ID="UMLClassDiagramBuilder.__init__"></a>
109 <h4>UMLClassDiagramBuilder (Constructor)</h4>
110 <b>UMLClassDiagramBuilder</b>(<i>dialog, view, project, file, noAttrs=False</i>)
111
112 <p>
113 Constructor
114 </p>
115 <dl>
116
117 <dt><i>dialog</i> (UMLDialog)</dt>
118 <dd>
119 reference to the UML dialog
120 </dd>
121 <dt><i>view</i> (UMLGraphicsView)</dt>
122 <dd>
123 reference to the view object
124 </dd>
125 <dt><i>project</i> (Project)</dt>
126 <dd>
127 reference to the project object
128 </dd>
129 <dt><i>file</i> (str)</dt>
130 <dd>
131 file name of a python module to be shown
132 </dd>
133 <dt><i>noAttrs</i> (bool)</dt>
134 <dd>
135 flag indicating, that no attributes should be shown
136 </dd>
137 </dl>
138 <a NAME="UMLClassDiagramBuilder.__addExternalClass" ID="UMLClassDiagramBuilder.__addExternalClass"></a>
139 <h4>UMLClassDiagramBuilder.__addExternalClass</h4>
140 <b>__addExternalClass</b>(<i>_class, x, y</i>)
141
142 <p>
143 Private method to add a class defined outside the module.
144 </p>
145 <p>
146 If the canvas is too small to take the shape, it
147 is enlarged.
148 </p>
149 <dl>
150
151 <dt><i>_class</i> (ModuleParser.Class)</dt>
152 <dd>
153 class to be shown
154 </dd>
155 <dt><i>x</i> (float)</dt>
156 <dd>
157 x-coordinate
158 </dd>
159 <dt><i>y</i> (float)</dt>
160 <dd>
161 y-coordinate
162 </dd>
163 </dl>
164 <a NAME="UMLClassDiagramBuilder.__addLocalClass" ID="UMLClassDiagramBuilder.__addLocalClass"></a>
165 <h4>UMLClassDiagramBuilder.__addLocalClass</h4>
166 <b>__addLocalClass</b>(<i>className, _class, x, y, isRbModule=False</i>)
167
168 <p>
169 Private method to add a class defined in the module.
170 </p>
171 <dl>
172
173 <dt><i>className</i> (str)</dt>
174 <dd>
175 name of the class to be as a dictionary key
176 </dd>
177 <dt><i>_class</i> (ModuleParser.Class)</dt>
178 <dd>
179 class to be shown
180 </dd>
181 <dt><i>x</i> (float)</dt>
182 <dd>
183 x-coordinate
184 </dd>
185 <dt><i>y</i> (float)</dt>
186 <dd>
187 y-coordinate
188 </dd>
189 <dt><i>isRbModule</i> (bool)</dt>
190 <dd>
191 flag indicating a Ruby module
192 </dd>
193 </dl>
194 <a NAME="UMLClassDiagramBuilder.__arrangeClasses" ID="UMLClassDiagramBuilder.__arrangeClasses"></a>
195 <h4>UMLClassDiagramBuilder.__arrangeClasses</h4>
196 <b>__arrangeClasses</b>(<i>nodes, routes, whiteSpaceFactor=1.2</i>)
197
198 <p>
199 Private method to arrange the shapes on the canvas.
200 </p>
201 <p>
202 The algorithm is borrowed from Boa Constructor.
203 </p>
204 <dl>
205
206 <dt><i>nodes</i> (list of str)</dt>
207 <dd>
208 list of nodes to arrange
209 </dd>
210 <dt><i>routes</i> (list of tuple of (str, str))</dt>
211 <dd>
212 list of routes
213 </dd>
214 <dt><i>whiteSpaceFactor</i> (float)</dt>
215 <dd>
216 factor to increase whitespace between
217 items
218 </dd>
219 </dl>
220 <a NAME="UMLClassDiagramBuilder.__createAssociations" ID="UMLClassDiagramBuilder.__createAssociations"></a>
221 <h4>UMLClassDiagramBuilder.__createAssociations</h4>
222 <b>__createAssociations</b>(<i>routes</i>)
223
224 <p>
225 Private method to generate the associations between the class shapes.
226 </p>
227 <dl>
228
229 <dt><i>routes</i> (list of tuple of (str, str))</dt>
230 <dd>
231 list of relationsships
232 </dd>
233 </dl>
234 <a NAME="UMLClassDiagramBuilder.__getCurrentShape" ID="UMLClassDiagramBuilder.__getCurrentShape"></a>
235 <h4>UMLClassDiagramBuilder.__getCurrentShape</h4>
236 <b>__getCurrentShape</b>(<i>name</i>)
237
238 <p>
239 Private method to get the named shape.
240 </p>
241 <dl>
242
243 <dt><i>name</i> (str)</dt>
244 <dd>
245 name of the shape
246 </dd>
247 </dl>
248 <dl>
249 <dt>Return:</dt>
250 <dd>
251 shape
252 </dd>
253 </dl>
254 <dl>
255 <dt>Return Type:</dt>
256 <dd>
257 QGraphicsItem
258 </dd>
259 </dl>
260 <a NAME="UMLClassDiagramBuilder.buildDiagram" ID="UMLClassDiagramBuilder.buildDiagram"></a>
261 <h4>UMLClassDiagramBuilder.buildDiagram</h4>
262 <b>buildDiagram</b>(<i></i>)
263
264 <p>
265 Public method to build the class shapes of the class diagram.
266 </p>
267 <p>
268 The algorithm is borrowed from Boa Constructor.
269 </p>
270 <a NAME="UMLClassDiagramBuilder.fromDict" ID="UMLClassDiagramBuilder.fromDict"></a>
271 <h4>UMLClassDiagramBuilder.fromDict</h4>
272 <b>fromDict</b>(<i>version, data</i>)
273
274 <p>
275 Public method to populate the class with data persisted by 'toDict()'.
276 </p>
277 <dl>
278
279 <dt><i>version</i> (str)</dt>
280 <dd>
281 version of the data
282 </dd>
283 <dt><i>data</i> (dict)</dt>
284 <dd>
285 dictionary containing the persisted data
286 </dd>
287 </dl>
288 <dl>
289 <dt>Return:</dt>
290 <dd>
291 tuple containing a flag indicating success and an info
292 message in case the diagram belongs to a different project
293 </dd>
294 </dl>
295 <dl>
296 <dt>Return Type:</dt>
297 <dd>
298 tuple of (bool, str)
299 </dd>
300 </dl>
301 <a NAME="UMLClassDiagramBuilder.initialize" ID="UMLClassDiagramBuilder.initialize"></a>
302 <h4>UMLClassDiagramBuilder.initialize</h4>
303 <b>initialize</b>(<i></i>)
304
305 <p>
306 Public method to initialize the object.
307 </p>
308 <a NAME="UMLClassDiagramBuilder.parsePersistenceData" ID="UMLClassDiagramBuilder.parsePersistenceData"></a>
309 <h4>UMLClassDiagramBuilder.parsePersistenceData</h4>
310 <b>parsePersistenceData</b>(<i>version, data</i>)
311
312 <p>
313 Public method to parse persisted data.
314 </p>
315 <dl>
316
317 <dt><i>version</i> (str)</dt>
318 <dd>
319 version of the data
320 </dd>
321 <dt><i>data</i> (str)</dt>
322 <dd>
323 persisted data to be parsed
324 </dd>
325 </dl>
326 <dl>
327 <dt>Return:</dt>
328 <dd>
329 flag indicating success
330 </dd>
331 </dl>
332 <dl>
333 <dt>Return Type:</dt>
334 <dd>
335 bool
336 </dd>
337 </dl>
338 <a NAME="UMLClassDiagramBuilder.toDict" ID="UMLClassDiagramBuilder.toDict"></a>
339 <h4>UMLClassDiagramBuilder.toDict</h4>
340 <b>toDict</b>(<i></i>)
341
342 <p>
343 Public method to collect data to be persisted.
344 </p>
345 <dl>
346 <dt>Return:</dt>
347 <dd>
348 dictionary containing data to be persisted
349 </dd>
350 </dl>
351 <dl>
352 <dt>Return Type:</dt>
353 <dd>
354 dict
355 </dd>
356 </dl>
357 <div align="right"><a href="#top">Up</a></div>
358 <hr />
359 </body></html>

eric ide

mercurial