Author: Nikita Kitaev <nikita...@gmail.com>
Date:   Mon Mar 21 17:20:48 2011 -0700

Add option to enable snapping to guides

---

 synfig-studio/src/gui/app.cpp        |    2 ++
 synfig-studio/src/gui/canvasview.cpp |    5 +++++
 synfig-studio/src/gui/workarea.h     |    1 +
 3 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/synfig-studio/src/gui/app.cpp b/synfig-studio/src/gui/app.cpp
index 1cb0819..21510b4 100644
--- a/synfig-studio/src/gui/app.cpp
+++ b/synfig-studio/src/gui/app.cpp
@@ -834,6 +834,7 @@ init_ui_manager()
        DEFINE_ACTION("toggle-grid-show", _("Toggle Grid Show"));
        DEFINE_ACTION("toggle-grid-snap", _("Toggle Grid Snap"));
        DEFINE_ACTION("toggle-guide-show", _("Toggle Guide Show"));
+       DEFINE_ACTION("toggle-guide-snap", _("Toggle Guide Snap"));
        DEFINE_ACTION("toggle-low-res", _("Toggle Low-Res"));
        DEFINE_ACTION("decrease-low-res-pixel-size", _("Decrease Low-Res Pixel 
Size"));
        DEFINE_ACTION("increase-low-res-pixel-size", _("Increase Low-Res Pixel 
Size"));
@@ -951,6 +952,7 @@ init_ui_manager()
 "              <menuitem action='toggle-grid-show'/>"
 "              <menuitem action='toggle-grid-snap'/>"
 "              <menuitem action='toggle-guide-show'/>"
+"              <menuitem action='toggle-guide-snap'/>"
 "              <menuitem action='toggle-low-res'/>"
 "              <menuitem action='toggle-onion-skin'/>"
 "              <separator name='bleh10'/>"
diff --git a/synfig-studio/src/gui/canvasview.cpp 
b/synfig-studio/src/gui/canvasview.cpp
index 74f36ee..300a0ee 100644
--- a/synfig-studio/src/gui/canvasview.cpp
+++ b/synfig-studio/src/gui/canvasview.cpp
@@ -1600,8 +1600,13 @@ CanvasView::init_menus()
 
                action = Gtk::ToggleAction::create("toggle-guide-show", _("Show 
Guides"));
                action->set_active(work_area->get_show_guides());
+               action_group->add(action, sigc::mem_fun(*work_area, 
&studio::WorkArea::toggle_show_guides));
+
+               action = Gtk::ToggleAction::create("toggle-guide-snap", _("Snap 
to Guides"));
+               action->set_active(work_area->get_guide_snap());
                action_group->add(action, sigc::mem_fun(*work_area, 
&studio::WorkArea::toggle_guide_snap));
 
+
                action = Gtk::ToggleAction::create("toggle-low-res", _("Use 
Low-Res"));
                action->set_active(work_area->get_low_resolution_flag());
                action_group->add(action, sigc::mem_fun(*this, 
&studio::CanvasView::toggle_low_res_pixel_flag));
diff --git a/synfig-studio/src/gui/workarea.h b/synfig-studio/src/gui/workarea.h
index 09584c8..a704586 100644
--- a/synfig-studio/src/gui/workarea.h
+++ b/synfig-studio/src/gui/workarea.h
@@ -397,6 +397,7 @@ public:
        bool get_show_guides()const { return show_guides; }
        void set_show_guides(bool x);
        void toggle_show_guides() { set_show_guides(!get_show_guides()); }
+       void toggle_guide_snap() { Duckmatic::toggle_guide_snap(); }
 
        bool get_low_resolution_flag()const { return low_resolution; }
        void set_low_resolution_flag(bool x);


------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software 
be a part of the solution? Download the Intel(R) Manageability Checker 
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
Synfig-devl mailing list
Synfig-devl@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/synfig-devl

Reply via email to