1 #ifndef __gtk2_ardour_button_joiner_h__
2 #define __gtk2_ardour_button_joiner_h__
5 #include <gtkmm/alignment.h>
6 #include <gtkmm/action.h>
8 #include "gtkmm2ext/activatable.h"
9 #include "gtkmm2ext/cairo_widget.h"
11 class ButtonJoiner : public CairoWidget, public Gtkmm2ext::Activatable {
13 ButtonJoiner (const std::string&, Gtk::Widget&, Gtk::Widget&, bool central_link = false);
16 void set_related_action (Glib::RefPtr<Gtk::Action>);
17 void set_active_state (Gtkmm2ext::ActiveState);
20 void render (cairo_t*);
21 bool on_button_release_event (GdkEventButton*);
22 void on_size_request (Gtk::Requisition*);
23 void on_size_allocate (Gtk::Allocation&);
25 void action_sensitivity_changed ();
26 void action_visibility_changed ();
27 void action_tooltip_changed ();
28 void action_toggled ();
36 cairo_pattern_t* active_fill_pattern;
37 cairo_pattern_t* inactive_fill_pattern;
45 #endif /* __gtk2_ardour_button_joiner_h__ */