[pitivi: 44/94] Added 'No Presets' feature



commit 472eee48a3c6334544e09f4dab4e15985bfb2b37
Author: Feroze Naina <ferozenaina gmail com>
Date:   Sun Jul 24 23:01:51 2011 +0530

    Added 'No Presets' feature

 pitivi/ui/encodingdialog.py |   17 +++++++++++++++++
 pitivi/ui/preset.py         |   12 ++++++++++--
 2 files changed, 27 insertions(+), 2 deletions(-)
---
diff --git a/pitivi/ui/encodingdialog.py b/pitivi/ui/encodingdialog.py
index c280653..14118f8 100644
--- a/pitivi/ui/encodingdialog.py
+++ b/pitivi/ui/encodingdialog.py
@@ -187,6 +187,23 @@ class EncodingDialog(Renderer, Loggable):
         self.bindHeight(self.render_presets)
         self.bindWidth(self.render_presets)
 
+        self.createNoPreset(self.render_presets)
+
+    def createNoPreset(self, mgr):
+        mgr.prependPreset("No Preset", {
+            "depth": int(get_combo_value(self.sample_depth_combo)),
+            "channels": int(get_combo_value(self.channels_combo)),
+            "sample-rate": int(get_combo_value(self.sample_rate_combo)),
+            "acodec": get_combo_value(self.audio_encoder_combo).get_name(),
+            "vcodec": get_combo_value(self.video_encoder_combo).get_name(),
+            "container": get_combo_value(self.muxercombobox).get_name(),
+            "frame-rate": gst.Fraction(int(get_combo_value(self.frame_rate_combo).num),
+                                        int(get_combo_value(self.frame_rate_combo).denom)),
+            "height": self.getDimension("height"),
+            "width": self.getDimension("width")
+        })
+
+
     def bindCombo(self, mgr, name, widget):
         if name == "container":
             mgr.bindWidget(name,
diff --git a/pitivi/ui/preset.py b/pitivi/ui/preset.py
index be4729f..eaef2a9 100644
--- a/pitivi/ui/preset.py
+++ b/pitivi/ui/preset.py
@@ -333,8 +333,10 @@ class RenderPresetManager(PresetManager):
             except:
                 filename = name + ".json"
                 filepath = os.path.join(self.path, filename)
-            fout = open(filepath, "w")
-            self.saveSection(fout, name)
+            
+            if not name == "No Preset":
+                fout = open(filepath, "w")
+                self.saveSection(fout, name)
 
     def saveSection(self, fout, section):
         values = self.presets[section]
@@ -362,3 +364,9 @@ class RenderPresetManager(PresetManager):
                 break
         if self.cur_preset == name:
             self.cur_preset = None
+
+    def prependPreset(self, name, values):
+        self.presets[name] = values
+        # Note: This generates a "row-inserted" signal in the model.
+        self.ordered.prepend((name, values))
+



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