X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fgtkmm2ext%2Fgtkmm2ext%2Ftabbable.h;h=1e85ed87825d19457b39fa55039348b4b4cec50b;hb=2a7a64a8738413df27e494e67c31695a429f6edc;hp=131daa1eadce12bcb6d74f839d8084e7cdf99ddb;hpb=308f6ed8281d2b8913207e0236bd22678e73ec9b;p=ardour.git diff --git a/libs/gtkmm2ext/gtkmm2ext/tabbable.h b/libs/gtkmm2ext/gtkmm2ext/tabbable.h index 131daa1ead..1e85ed8782 100644 --- a/libs/gtkmm2ext/gtkmm2ext/tabbable.h +++ b/libs/gtkmm2ext/gtkmm2ext/tabbable.h @@ -47,23 +47,23 @@ class LIBGTKMM2EXT_API Tabbable : public WindowProxy { void add_to_notebook (Gtk::Notebook& notebook, const std::string& tab_title); void make_visible (); void make_invisible (); + void change_visibility (); void attach (); void detach (); - + Gtk::Widget& contents() const { return _contents; } - + Gtk::Window* get (bool create = false); - Gtk::Window* own_window () { return get (false); } + Gtk::Window* own_window () { return get (false); } virtual Gtk::Window* use_own_window (bool and_pack_it); - bool has_own_window () const; - bool is_tabbed () const; - void set_default_tabbed (bool yn); - + virtual void show_window (); - bool window_visible (); + bool window_visible () const; + bool tabbed() const; + bool tabbed_by_default () const; Gtk::Window* current_toplevel () const; @@ -71,28 +71,27 @@ class LIBGTKMM2EXT_API Tabbable : public WindowProxy { int set_state (const XMLNode&, int version); XMLNode& get_state (); - + static std::string xml_node_name(); - + + sigc::signal1 StateChange; + protected: bool delete_event_handler (GdkEventAny *ev); - + private: Gtk::Widget& _contents; Gtk::Notebook _own_notebook; Gtk::Notebook* _parent_notebook; std::string _tab_title; - Gtk::HBox _tab_box; - Gtk::Label _tab_label; - Gtk::Button _tab_close_button; - CairoIcon tab_close_image; bool tab_requested_by_state; - + void show_tab (); void hide_tab (); - void tab_close_clicked (); + bool tab_close_clicked (GdkEventButton*); void show_own_window (bool and_pack_it); - bool tabbed() const; + void window_mapped (); + void window_unmapped (); };