X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fardour_dialog.h;h=76d7ac1d08a34d7c9047c8003c31961f5d496b60;hb=14c390ed027b3ba1c48084502677d1a1287bfc05;hp=041b62e1cdfc662f9a2a31b3aec7b9ad2f5f7ecd;hpb=6fd66bd46768f205e4eb02d6e14ef4a3a20700d2;p=ardour.git diff --git a/gtk2_ardour/ardour_dialog.h b/gtk2_ardour/ardour_dialog.h index 041b62e1cd..76d7ac1d08 100644 --- a/gtk2_ardour/ardour_dialog.h +++ b/gtk2_ardour/ardour_dialog.h @@ -25,6 +25,10 @@ #include "ardour/session_handle.h" +namespace WM { + class ProxyTemporary; +} + /* * This virtual parent class is so that each dialog box uses the * same mechanism to declare its closing. It shares a common @@ -33,18 +37,25 @@ */ class ArdourDialog : public Gtk::Dialog, public ARDOUR::SessionHandlePtr { - public: +public: ArdourDialog (std::string title, bool modal = false, bool use_separator = false); ArdourDialog (Gtk::Window& parent, std::string title, bool modal = false, bool use_separator = false); ~ArdourDialog(); - bool on_enter_notify_event (GdkEventCrossing*); - bool on_leave_notify_event (GdkEventCrossing*); + bool on_focus_in_event (GdkEventFocus*); + bool on_focus_out_event (GdkEventFocus*); + bool on_delete_event (GdkEventAny*); void on_unmap (); void on_show (); + virtual void on_response (int); + +protected: + void pop_splash (); + void close_self (); - private: - bool _splash_pushed; +private: + WM::ProxyTemporary* proxy; + bool _splash_pushed; void init (); static sigc::signal CloseAllDialogs;