Author: Carlos Lopez <[email protected]>
Date:   Thu Feb  9 21:46:14 2012 +0100

Add a new page at Setup dialog "Render" and add a new preference value: Image 
Sequence Separator String

---

 synfig-studio/src/gui/app.cpp                  |   13 ++++++++++++-
 synfig-studio/src/gui/app.h                    |    1 +
 synfig-studio/src/gui/dialogs/dialog_setup.cpp |   14 ++++++++++++++
 synfig-studio/src/gui/dialogs/dialog_setup.h   |    2 ++
 4 files changed, 29 insertions(+), 1 deletions(-)

diff --git a/synfig-studio/src/gui/app.cpp b/synfig-studio/src/gui/app.cpp
index 71598e6..d50a208 100644
--- a/synfig-studio/src/gui/app.cpp
+++ b/synfig-studio/src/gui/app.cpp
@@ -290,6 +290,7 @@ String studio::App::browser_command("open"); // MacOS only
 #else
 String studio::App::browser_command("xdg-open"); // Linux XDG standard
 #endif
+String studio::App::sequence_separator(".");
 
 static int max_recent_files_=25;
 int studio::App::get_max_recent_files() { return max_recent_files_; }
@@ -588,6 +589,11 @@ public:
                                
value=strprintf("%s",App::predefined_fps.c_str());
                                return true;
                        }
+                       if(key=="sequence_separator")
+                       {
+                               value=App::sequence_separator;
+                               return true;
+                       }
                }
                catch(...)
                {
@@ -703,6 +709,10 @@ public:
                                App::predefined_fps=value;
                                return true;
                        }
+                       if(key=="sequence_separator")
+                       {
+                               App::sequence_separator=value;
+                       }
                }
                catch(...)
                {
@@ -732,6 +742,7 @@ public:
                ret.push_back("predefined_size");
                ret.push_back("preferred_fps");
                ret.push_back("predefined_fps");
+               ret.push_back("sequence_separator");
                return ret;
        }
 };
@@ -1849,7 +1860,7 @@ App::reset_initial_preferences()
        
synfigapp::Main::settings().set_value("pref.predefined_size",DEFAULT_PREDEFINED_SIZE);
        synfigapp::Main::settings().set_value("pref.preferred_fps","24.0");
        
synfigapp::Main::settings().set_value("pref.predefined_fps",DEFAULT_PREDEFINED_FPS);
-
+       synfigapp::Main::settings().set_value("sequence_separator", ".");
 }
 
 bool
diff --git a/synfig-studio/src/gui/app.h b/synfig-studio/src/gui/app.h
index 56f28f8..8261808 100644
--- a/synfig-studio/src/gui/app.h
+++ b/synfig-studio/src/gui/app.h
@@ -206,6 +206,7 @@ public:
        static synfig::String predefined_size;
        static synfig::String predefined_fps;
        static float preferred_fps;
+       static synfig::String sequence_separator;
        /*
  -- ** -- S I G N A L S -------------------------------------------------------
        */
diff --git a/synfig-studio/src/gui/dialogs/dialog_setup.cpp 
b/synfig-studio/src/gui/dialogs/dialog_setup.cpp
index b99a896..0b65b4f 100644
--- a/synfig-studio/src/gui/dialogs/dialog_setup.cpp
+++ b/synfig-studio/src/gui/dialogs/dialog_setup.cpp
@@ -291,6 +291,14 @@ Dialog_Setup::Dialog_Setup():
        document_table->attach(*pref_fps_spinbutton, 1, 2, 4, 5, 
Gtk::EXPAND|Gtk::FILL, Gtk::SHRINK|Gtk::FILL, xpadding, ypadding);
        pref_fps_spinbutton->set_tooltip_text(_("Frames per second of the new 
created document"));
 
+       // Render - Table
+       Gtk::Table *render_table = manage(new Gtk::Table(2, 4, false));
+       notebook->append_page(*render_table, _("Render"));
+
+       // Render - Image sequence separator
+       attach_label(render_table, _("Image Sequence Separator String:"), 0, 
xpadding, ypadding);
+       render_table->attach(image_sequence_separator, 1, 2, 0, 1, 
Gtk::EXPAND|Gtk::FILL, Gtk::SHRINK|Gtk::FILL, xpadding, ypadding);
+
        show_all_children();
 }
 
@@ -355,6 +363,9 @@ Dialog_Setup::on_apply_pressed()
        // Set the preferred FPS
        App::preferred_fps=Real(adj_pref_fps.get_value());
 
+       // Set the preferred image sequence separator
+       App::sequence_separator=image_sequence_separator.get_text();
+
        App::save_settings();
 
        App::setup_changed();
@@ -502,6 +513,9 @@ Dialog_Setup::refresh()
 
        //Refresh the predefined FPS
        fps_template_combo->set_active_text(App::predefined_fps);
+
+       //Refresh the sequence separator
+       image_sequence_separator.set_text(App::sequence_separator);
 }
 
 GammaPattern::GammaPattern():
diff --git a/synfig-studio/src/gui/dialogs/dialog_setup.h 
b/synfig-studio/src/gui/dialogs/dialog_setup.h
index 6e60504..519ec38 100644
--- a/synfig-studio/src/gui/dialogs/dialog_setup.h
+++ b/synfig-studio/src/gui/dialogs/dialog_setup.h
@@ -201,6 +201,8 @@ class Dialog_Setup : public Gtk::Dialog
        Gtk::SpinButton* pref_fps_spinbutton;
        Gtk::SpinButton* pref_y_size_spinbutton;
        Gtk::SpinButton* pref_x_size_spinbutton;
+
+       Gtk::Entry image_sequence_separator;
 public:
 
        void set_time_format(synfig::Time::Format time_format);


------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Synfig-devl mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/synfig-devl

Reply via email to