[pitivi] UI: Save last folder used for exports. Fixes #579638



commit 9a4ce182301efbe5aaee25360d2ca9649d1b86e7
Author: Edward Hervey <bilboed bilboed com>
Date:   Thu May 14 11:17:04 2009 +0200

    UI: Save last folder used for exports. Fixes #579638
---
 pitivi/ui/encodingdialog.py |    7 ++++++-
 pitivi/ui/mainwindow.py     |    8 +++++++-
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/pitivi/ui/encodingdialog.py b/pitivi/ui/encodingdialog.py
index 65e3cfd..cdf59b7 100644
--- a/pitivi/ui/encodingdialog.py
+++ b/pitivi/ui/encodingdialog.py
@@ -44,10 +44,12 @@ class EncodingDialog(GladeWindow, Loggable):
     """ Encoding dialog box """
     glade_file = "encodingdialog.glade"
 
-    def __init__(self, project, pipeline=None):
+    def __init__(self, app, project, pipeline=None):
         GladeWindow.__init__(self)
         Loggable.__init__(self)
 
+        self.app = app
+
         # UI widgets
         self.progressbar = self.widgets["progressbar"]
         self.filebutton = self.widgets["filebutton"]
@@ -96,6 +98,8 @@ class EncodingDialog(GladeWindow, Loggable):
         if self.outfile:
             dialog.set_uri(self.outfile)
             dialog.set_current_name(os.path.basename(self.outfile))
+        else:
+            dialog.set_current_folder(self.app.settings.lastExportFolder)
 
         res = dialog.run()
         dialog.hide()
@@ -104,6 +108,7 @@ class EncodingDialog(GladeWindow, Loggable):
             button.set_label(os.path.basename(self.outfile))
             self.recordbutton.set_sensitive(True)
             self.progressbar.set_text("")
+            self.app.settings.lastExportFolder = dialog.get_current_folder()
         dialog.destroy()
 
     def _positionCb(self, unused_pipeline, position):
diff --git a/pitivi/ui/mainwindow.py b/pitivi/ui/mainwindow.py
index baa7216..de8ef50 100644
--- a/pitivi/ui/mainwindow.py
+++ b/pitivi/ui/mainwindow.py
@@ -97,6 +97,12 @@ GlobalSettings.addConfigOption('mainWindowShowTimelineToolbar',
     section="main-window",
     key="show-timeline-toolbar",
     default=True)
+GlobalSettings.addConfigSection('export')
+GlobalSettings.addConfigOption('lastExportFolder',
+                                section='export',
+                                key="last-export-folder",
+                                environment="PITIVI_EXPORT_FOLDER",
+                                default=os.path.expanduser("~"))
 
 def supported(info):
     return formatter.can_handle_location(info[1])
@@ -179,7 +185,7 @@ class PitiviMainWindow(gtk.Window, Loggable):
 
         if pause:
             project.pipeline.pause()
-        win = EncodingDialog(project)
+        win = EncodingDialog(self, project)
         win.window.connect("destroy", self._encodingDialogDestroyCb)
         self.set_sensitive(False)
         win.show()



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]