16 |
16 |
17 a { color: #BA6D36; } |
17 a { color: #BA6D36; } |
18 |
18 |
19 </style> |
19 </style> |
20 </head> |
20 </head> |
21 <body><a NAME="top" ID="top"></a> |
21 <body> |
|
22 <a NAME="top" ID="top"></a> |
22 <h1>eric6.Graphics.UMLClassDiagramBuilder</h1> |
23 <h1>eric6.Graphics.UMLClassDiagramBuilder</h1> |
|
24 |
23 <p> |
25 <p> |
24 Module implementing a dialog showing a UML like class diagram. |
26 Module implementing a dialog showing a UML like class diagram. |
25 </p> |
27 </p> |
26 <h3>Global Attributes</h3> |
28 <h3>Global Attributes</h3> |
|
29 |
27 <table> |
30 <table> |
28 <tr><td>None</td></tr> |
31 <tr><td>None</td></tr> |
29 </table> |
32 </table> |
30 <h3>Classes</h3> |
33 <h3>Classes</h3> |
31 <table> |
34 |
|
35 <table> |
|
36 |
32 <tr> |
37 <tr> |
33 <td><a href="#UMLClassDiagramBuilder">UMLClassDiagramBuilder</a></td> |
38 <td><a href="#UMLClassDiagramBuilder">UMLClassDiagramBuilder</a></td> |
34 <td>Class implementing a builder for UML like class diagrams.</td> |
39 <td>Class implementing a builder for UML like class diagrams.</td> |
35 </tr> |
40 </tr> |
36 </table> |
41 </table> |
37 <h3>Functions</h3> |
42 <h3>Functions</h3> |
38 <table> |
43 |
39 <tr><td>None</td></tr> |
44 <table> |
40 </table> |
45 <tr><td>None</td></tr> |
41 <hr /><hr /> |
46 </table> |
|
47 <hr /> |
|
48 <hr /> |
42 <a NAME="UMLClassDiagramBuilder" ID="UMLClassDiagramBuilder"></a> |
49 <a NAME="UMLClassDiagramBuilder" ID="UMLClassDiagramBuilder"></a> |
43 <h2>UMLClassDiagramBuilder</h2> |
50 <h2>UMLClassDiagramBuilder</h2> |
|
51 |
44 <p> |
52 <p> |
45 Class implementing a builder for UML like class diagrams. |
53 Class implementing a builder for UML like class diagrams. |
46 </p> |
54 </p> |
47 <h3>Derived from</h3> |
55 <h3>Derived from</h3> |
48 UMLDiagramBuilder |
56 UMLDiagramBuilder |
49 <h3>Class Attributes</h3> |
57 <h3>Class Attributes</h3> |
|
58 |
50 <table> |
59 <table> |
51 <tr><td>None</td></tr> |
60 <tr><td>None</td></tr> |
52 </table> |
61 </table> |
53 <h3>Class Methods</h3> |
62 <h3>Class Methods</h3> |
|
63 |
54 <table> |
64 <table> |
55 <tr><td>None</td></tr> |
65 <tr><td>None</td></tr> |
56 </table> |
66 </table> |
57 <h3>Methods</h3> |
67 <h3>Methods</h3> |
58 <table> |
68 |
|
69 <table> |
|
70 |
59 <tr> |
71 <tr> |
60 <td><a href="#UMLClassDiagramBuilder.__init__">UMLClassDiagramBuilder</a></td> |
72 <td><a href="#UMLClassDiagramBuilder.__init__">UMLClassDiagramBuilder</a></td> |
61 <td>Constructor</td> |
73 <td>Constructor</td> |
62 </tr><tr> |
74 </tr> |
|
75 <tr> |
63 <td><a href="#UMLClassDiagramBuilder.__addExternalClass">__addExternalClass</a></td> |
76 <td><a href="#UMLClassDiagramBuilder.__addExternalClass">__addExternalClass</a></td> |
64 <td>Private method to add a class defined outside the module.</td> |
77 <td>Private method to add a class defined outside the module.</td> |
65 </tr><tr> |
78 </tr> |
|
79 <tr> |
66 <td><a href="#UMLClassDiagramBuilder.__addLocalClass">__addLocalClass</a></td> |
80 <td><a href="#UMLClassDiagramBuilder.__addLocalClass">__addLocalClass</a></td> |
67 <td>Private method to add a class defined in the module.</td> |
81 <td>Private method to add a class defined in the module.</td> |
68 </tr><tr> |
82 </tr> |
|
83 <tr> |
69 <td><a href="#UMLClassDiagramBuilder.__arrangeClasses">__arrangeClasses</a></td> |
84 <td><a href="#UMLClassDiagramBuilder.__arrangeClasses">__arrangeClasses</a></td> |
70 <td>Private method to arrange the shapes on the canvas.</td> |
85 <td>Private method to arrange the shapes on the canvas.</td> |
71 </tr><tr> |
86 </tr> |
|
87 <tr> |
72 <td><a href="#UMLClassDiagramBuilder.__createAssociations">__createAssociations</a></td> |
88 <td><a href="#UMLClassDiagramBuilder.__createAssociations">__createAssociations</a></td> |
73 <td>Private method to generate the associations between the class shapes.</td> |
89 <td>Private method to generate the associations between the class shapes.</td> |
74 </tr><tr> |
90 </tr> |
|
91 <tr> |
75 <td><a href="#UMLClassDiagramBuilder.__getCurrentShape">__getCurrentShape</a></td> |
92 <td><a href="#UMLClassDiagramBuilder.__getCurrentShape">__getCurrentShape</a></td> |
76 <td>Private method to get the named shape.</td> |
93 <td>Private method to get the named shape.</td> |
77 </tr><tr> |
94 </tr> |
|
95 <tr> |
78 <td><a href="#UMLClassDiagramBuilder.buildDiagram">buildDiagram</a></td> |
96 <td><a href="#UMLClassDiagramBuilder.buildDiagram">buildDiagram</a></td> |
79 <td>Public method to build the class shapes of the class diagram.</td> |
97 <td>Public method to build the class shapes of the class diagram.</td> |
80 </tr><tr> |
98 </tr> |
|
99 <tr> |
81 <td><a href="#UMLClassDiagramBuilder.getPersistenceData">getPersistenceData</a></td> |
100 <td><a href="#UMLClassDiagramBuilder.getPersistenceData">getPersistenceData</a></td> |
82 <td>Public method to get a string for data to be persisted.</td> |
101 <td>Public method to get a string for data to be persisted.</td> |
83 </tr><tr> |
102 </tr> |
|
103 <tr> |
84 <td><a href="#UMLClassDiagramBuilder.initialize">initialize</a></td> |
104 <td><a href="#UMLClassDiagramBuilder.initialize">initialize</a></td> |
85 <td>Public method to initialize the object.</td> |
105 <td>Public method to initialize the object.</td> |
86 </tr><tr> |
106 </tr> |
|
107 <tr> |
87 <td><a href="#UMLClassDiagramBuilder.parsePersistenceData">parsePersistenceData</a></td> |
108 <td><a href="#UMLClassDiagramBuilder.parsePersistenceData">parsePersistenceData</a></td> |
88 <td>Public method to parse persisted data.</td> |
109 <td>Public method to parse persisted data.</td> |
89 </tr> |
110 </tr> |
90 </table> |
111 </table> |
91 <h3>Static Methods</h3> |
112 <h3>Static Methods</h3> |
92 <table> |
113 |
93 <tr><td>None</td></tr> |
114 <table> |
94 </table> |
115 <tr><td>None</td></tr> |
|
116 </table> |
|
117 |
95 <a NAME="UMLClassDiagramBuilder.__init__" ID="UMLClassDiagramBuilder.__init__"></a> |
118 <a NAME="UMLClassDiagramBuilder.__init__" ID="UMLClassDiagramBuilder.__init__"></a> |
96 <h4>UMLClassDiagramBuilder (Constructor)</h4> |
119 <h4>UMLClassDiagramBuilder (Constructor)</h4> |
97 <b>UMLClassDiagramBuilder</b>(<i>dialog, view, project, file, noAttrs=False</i>) |
120 <b>UMLClassDiagramBuilder</b>(<i>dialog, view, project, file, noAttrs=False</i>) |
|
121 |
98 <p> |
122 <p> |
99 Constructor |
123 Constructor |
100 </p><dl> |
124 </p> |
|
125 <dl> |
|
126 |
101 <dt><i>dialog</i></dt> |
127 <dt><i>dialog</i></dt> |
102 <dd> |
128 <dd> |
103 reference to the UML dialog (UMLDialog) |
129 reference to the UML dialog (UMLDialog) |
104 </dd><dt><i>view</i></dt> |
130 </dd> |
|
131 <dt><i>view</i></dt> |
105 <dd> |
132 <dd> |
106 reference to the view object (UMLGraphicsView) |
133 reference to the view object (UMLGraphicsView) |
107 </dd><dt><i>project</i></dt> |
134 </dd> |
|
135 <dt><i>project</i></dt> |
108 <dd> |
136 <dd> |
109 reference to the project object (Project) |
137 reference to the project object (Project) |
110 </dd><dt><i>file</i></dt> |
138 </dd> |
|
139 <dt><i>file</i></dt> |
111 <dd> |
140 <dd> |
112 file name of a python module to be shown (string) |
141 file name of a python module to be shown (string) |
113 </dd><dt><i>noAttrs=</i></dt> |
142 </dd> |
|
143 <dt><i>noAttrs=</i></dt> |
114 <dd> |
144 <dd> |
115 flag indicating, that no attributes should be shown |
145 flag indicating, that no attributes should be shown |
116 (boolean) |
146 (boolean) |
117 </dd> |
147 </dd> |
118 </dl><a NAME="UMLClassDiagramBuilder.__addExternalClass" ID="UMLClassDiagramBuilder.__addExternalClass"></a> |
148 </dl> |
|
149 <a NAME="UMLClassDiagramBuilder.__addExternalClass" ID="UMLClassDiagramBuilder.__addExternalClass"></a> |
119 <h4>UMLClassDiagramBuilder.__addExternalClass</h4> |
150 <h4>UMLClassDiagramBuilder.__addExternalClass</h4> |
120 <b>__addExternalClass</b>(<i>_class, x, y</i>) |
151 <b>__addExternalClass</b>(<i>_class, x, y</i>) |
|
152 |
121 <p> |
153 <p> |
122 Private method to add a class defined outside the module. |
154 Private method to add a class defined outside the module. |
123 </p><p> |
155 </p> |
|
156 <p> |
124 If the canvas is too small to take the shape, it |
157 If the canvas is too small to take the shape, it |
125 is enlarged. |
158 is enlarged. |
126 </p><dl> |
159 </p> |
|
160 <dl> |
|
161 |
127 <dt><i>_class</i></dt> |
162 <dt><i>_class</i></dt> |
128 <dd> |
163 <dd> |
129 class to be shown (string) |
164 class to be shown (string) |
130 </dd><dt><i>x</i></dt> |
165 </dd> |
|
166 <dt><i>x</i></dt> |
131 <dd> |
167 <dd> |
132 x-coordinate (float) |
168 x-coordinate (float) |
133 </dd><dt><i>y</i></dt> |
169 </dd> |
|
170 <dt><i>y</i></dt> |
134 <dd> |
171 <dd> |
135 y-coordinate (float) |
172 y-coordinate (float) |
136 </dd> |
173 </dd> |
137 </dl><a NAME="UMLClassDiagramBuilder.__addLocalClass" ID="UMLClassDiagramBuilder.__addLocalClass"></a> |
174 </dl> |
|
175 <a NAME="UMLClassDiagramBuilder.__addLocalClass" ID="UMLClassDiagramBuilder.__addLocalClass"></a> |
138 <h4>UMLClassDiagramBuilder.__addLocalClass</h4> |
176 <h4>UMLClassDiagramBuilder.__addLocalClass</h4> |
139 <b>__addLocalClass</b>(<i>className, _class, x, y, isRbModule=False</i>) |
177 <b>__addLocalClass</b>(<i>className, _class, x, y, isRbModule=False</i>) |
|
178 |
140 <p> |
179 <p> |
141 Private method to add a class defined in the module. |
180 Private method to add a class defined in the module. |
142 </p><dl> |
181 </p> |
|
182 <dl> |
|
183 |
143 <dt><i>className</i></dt> |
184 <dt><i>className</i></dt> |
144 <dd> |
185 <dd> |
145 name of the class to be as a dictionary key (string) |
186 name of the class to be as a dictionary key (string) |
146 </dd><dt><i>_class</i></dt> |
187 </dd> |
|
188 <dt><i>_class</i></dt> |
147 <dd> |
189 <dd> |
148 class to be shown (ModuleParser.Class) |
190 class to be shown (ModuleParser.Class) |
149 </dd><dt><i>x</i></dt> |
191 </dd> |
|
192 <dt><i>x</i></dt> |
150 <dd> |
193 <dd> |
151 x-coordinate (float) |
194 x-coordinate (float) |
152 </dd><dt><i>y</i></dt> |
195 </dd> |
|
196 <dt><i>y</i></dt> |
153 <dd> |
197 <dd> |
154 y-coordinate (float) |
198 y-coordinate (float) |
155 </dd><dt><i>isRbModule</i></dt> |
199 </dd> |
|
200 <dt><i>isRbModule</i></dt> |
156 <dd> |
201 <dd> |
157 flag indicating a Ruby module (boolean) |
202 flag indicating a Ruby module (boolean) |
158 </dd> |
203 </dd> |
159 </dl><a NAME="UMLClassDiagramBuilder.__arrangeClasses" ID="UMLClassDiagramBuilder.__arrangeClasses"></a> |
204 </dl> |
|
205 <a NAME="UMLClassDiagramBuilder.__arrangeClasses" ID="UMLClassDiagramBuilder.__arrangeClasses"></a> |
160 <h4>UMLClassDiagramBuilder.__arrangeClasses</h4> |
206 <h4>UMLClassDiagramBuilder.__arrangeClasses</h4> |
161 <b>__arrangeClasses</b>(<i>nodes, routes, whiteSpaceFactor=1.2</i>) |
207 <b>__arrangeClasses</b>(<i>nodes, routes, whiteSpaceFactor=1.2</i>) |
|
208 |
162 <p> |
209 <p> |
163 Private method to arrange the shapes on the canvas. |
210 Private method to arrange the shapes on the canvas. |
164 </p><p> |
211 </p> |
|
212 <p> |
165 The algorithm is borrowed from Boa Constructor. |
213 The algorithm is borrowed from Boa Constructor. |
166 </p><dl> |
214 </p> |
|
215 <dl> |
|
216 |
167 <dt><i>nodes</i></dt> |
217 <dt><i>nodes</i></dt> |
168 <dd> |
218 <dd> |
169 list of nodes to arrange |
219 list of nodes to arrange |
170 </dd><dt><i>routes</i></dt> |
220 </dd> |
|
221 <dt><i>routes</i></dt> |
171 <dd> |
222 <dd> |
172 list of routes |
223 list of routes |
173 </dd><dt><i>whiteSpaceFactor</i></dt> |
224 </dd> |
|
225 <dt><i>whiteSpaceFactor</i></dt> |
174 <dd> |
226 <dd> |
175 factor to increase whitespace between |
227 factor to increase whitespace between |
176 items (float) |
228 items (float) |
177 </dd> |
229 </dd> |
178 </dl><a NAME="UMLClassDiagramBuilder.__createAssociations" ID="UMLClassDiagramBuilder.__createAssociations"></a> |
230 </dl> |
|
231 <a NAME="UMLClassDiagramBuilder.__createAssociations" ID="UMLClassDiagramBuilder.__createAssociations"></a> |
179 <h4>UMLClassDiagramBuilder.__createAssociations</h4> |
232 <h4>UMLClassDiagramBuilder.__createAssociations</h4> |
180 <b>__createAssociations</b>(<i>routes</i>) |
233 <b>__createAssociations</b>(<i>routes</i>) |
|
234 |
181 <p> |
235 <p> |
182 Private method to generate the associations between the class shapes. |
236 Private method to generate the associations between the class shapes. |
183 </p><dl> |
237 </p> |
|
238 <dl> |
|
239 |
184 <dt><i>routes</i></dt> |
240 <dt><i>routes</i></dt> |
185 <dd> |
241 <dd> |
186 list of relationsships |
242 list of relationsships |
187 </dd> |
243 </dd> |
188 </dl><a NAME="UMLClassDiagramBuilder.__getCurrentShape" ID="UMLClassDiagramBuilder.__getCurrentShape"></a> |
244 </dl> |
|
245 <a NAME="UMLClassDiagramBuilder.__getCurrentShape" ID="UMLClassDiagramBuilder.__getCurrentShape"></a> |
189 <h4>UMLClassDiagramBuilder.__getCurrentShape</h4> |
246 <h4>UMLClassDiagramBuilder.__getCurrentShape</h4> |
190 <b>__getCurrentShape</b>(<i>name</i>) |
247 <b>__getCurrentShape</b>(<i>name</i>) |
|
248 |
191 <p> |
249 <p> |
192 Private method to get the named shape. |
250 Private method to get the named shape. |
193 </p><dl> |
251 </p> |
|
252 <dl> |
|
253 |
194 <dt><i>name</i></dt> |
254 <dt><i>name</i></dt> |
195 <dd> |
255 <dd> |
196 name of the shape (string) |
256 name of the shape (string) |
197 </dd> |
257 </dd> |
198 </dl><dl> |
258 </dl> |
|
259 <dl> |
199 <dt>Returns:</dt> |
260 <dt>Returns:</dt> |
200 <dd> |
261 <dd> |
201 shape (QGraphicsItem) |
262 shape (QGraphicsItem) |
202 </dd> |
263 </dd> |
203 </dl><a NAME="UMLClassDiagramBuilder.buildDiagram" ID="UMLClassDiagramBuilder.buildDiagram"></a> |
264 </dl> |
|
265 <a NAME="UMLClassDiagramBuilder.buildDiagram" ID="UMLClassDiagramBuilder.buildDiagram"></a> |
204 <h4>UMLClassDiagramBuilder.buildDiagram</h4> |
266 <h4>UMLClassDiagramBuilder.buildDiagram</h4> |
205 <b>buildDiagram</b>(<i></i>) |
267 <b>buildDiagram</b>(<i></i>) |
|
268 |
206 <p> |
269 <p> |
207 Public method to build the class shapes of the class diagram. |
270 Public method to build the class shapes of the class diagram. |
208 </p><p> |
271 </p> |
|
272 <p> |
209 The algorithm is borrowed from Boa Constructor. |
273 The algorithm is borrowed from Boa Constructor. |
210 </p><a NAME="UMLClassDiagramBuilder.getPersistenceData" ID="UMLClassDiagramBuilder.getPersistenceData"></a> |
274 </p> |
|
275 <a NAME="UMLClassDiagramBuilder.getPersistenceData" ID="UMLClassDiagramBuilder.getPersistenceData"></a> |
211 <h4>UMLClassDiagramBuilder.getPersistenceData</h4> |
276 <h4>UMLClassDiagramBuilder.getPersistenceData</h4> |
212 <b>getPersistenceData</b>(<i></i>) |
277 <b>getPersistenceData</b>(<i></i>) |
|
278 |
213 <p> |
279 <p> |
214 Public method to get a string for data to be persisted. |
280 Public method to get a string for data to be persisted. |
215 </p><dl> |
281 </p> |
|
282 <dl> |
216 <dt>Returns:</dt> |
283 <dt>Returns:</dt> |
217 <dd> |
284 <dd> |
218 persisted data string (string) |
285 persisted data string (string) |
219 </dd> |
286 </dd> |
220 </dl><a NAME="UMLClassDiagramBuilder.initialize" ID="UMLClassDiagramBuilder.initialize"></a> |
287 </dl> |
|
288 <a NAME="UMLClassDiagramBuilder.initialize" ID="UMLClassDiagramBuilder.initialize"></a> |
221 <h4>UMLClassDiagramBuilder.initialize</h4> |
289 <h4>UMLClassDiagramBuilder.initialize</h4> |
222 <b>initialize</b>(<i></i>) |
290 <b>initialize</b>(<i></i>) |
|
291 |
223 <p> |
292 <p> |
224 Public method to initialize the object. |
293 Public method to initialize the object. |
225 </p><a NAME="UMLClassDiagramBuilder.parsePersistenceData" ID="UMLClassDiagramBuilder.parsePersistenceData"></a> |
294 </p> |
|
295 <a NAME="UMLClassDiagramBuilder.parsePersistenceData" ID="UMLClassDiagramBuilder.parsePersistenceData"></a> |
226 <h4>UMLClassDiagramBuilder.parsePersistenceData</h4> |
296 <h4>UMLClassDiagramBuilder.parsePersistenceData</h4> |
227 <b>parsePersistenceData</b>(<i>version, data</i>) |
297 <b>parsePersistenceData</b>(<i>version, data</i>) |
|
298 |
228 <p> |
299 <p> |
229 Public method to parse persisted data. |
300 Public method to parse persisted data. |
230 </p><dl> |
301 </p> |
|
302 <dl> |
|
303 |
231 <dt><i>version</i></dt> |
304 <dt><i>version</i></dt> |
232 <dd> |
305 <dd> |
233 version of the data (string) |
306 version of the data (string) |
234 </dd><dt><i>data</i></dt> |
307 </dd> |
|
308 <dt><i>data</i></dt> |
235 <dd> |
309 <dd> |
236 persisted data to be parsed (string) |
310 persisted data to be parsed (string) |
237 </dd> |
311 </dd> |
238 </dl><dl> |
312 </dl> |
|
313 <dl> |
239 <dt>Returns:</dt> |
314 <dt>Returns:</dt> |
240 <dd> |
315 <dd> |
241 flag indicating success (boolean) |
316 flag indicating success (boolean) |
242 </dd> |
317 </dd> |
243 </dl> |
318 </dl> |