[gnote] Make ToolMenuButton support custom widget
- From: Aurimas Černius <aurimasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnote] Make ToolMenuButton support custom widget
- Date: Sun, 19 May 2013 19:14:31 +0000 (UTC)
commit de704417d1a5006bbb3e4baa436b65eb533dcbd6
Author: Aurimas Černius <aurisc4 gmail com>
Date: Sun May 19 21:56:57 2013 +0300
Make ToolMenuButton support custom widget
src/utils.cpp | 20 ++++++++++++++++----
src/utils.hpp | 2 ++
2 files changed, 18 insertions(+), 4 deletions(-)
---
diff --git a/src/utils.cpp b/src/utils.cpp
index ac5ed08..6e14ed9 100644
--- a/src/utils.cpp
+++ b/src/utils.cpp
@@ -738,6 +738,13 @@ namespace gnote {
return false;
}
+ ToolMenuButton::ToolMenuButton(Gtk::Widget & widget, Gtk::Menu *menu)
+ : Gtk::ToggleToolButton(widget)
+ , m_menu(menu)
+ {
+ _common_init();
+ }
+
ToolMenuButton::ToolMenuButton(Gtk::Toolbar& toolbar, const Gtk::BuiltinStockID& stock_image,
const Glib::ustring & label,
Gtk::Menu * menu)
@@ -758,19 +765,24 @@ namespace gnote {
}
- void ToolMenuButton::_common_init(Gtk::Image& image, const Glib::ustring & label)
+ void ToolMenuButton::_common_init()
{
- set_icon_widget(image);
- set_label_widget(*manage(new Gtk::Label(label, true)));
property_can_focus() = true;
gtk_menu_attach_to_widget(m_menu->gobj(), static_cast<Gtk::Widget*>(this)->gobj(),
NULL);
-// menu.attach_to_widget(*this);
m_menu->signal_deactivate().connect(sigc::mem_fun(*this, &ToolMenuButton::release_button));
show_all();
}
+ void ToolMenuButton::_common_init(Gtk::Image& image, const Glib::ustring & label)
+ {
+ set_icon_widget(image);
+ set_label_widget(*manage(new Gtk::Label(label, true)));
+ _common_init();
+ }
+
+
bool ToolMenuButton::on_button_press_event(GdkEventButton *ev)
{
popup_menu(*m_menu, ev);
diff --git a/src/utils.hpp b/src/utils.hpp
index 1153f2c..6d6c9a9 100644
--- a/src/utils.hpp
+++ b/src/utils.hpp
@@ -227,6 +227,7 @@ namespace gnote {
: public Gtk::ToggleToolButton
{
public:
+ ToolMenuButton(Gtk::Widget & widget, Gtk::Menu *menu);
ToolMenuButton(Gtk::Toolbar& toolbar,
const Gtk::BuiltinStockID& stock_image,
const Glib::ustring & label, Gtk::Menu * menu);
@@ -237,6 +238,7 @@ namespace gnote {
virtual bool on_mnemonic_activate(bool group_cycling);
private:
+ void _common_init();
void _common_init(Gtk::Image& image, const Glib::ustring & l);
// managed by gtkmm
Gtk::Menu *m_menu;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]