Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <gtkmm.h>
- class ButtonManager
- {
- public :
- ButtonManager();
- Gtk::Widget* make_button(const Glib::ustring&);
- bool button_press_event(GdkEventButton*);
- };
- ButtonManager::ButtonManager()
- {
- }
- bool ButtonManager::button_press_event(GdkEventButton* event)
- {
- if (event->button == 1) {
- }
- return 1;
- }
- Gtk::Widget* ButtonManager::make_button(const Glib::ustring& text)
- {
- Gtk::Widget *button = new Gtk::Button(text);
- button->add_events(Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON1_MOTION_MASK);
- button->signal_button_press_event().connect(sigc::mem_fun(*this, &ButtonManager::button_press_event));
- return button;
- }
- int main(int argc, char *argv[])
- {
- auto application = Gtk::Application::create(argc, argv, "org.gktmm.drag");
- Gtk::Window *window = new Gtk::Window;
- Gtk::Fixed *fixed = new Gtk::Fixed;
- ButtonManager manager;
- fixed->put(*manager.make_button("A Button"), 50, 50);
- fixed->put(*manager.make_button("Another Button"), 250, 100);
- window->add(*fixed);
- window->show_all_children();
- application->run(*window);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement