9 |
9 |
10 import os |
10 import os |
11 import glob |
11 import glob |
12 |
12 |
13 from PyQt4.QtGui import QApplication, QProgressDialog |
13 from PyQt4.QtGui import QApplication, QProgressDialog |
|
14 |
|
15 from E5Gui import E5MessageBox |
14 |
16 |
15 from .UMLDiagramBuilder import UMLDiagramBuilder |
17 from .UMLDiagramBuilder import UMLDiagramBuilder |
16 from .PackageItem import PackageItem, PackageModel |
18 from .PackageItem import PackageItem, PackageModel |
17 from .AssociationItem import AssociationItem, Imports |
19 from .AssociationItem import AssociationItem, Imports |
18 |
20 |
245 @return persisted data string (string) |
247 @return persisted data string (string) |
246 """ |
248 """ |
247 return "project={0}, no_modules={1}".format( |
249 return "project={0}, no_modules={1}".format( |
248 self.project.getProjectFile(), self.noModules) |
250 self.project.getProjectFile(), self.noModules) |
249 |
251 |
250 def parsePersistenceData(self, data): |
252 def parsePersistenceData(self, version, data): |
251 """ |
253 """ |
252 Public method to parse persisted data. |
254 Public method to parse persisted data. |
253 |
255 |
254 @param dat persisted data to be parsed (string) |
256 @param version version of the data (string) |
255 """ |
257 @param data persisted data to be parsed (string) |
256 # TODO: implement this |
258 @return flag indicating success (boolean) |
257 return |
259 """ |
|
260 parts = data.split(", ") |
|
261 if len(parts) != 2 or \ |
|
262 not parts[0].startswith("project=") or \ |
|
263 not parts[1].startswith("no_modules="): |
|
264 return False |
|
265 |
|
266 projectFile = parts[0].split("=", 1)[1].strip() |
|
267 if projectFile != self.project.getProjectFile(): |
|
268 res = E5MessageBox.yesNo(None, |
|
269 self.trUtf8("Load Diagram"), |
|
270 self.trUtf8("""<p>The diagram belongs to the project <b>{0}</b>.""" |
|
271 """ Shall this project be opened?</p>""").format( |
|
272 projectFile)) |
|
273 if res: |
|
274 self.project.openProject(projectFile) |
|
275 |
|
276 self.noModules = Utilities.toBool(parts[1].split("=", 1)[1].strip()) |
|
277 |
|
278 self.initialize() |
|
279 |
|
280 return True |