From 36f435cc1497c003be683aaebc4174a6494bbc0a Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 16 Mar 2011 05:09:19 +0000 Subject: Font-based sizing (implement ticket #374). git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3099 a436a847-0d15-0410-975c-d299462d15a1 --- src/Patchage.cpp | 30 ++++++++++++++++++++++++++++++ src/Patchage.hpp | 7 +++++++ src/patchage.glade | 37 +++++++++++++++++++++++++++++++++++++ 3 files changed, 74 insertions(+) (limited to 'src') diff --git a/src/Patchage.cpp b/src/Patchage.cpp index 424b47c..f452bda 100644 --- a/src/Patchage.cpp +++ b/src/Patchage.cpp @@ -132,6 +132,9 @@ Patchage::Patchage(int argc, char** argv) , INIT_WIDGET(_menu_view_projects) , INIT_WIDGET(_menu_view_refresh) , INIT_WIDGET(_menu_view_toolbar) + , INIT_WIDGET(_menu_zoom_in) + , INIT_WIDGET(_menu_zoom_out) + , INIT_WIDGET(_menu_zoom_normal) , INIT_WIDGET(_messages_clear_but) , INIT_WIDGET(_messages_close_but) , INIT_WIDGET(_messages_win) @@ -230,6 +233,12 @@ Patchage::Patchage(int argc, char** argv) sigc::mem_fun(this, &Patchage::on_show_projects)); _menu_help_about->signal_activate().connect( sigc::mem_fun(this, &Patchage::on_help_about)); + _menu_zoom_in->signal_activate().connect( + sigc::mem_fun(this, &Patchage::on_zoom_in)); + _menu_zoom_out->signal_activate().connect( + sigc::mem_fun(this, &Patchage::on_zoom_out)); + _menu_zoom_normal->signal_activate().connect( + sigc::mem_fun(this, &Patchage::on_zoom_normal)); _messages_clear_but->signal_clicked().connect( sigc::mem_fun(this, &Patchage::on_messages_clear)); @@ -629,6 +638,27 @@ Patchage::on_help_about() } +void +Patchage::on_zoom_in() +{ + _canvas->set_font_size(_canvas->get_font_size() + 1.0); +} + + +void +Patchage::on_zoom_out() +{ + _canvas->set_font_size(_canvas->get_font_size() - 1.0); +} + + +void +Patchage::on_zoom_normal() +{ + _canvas->set_zoom_and_font_size(1.0, _canvas->get_default_font_size()); +} + + void Patchage::on_messages_clear() { diff --git a/src/Patchage.hpp b/src/Patchage.hpp index 58c4ad9..a8cc362 100644 --- a/src/Patchage.hpp +++ b/src/Patchage.hpp @@ -96,6 +96,10 @@ protected: void on_show_projects(); void on_store_positions(); void on_view_toolbar(); + void on_zoom_in(); + void on_zoom_out(); + void on_zoom_normal(); + bool on_scroll(GdkEventScroll* ev); void zoom(double z); @@ -159,6 +163,9 @@ protected: Widget _menu_view_projects; Widget _menu_view_refresh; Widget _menu_view_toolbar; + Widget _menu_zoom_in; + Widget _menu_zoom_out; + Widget _menu_zoom_normal; Widget _messages_clear_but; Widget _messages_close_but; Widget _messages_win; diff --git a/src/patchage.glade b/src/patchage.glade index 8723616..e86a4b8 100644 --- a/src/patchage.glade +++ b/src/patchage.glade @@ -178,6 +178,43 @@ + + + True + + + + + gtk-zoom-in + True + True + True + + + + + + gtk-zoom-out + True + True + True + + + + + + gtk-zoom-100 + True + True + True + + + + + + True + + gtk-refresh -- cgit v1.2.1