E5XML/SessionWriter.py

changeset 3600
7d17c492ab95
parent 3178
f25fc1364c88
child 3670
f0cb7579c0b4
--- a/E5XML/SessionWriter.py	Wed May 21 18:47:56 2014 +0200
+++ b/E5XML/SessionWriter.py	Wed May 21 19:45:39 2014 +0200
@@ -35,6 +35,7 @@
         
         self.name = projectName
         self.project = e5App().getObject("Project")
+        self.projectBrowser = e5App().getObject("ProjectBrowser")
         self.multiProject = e5App().getObject("MultiProject")
         self.vm = e5App().getObject("ViewManager")
         self.dbg = e5App().getObject("DebugUI")
@@ -224,6 +225,20 @@
                     self.writeEndElement()
         self.writeEndElement()
         
+        # step 5: save state of the various project browsers
+        if not isGlobal:
+            self.writeStartElement("ProjectBrowserStates")
+            for browserName in self.projectBrowser.getProjectBrowserNames():
+                self.writeStartElement("ProjectBrowserState")
+                self.writeAttribute("name", browserName)
+                # get the names of expanded files and directories
+                names = self.projectBrowser\
+                    .getProjectBrowser(browserName).getExpandedItemNames()
+                for name in names:
+                    self.writeTextElement("ExpandedItemName", name)
+                self.writeEndElement()
+            self.writeEndElement()
+        
         # add the main end tag
         self.writeEndElement()
         self.writeEndDocument()

eric ide

mercurial