Author: Carlos Lopez <[email protected]>
Date: Sat Mar 9 08:22:13 2013 +0100
Add option to use Cairo render on Work Area
---
synfig-studio/src/gui/app.cpp | 14 ++++++++++++++
synfig-studio/src/gui/app.h | 1 +
synfig-studio/src/gui/dialogs/dialog_setup.cpp | 9 +++++++++
synfig-studio/src/gui/dialogs/dialog_setup.h | 1 +
4 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/synfig-studio/src/gui/app.cpp b/synfig-studio/src/gui/app.cpp
index 84ec05a..149f1d8 100644
--- a/synfig-studio/src/gui/app.cpp
+++ b/synfig-studio/src/gui/app.cpp
@@ -292,6 +292,7 @@ String studio::App::browser_command("xdg-open"); // Linux
XDG standard
#endif
String studio::App::sequence_separator(".");
bool studio::App::navigator_uses_cairo=false;
+bool studio::App::workarea_uses_cairo=false;
static int max_recent_files_=25;
int studio::App::get_max_recent_files() { return max_recent_files_; }
@@ -600,6 +601,11 @@ public:
value=strprintf("%i",(int)App::navigator_uses_cairo);
return true;
}
+ if(key=="workarea_uses_cairo")
+ {
+
value=strprintf("%i",(int)App::workarea_uses_cairo);
+ return true;
+ }
}
catch(...)
{
@@ -726,6 +732,12 @@ public:
App::navigator_uses_cairo=i;
return true;
}
+ if(key=="workarea_uses_cairo")
+ {
+ int i(atoi(value.c_str()));
+ App::workarea_uses_cairo=i;
+ return true;
+ }
}
catch(...)
{
@@ -757,6 +769,7 @@ public:
ret.push_back("predefined_fps");
ret.push_back("sequence_separator");
ret.push_back("navigator_uses_cairo");
+ ret.push_back("workarea_uses_cairo");
return ret;
}
};
@@ -1876,6 +1889,7 @@ App::reset_initial_preferences()
synfigapp::Main::settings().set_value("pref.predefined_fps",DEFAULT_PREDEFINED_FPS);
synfigapp::Main::settings().set_value("sequence_separator", ".");
synfigapp::Main::settings().set_value("navigator_uses_cairo", "0");
+ synfigapp::Main::settings().set_value("workarea_uses_cairo", "0");
}
bool
diff --git a/synfig-studio/src/gui/app.h b/synfig-studio/src/gui/app.h
index a41dd1f..67409cc 100644
--- a/synfig-studio/src/gui/app.h
+++ b/synfig-studio/src/gui/app.h
@@ -208,6 +208,7 @@ public:
static float preferred_fps;
static synfig::String sequence_separator;
static bool navigator_uses_cairo;
+ static bool workarea_uses_cairo;
/*
-- ** -- 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 5e92e1a..998ecc1 100644
--- a/synfig-studio/src/gui/dialogs/dialog_setup.cpp
+++ b/synfig-studio/src/gui/dialogs/dialog_setup.cpp
@@ -301,6 +301,9 @@ Dialog_Setup::Dialog_Setup():
// Render - Use Cairo on Navigator
attach_label(render_table, _("Use Cairo render on Navigator"), 1,
xpadding, ypadding);
render_table->attach(toggle_navigator_uses_cairo, 1, 2, 1, 2,
Gtk::EXPAND|Gtk::FILL, Gtk::SHRINK|Gtk::FILL, xpadding, ypadding);
+ // Render - Use Cairo on WorkArea
+ attach_label(render_table, _("Use Cairo render on WorkArea"), 2,
xpadding, ypadding);
+ render_table->attach(toggle_workarea_uses_cairo, 1, 2, 2, 3,
Gtk::EXPAND|Gtk::FILL, Gtk::SHRINK|Gtk::FILL, xpadding, ypadding);
show_all_children();
}
@@ -372,6 +375,9 @@ Dialog_Setup::on_apply_pressed()
// Set the navigator uses cairo flag
App::navigator_uses_cairo=toggle_navigator_uses_cairo.get_active();
+ // Set the workarea uses cairo flag
+ App::workarea_uses_cairo=toggle_workarea_uses_cairo.get_active();
+
App::save_settings();
App::setup_changed();
@@ -525,6 +531,9 @@ Dialog_Setup::refresh()
// Refresh the status of the navigator_uses_cairo flag
toggle_navigator_uses_cairo.set_active(App::navigator_uses_cairo);
+
+ // Refresh the status of the workarea_uses_cairo flag
+ toggle_workarea_uses_cairo.set_active(App::workarea_uses_cairo);
}
GammaPattern::GammaPattern():
diff --git a/synfig-studio/src/gui/dialogs/dialog_setup.h
b/synfig-studio/src/gui/dialogs/dialog_setup.h
index b4af059..3bded00 100644
--- a/synfig-studio/src/gui/dialogs/dialog_setup.h
+++ b/synfig-studio/src/gui/dialogs/dialog_setup.h
@@ -204,6 +204,7 @@ class Dialog_Setup : public Gtk::Dialog
Gtk::Entry image_sequence_separator;
Gtk::CheckButton toggle_navigator_uses_cairo;
+ Gtk::CheckButton toggle_workarea_uses_cairo;
public:
void set_time_format(synfig::Time::Format time_format);
------------------------------------------------------------------------------
Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester
Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the
endpoint security space. For insight on selecting the right partner to
tackle endpoint security challenges, access the full report.
http://p.sf.net/sfu/symantec-dev2dev
_______________________________________________
Synfig-devl mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/synfig-devl