diff --git a/FL/Fl_Sometimes_Input.H b/FL/Fl_Sometimes_Input.H index 3ebea61..7e9f7bc 100644 --- a/FL/Fl_Sometimes_Input.H +++ b/FL/Fl_Sometimes_Input.H @@ -48,6 +48,14 @@ public: } } + virtual void + take_focus ( void ) + { + set_visible_focus(); + Fl_Widget::take_focus(); + clear_visible_focus(); + } + virtual int handle ( int m ) { @@ -59,11 +67,9 @@ public: redraw(); return 1; case FL_PUSH: - set_visible_focus(); take_focus(); - clear_visible_focus(); redraw(); - return r; + return 1; case FL_UNFOCUS: if ( window() ) diff --git a/Timeline/Track.C b/Timeline/Track.C index 9b53141..b80322c 100644 --- a/Timeline/Track.C +++ b/Timeline/Track.C @@ -653,6 +653,10 @@ Track::menu_cb ( const Fl_Menu_ *m ) Fl::delete_widget( this ); } } + else if ( ! strcmp( picked, "/Rename" ) ) + { + ((Fl_Sometimes_Input*)name_field)->take_focus(); + } } #include "FL/menu_popup.H" @@ -676,6 +680,7 @@ Track::menu ( void ) const { "Add Control", 0, 0, 0 }, { "Add Annotation", 0, 0, 0 }, { "Color", 0, 0, 0 }, + { "Rename", FL_CTRL + 'n', 0, 0 }, { "Remove", 0, 0, 0 }, // transport->rolling ? FL_MENU_INACTIVE : 0 }, { 0 }, }; diff --git a/Timeline/Track.H b/Timeline/Track.H index fc72991..9c218a9 100644 --- a/Timeline/Track.H +++ b/Timeline/Track.H @@ -48,7 +48,6 @@ class Port; class Audio_Region; class Audio_File; - //class Audio_Sequence; #include "Audio_Sequence.H"