Mon, 03 May 2021 19:58:28 +0200
Changed some source docu string to the new style.
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
7923
91e843545d9a
Updated copyright for 2021.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7900
diff
changeset
|
3 | # Copyright (c) 2007 - 2021 Detlev Offenbach <detlev@die-offenbachs.de> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a dialog showing an imports diagram of a package. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | import glob |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | import os |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | |
3656
441956d8fce5
Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3621
diff
changeset
|
13 | from PyQt5.QtWidgets import QApplication, QGraphicsTextItem |
3071
83d066710d60
Added an extended progress dialog to make the progress bar label more descriptive.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3035
diff
changeset
|
14 | |
83d066710d60
Added an extended progress dialog to make the progress bar label more descriptive.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3035
diff
changeset
|
15 | from E5Gui.E5ProgressDialog import E5ProgressDialog |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | |
2031
c36c2eb62a75
Refactored the UML graphics code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2030
diff
changeset
|
17 | from .UMLDiagramBuilder import UMLDiagramBuilder |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | import Utilities |
40
c2e5472b112c
Changed some code to adjust eric5 to Python3.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
28
diff
changeset
|
20 | import Preferences |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
22 | |
2031
c36c2eb62a75
Refactored the UML graphics code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2030
diff
changeset
|
23 | class ImportsDiagramBuilder(UMLDiagramBuilder): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | """ |
2031
c36c2eb62a75
Refactored the UML graphics code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2030
diff
changeset
|
25 | Class implementing a builder for imports diagrams of a package. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | |
2031
c36c2eb62a75
Refactored the UML graphics code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2030
diff
changeset
|
27 | Note: Only package internal imports are shown in order to maintain |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | some readability. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | """ |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
30 | def __init__(self, dialog, view, project, package, |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
31 | showExternalImports=False): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | Constructor |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | |
8287
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
35 | @param dialog reference to the UML dialog |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
36 | @type UMLDialog |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
37 | @param view reference to the view object |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
38 | @type UMLGraphicsView |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
39 | @param project reference to the project object |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
40 | @type Project |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
41 | @param package name of a python package to show the import |
8287
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
42 | relationships |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
43 | @type str |
7900
72b88fb20261
Corrected the use of '@keyparam' in the source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7849
diff
changeset
|
44 | @param showExternalImports flag indicating to show exports from |
8287
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
45 | outside the package |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
46 | @type bool |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | """ |
8218
7c09585bd960
Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8217
diff
changeset
|
48 | super().__init__(dialog, view, project) |
2031
c36c2eb62a75
Refactored the UML graphics code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2030
diff
changeset
|
49 | self.setObjectName("ImportsDiagram") |
2026
18f2b30ed046
Changed the diagrams to show a better diagram title when printed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2025
diff
changeset
|
50 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | self.showExternalImports = showExternalImports |
7849
70e464748aaa
Utilities: removed some obsolete functions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7780
diff
changeset
|
52 | self.packagePath = os.path.abspath(package) |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
53 | |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
54 | def initialize(self): |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
55 | """ |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
56 | Public method to initialize the object. |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
57 | """ |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
58 | self.package = os.path.splitdrive(self.packagePath)[1].replace( |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
59 | os.sep, '.')[1:] |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60 | hasInit = True |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | ppath = self.packagePath |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | while hasInit: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | ppath = os.path.dirname(ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64 | hasInit = len(glob.glob(os.path.join(ppath, '__init__.*'))) > 0 |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
65 | self.shortPackage = self.packagePath.replace(ppath, '').replace( |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
66 | os.sep, '.')[1:] |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
68 | pname = self.project.getProjectName() |
8257
28146736bbfc
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
69 | name = ( |
28146736bbfc
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
70 | self.tr("Imports Diagramm {0}: {1}").format( |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
71 | pname, self.project.getRelativePath(self.packagePath)) |
8257
28146736bbfc
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
72 | if pname else |
28146736bbfc
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
73 | self.tr("Imports Diagramm: {0}").format(self.packagePath) |
28146736bbfc
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
74 | ) |
2031
c36c2eb62a75
Refactored the UML graphics code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2030
diff
changeset
|
75 | self.umlView.setDiagramName(name) |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
76 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77 | def __buildModulesDict(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | """ |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
79 | Private method to build a dictionary of modules contained in the |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
80 | package. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | |
8287
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
82 | @return dictionary of modules contained in the package |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
83 | @rtype dict |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | """ |
2402
304fcefd3b04
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2401
diff
changeset
|
85 | import Utilities.ModuleParser |
7254
f00d825fbdb3
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
86 | extensions = ( |
3035
36e9f388958b
Fixed a bunch of indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3022
diff
changeset
|
87 | Preferences.getPython("Python3Extensions") |
7254
f00d825fbdb3
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
88 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | moduleDict = {} |
40
c2e5472b112c
Changed some code to adjust eric5 to Python3.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
28
diff
changeset
|
90 | modules = [] |
7254
f00d825fbdb3
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
91 | for ext in ( |
f00d825fbdb3
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
92 | Preferences.getPython("Python3Extensions") |
f00d825fbdb3
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
93 | ): |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
94 | modules.extend(glob.glob(Utilities.normjoinpath( |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
95 | self.packagePath, '*{0}'.format(ext)))) |
40
c2e5472b112c
Changed some code to adjust eric5 to Python3.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
28
diff
changeset
|
96 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
97 | tot = len(modules) |
3071
83d066710d60
Added an extended progress dialog to make the progress bar label more descriptive.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3035
diff
changeset
|
98 | progress = E5ProgressDialog( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
99 | self.tr("Parsing modules..."), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
100 | None, 0, tot, self.tr("%v/%m Modules"), self.parent()) |
3478
beec1d9c1851
Correct window titles of progress dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
101 | progress.setWindowTitle(self.tr("Imports Diagramm")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
102 | try: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | progress.show() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | QApplication.processEvents() |
8217
385f60c94548
Applied some more code simplifications suggested by the new Simplify checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
105 | for prog, module in enumerate(modules): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | progress.setValue(prog) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
107 | QApplication.processEvents() |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
108 | try: |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
109 | mod = Utilities.ModuleParser.readModule( |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
110 | module, extensions=extensions, caching=False) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | except ImportError: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | continue |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
113 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | name = mod.name |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
115 | if name.startswith(self.package): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
116 | name = name[len(self.package) + 1:] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
117 | moduleDict[name] = mod |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | finally: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
119 | progress.setValue(tot) |
2334
fc69ad77e18a
Introduced a zoom widget in the status bar of several windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
120 | progress.deleteLater() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | return moduleDict |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
122 | |
2031
c36c2eb62a75
Refactored the UML graphics code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2030
diff
changeset
|
123 | def buildDiagram(self): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
124 | """ |
2031
c36c2eb62a75
Refactored the UML graphics code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2030
diff
changeset
|
125 | Public method to build the modules shapes of the diagram. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
127 | initlist = glob.glob(os.path.join(self.packagePath, '__init__.*')) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
128 | if len(initlist) == 0: |
2094
88620e11c67c
Made the seventh set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2034
diff
changeset
|
129 | ct = QGraphicsTextItem(None) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
483
diff
changeset
|
130 | ct.setHtml( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
131 | self.tr( |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
132 | "The directory <b>'{0}'</b> is not a Python package.") |
3035
36e9f388958b
Fixed a bunch of indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3022
diff
changeset
|
133 | .format(self.package)) |
2094
88620e11c67c
Made the seventh set of Qt5 compatibility changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2034
diff
changeset
|
134 | self.scene.addItem(ct) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
135 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | |
8286 | 137 | self.__shapes = {} |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
138 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
139 | modules = self.__buildModulesDict() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
140 | externalMods = [] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | packageList = self.shortPackage.split('.') |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
142 | packageListLen = len(packageList) |
8277 | 143 | for module in sorted(modules.keys()): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
144 | impLst = [] |
8277 | 145 | for importName in modules[module].imports: |
146 | n = ( | |
147 | importName[len(self.package) + 1:] | |
148 | if importName.startswith(self.package) else | |
149 | importName | |
150 | ) | |
151 | if importName in modules: | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
152 | impLst.append(n) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
153 | elif self.showExternalImports: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
154 | impLst.append(n) |
3621
15f23ed3f216
Fixed a few source code style issues found by the updated pe8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3515
diff
changeset
|
155 | if n not in externalMods: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | externalMods.append(n) |
8277 | 157 | for importName in list(modules[module].from_imports.keys()): |
158 | if importName.startswith('.'): | |
159 | dots = len(importName) - len(importName.lstrip('.')) | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
160 | if dots == 1: |
8277 | 161 | n = importName[1:] |
162 | importName = n | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
163 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
164 | if self.showExternalImports: |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
483
diff
changeset
|
165 | n = '.'.join( |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
166 | packageList[:packageListLen - dots + 1] + |
8277 | 167 | [importName[dots:]]) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
168 | else: |
8277 | 169 | n = importName |
170 | elif importName.startswith(self.package): | |
171 | n = importName[len(self.package) + 1:] | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
172 | else: |
8277 | 173 | n = importName |
174 | if importName in modules: | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
175 | impLst.append(n) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
176 | elif self.showExternalImports: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
177 | impLst.append(n) |
3621
15f23ed3f216
Fixed a few source code style issues found by the updated pe8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3515
diff
changeset
|
178 | if n not in externalMods: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
179 | externalMods.append(n) |
8286 | 180 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
181 | classNames = [] |
8286 | 182 | for class_ in list(modules[module].classes.keys()): |
183 | className = modules[module].classes[class_].name | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
184 | if className not in classNames: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
185 | classNames.append(className) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
186 | shape = self.__addModule(module, classNames, 0.0, 0.0) |
8286 | 187 | self.__shapes[module] = (shape, impLst) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
188 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
189 | for module in externalMods: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
190 | shape = self.__addModule(module, [], 0.0, 0.0) |
8286 | 191 | self.__shapes[module] = (shape, []) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
192 | |
8286 | 193 | # build a list of routes |
194 | nodes = [] | |
195 | routes = [] | |
196 | for module in self.__shapes: | |
197 | nodes.append(module) | |
198 | for rel in self.__shapes[module][1]: | |
199 | route = (module, rel) | |
200 | if route not in routes: | |
201 | routes.append(route) | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
202 | |
8286 | 203 | self.__arrangeNodes(nodes, routes[:]) |
204 | self.__createAssociations(routes) | |
2027
144463496a54
A few fixes for issues with the graphics dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2026
diff
changeset
|
205 | self.umlView.autoAdjustSceneSize(limit=True) |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
206 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
207 | def __addModule(self, name, classes, x, y): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
208 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
209 | Private method to add a module to the diagram. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
210 | |
8287
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
211 | @param name module name to be shown |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
212 | @type str |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
213 | @param classes list of class names contained in the module |
8287
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
214 | @type list of str |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
215 | @param x x-coordinate |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
216 | @type float |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
217 | @param y y-coordinate |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
218 | @type float |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
219 | @return reference to the imports item |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
220 | @rtype ModuleItem |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
221 | """ |
2401
4f428de32b69
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2334
diff
changeset
|
222 | from .ModuleItem import ModuleItem, ModuleModel |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
223 | classes.sort() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
224 | impM = ModuleModel(name, classes) |
7529
2b8a0d8ba12a
UML Diagrams: added support for dark color scheme.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
225 | impW = ModuleItem(impM, x, y, scene=self.scene, |
2b8a0d8ba12a
UML Diagrams: added support for dark color scheme.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
226 | colors=self.umlView.getDrawingColors()) |
2030
db11a2fe9bbc
Implemented functions to save the UML graphics to disc.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2027
diff
changeset
|
227 | impW.setId(self.umlView.getItemId()) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
228 | return impW |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
229 | |
8286 | 230 | def __arrangeNodes(self, nodes, routes, whiteSpaceFactor=1.2): |
231 | """ | |
232 | Private method to arrange the shapes on the canvas. | |
233 | ||
234 | The algorithm is borrowed from Boa Constructor. | |
235 | ||
236 | @param nodes list of nodes to arrange | |
237 | @type list of str | |
238 | @param routes list of routes | |
239 | @type list of tuple of (str, str) | |
240 | @param whiteSpaceFactor factor to increase whitespace between | |
241 | items | |
242 | @type float | |
243 | """ | |
244 | from . import GraphicsUtilities | |
245 | generations = GraphicsUtilities.sort(nodes, routes) | |
246 | ||
247 | # calculate width and height of all elements | |
248 | sizes = [] | |
249 | for generation in generations: | |
250 | sizes.append([]) | |
251 | for child in generation: | |
252 | sizes[-1].append( | |
253 | self.__shapes[child][0].sceneBoundingRect()) | |
254 | ||
255 | # calculate total width and total height | |
256 | width = 0 | |
257 | height = 0 | |
258 | widths = [] | |
259 | heights = [] | |
260 | for generation in sizes: | |
261 | currentWidth = 0 | |
262 | currentHeight = 0 | |
263 | ||
264 | for rect in generation: | |
265 | if rect.height() > currentHeight: | |
266 | currentHeight = rect.height() | |
267 | currentWidth += rect.width() | |
268 | ||
269 | # update totals | |
270 | if currentWidth > width: | |
271 | width = currentWidth | |
272 | height += currentHeight | |
273 | ||
274 | # store generation info | |
275 | widths.append(currentWidth) | |
276 | heights.append(currentHeight) | |
277 | ||
278 | # add in some whitespace | |
279 | width *= whiteSpaceFactor | |
280 | height = height * whiteSpaceFactor - 20 | |
281 | verticalWhiteSpace = 40.0 | |
282 | ||
283 | sceneRect = self.umlView.sceneRect() | |
284 | width += 50.0 | |
285 | height += 50.0 | |
286 | swidth = sceneRect.width() if width < sceneRect.width() else width | |
287 | sheight = sceneRect.height() if height < sceneRect.height() else height | |
288 | self.umlView.setSceneSize(swidth, sheight) | |
289 | ||
290 | # distribute each generation across the width and the | |
291 | # generations across height | |
292 | y = 10.0 | |
293 | for currentWidth, currentHeight, generation in ( | |
294 | zip(reversed(widths), reversed(heights), reversed(generations)) | |
295 | ): | |
296 | x = 10.0 | |
297 | # whiteSpace is the space between any two elements | |
298 | whiteSpace = ( | |
299 | (width - currentWidth - 20) / | |
300 | (len(generation) - 1.0 or 2.0) | |
301 | ) | |
302 | for name in generation: | |
303 | shape = self.__shapes[name][0] | |
304 | shape.setPos(x, y) | |
305 | rect = shape.sceneBoundingRect() | |
306 | x = x + rect.width() + whiteSpace | |
307 | y = y + currentHeight + verticalWhiteSpace | |
308 | ||
309 | def __createAssociations(self, routes): | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
310 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
311 | Private method to generate the associations between the module shapes. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
312 | |
8286 | 313 | @param routes list of associations |
314 | @type list of tuple of (str, str) | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
315 | """ |
8270
6ba3564b7161
Modernized some more code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8257
diff
changeset
|
316 | from .AssociationItem import AssociationItem, AssociationType |
8286 | 317 | for route in routes: |
318 | assoc = AssociationItem( | |
319 | self.__shapes[route[0]][0], | |
320 | self.__shapes[route[1]][0], | |
321 | AssociationType.IMPORTS, | |
322 | colors=self.umlView.getDrawingColors()) | |
323 | self.scene.addItem(assoc) | |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
324 | |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
325 | def getPersistenceData(self): |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
326 | """ |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
327 | Public method to get a string for data to be persisted. |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
328 | |
8287
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
329 | @return persisted data string |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
330 | @rtype str |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
331 | """ |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
332 | return "package={0}, show_external={1}".format( |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
333 | self.packagePath, self.showExternalImports) |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
334 | |
2034
8de0fc1f7fef
Implemented functions to load UML graphics from disc.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2033
diff
changeset
|
335 | def parsePersistenceData(self, version, data): |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
336 | """ |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
337 | Public method to parse persisted data. |
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
338 | |
8287
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
339 | @param version version of the data |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
340 | @type str |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
341 | @param data persisted data to be parsed |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
342 | @type str |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
343 | @return flag indicating success |
30eb7bc13d63
Changed some source docu string to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8286
diff
changeset
|
344 | @rtype bool |
2033
4b99609f6a87
Some more refactorings to prepare loading graphics diagrams from file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2031
diff
changeset
|
345 | """ |
2034
8de0fc1f7fef
Implemented functions to load UML graphics from disc.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2033
diff
changeset
|
346 | parts = data.split(", ") |
7254
f00d825fbdb3
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
347 | if ( |
f00d825fbdb3
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
348 | len(parts) != 2 or |
f00d825fbdb3
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
349 | not parts[0].startswith("package=") or |
f00d825fbdb3
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
350 | not parts[1].startswith("show_external=") |
f00d825fbdb3
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
351 | ): |
2034
8de0fc1f7fef
Implemented functions to load UML graphics from disc.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2033
diff
changeset
|
352 | return False |
8de0fc1f7fef
Implemented functions to load UML graphics from disc.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2033
diff
changeset
|
353 | |
8de0fc1f7fef
Implemented functions to load UML graphics from disc.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2033
diff
changeset
|
354 | self.packagePath = parts[0].split("=", 1)[1].strip() |
2992
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
355 | self.showExternalImports = Utilities.toBool( |
dbdf27746da5
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
356 | parts[1].split("=", 1)[1].strip()) |
2034
8de0fc1f7fef
Implemented functions to load UML graphics from disc.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2033
diff
changeset
|
357 | |
8de0fc1f7fef
Implemented functions to load UML graphics from disc.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2033
diff
changeset
|
358 | self.initialize() |
8de0fc1f7fef
Implemented functions to load UML graphics from disc.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2033
diff
changeset
|
359 | |
8de0fc1f7fef
Implemented functions to load UML graphics from disc.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2033
diff
changeset
|
360 | return True |