X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Ffloating_text_entry.h;h=0527feca9949ee2f33ee2112388c4ac8f7c55081;hb=69194df4d9a2f985423eca7d44c3d3292cc8baad;hp=116ba346513d28af76c9aefec6ada9c1c62610dd;hpb=9010262bed21611f2db652d16f63e4af4380259d;p=ardour.git diff --git a/gtk2_ardour/floating_text_entry.h b/gtk2_ardour/floating_text_entry.h index 116ba34651..0527feca99 100644 --- a/gtk2_ardour/floating_text_entry.h +++ b/gtk2_ardour/floating_text_entry.h @@ -25,27 +25,37 @@ class FloatingTextEntry : public Gtk::Window { - public: +public: FloatingTextEntry (Gtk::Window* parent, const std::string& initial_contents); - sigc::signal1 use_text; - - private: - Gtk::Entry entry; - bool entry_changed; - - /* handlers for Entry events */ - bool entry_focus_out (GdkEventFocus*); - bool key_press (GdkEventKey*); - void activated (); - bool button_press (GdkEventButton*); - void changed (); - - /* handlers for window events */ - - void on_realize (); - void on_hide (); + /* 1st argument to handler is the new text + * 2nd argument is 0, 1 or -1 to indicate: + * - do not move to next editable field + * - move to next editable field + * - move to previous editable field. + */ + sigc::signal2 use_text; + +private: + Gtk::Entry entry; + bool entry_changed; + + /* handlers for Entry events */ + bool entry_focus_out (GdkEventFocus*); + bool key_press (GdkEventKey*); + bool key_release (GdkEventKey*); + void activated (); + bool button_press (GdkEventButton*); + void changed (); + void idle_delete_self (); + void disconect_signals (); + + std::list _connections; + + /* handlers for window events */ + + void on_realize (); + void on_hide (); }; #endif // __ardour_window_h__ -