From ef0626ae75cdb7ed84d7bbeed931172960f4d019 Mon Sep 17 00:00:00 2001 From: Jonathan Moore Liles Date: Tue, 12 Jan 2010 02:53:00 -0600 Subject: [PATCH] Timeline: Add blinker to indicate that one or more sequence widgets is selected. Conflicts: Timeline/TLE.fl --- Timeline/Sequence_Widget.H | 2 +- Timeline/TLE.fl | 13 ++++++++++--- Timeline/Timeline.C | 6 ++++++ Timeline/Timeline.H | 2 +- 4 files changed, 18 insertions(+), 5 deletions(-) diff --git a/Timeline/Sequence_Widget.H b/Timeline/Sequence_Widget.H index 2577e05..79b56f6 100644 --- a/Timeline/Sequence_Widget.H +++ b/Timeline/Sequence_Widget.H @@ -163,7 +163,7 @@ public: virtual Sequence_Widget *clone ( void ) const = 0; bool selected ( void ) const; - int nselected ( void ) const + static int nselected ( void ) { return _selection.size(); } void select ( void ); void deselect ( void ); diff --git a/Timeline/TLE.fl b/Timeline/TLE.fl index 7597b45..a8d1656 100644 --- a/Timeline/TLE.fl +++ b/Timeline/TLE.fl @@ -131,8 +131,7 @@ if ( Project::open() ) update_menu(); -project_name->redraw();} {selected - } +project_name->redraw();} {} } Function {run()} {} { code {update_menu(); @@ -683,6 +682,12 @@ ab.run();} code0 {\#include "FL/Fl_Blinker.H"} class Fl_Blinker } + Fl_Button selected_blinker { + label SEL + xywh {695 50 50 15} box ROUNDED_BOX down_box ROUNDED_BOX color 13 selection_color 5 labelfont 2 labelcolor 39 deactivate + code0 {\#include "FL/Fl_Blinker.H"} + class Fl_Blinker + } Fl_Box stats_box { label {} xywh {810 1 215 21} labelsize 13 labelcolor 53 align 88 @@ -789,7 +794,9 @@ if ( engine->zombified() && ! zombie ) solo_blinker->value( Track::soloing() ); rec_blinker->value( transport->rolling && transport->rec_enabled() ); -lash_blinker->value( lash->enabled() );} {} +lash_blinker->value( lash->enabled() ); +selected_blinker->value( timeline->nselected() );} {selected + } } Function {update_cb( void *v )} {open private return_type {static void} } { diff --git a/Timeline/Timeline.C b/Timeline/Timeline.C index 973daf7..2d8755c 100644 --- a/Timeline/Timeline.C +++ b/Timeline/Timeline.C @@ -1129,6 +1129,12 @@ Timeline::select_none ( void ) Sequence_Widget::select_none(); } +int +Timeline::nselected ( void ) const +{ + return Sequence_Widget::nselected(); +} + /** An unfortunate necessity for implementing our own DND aside from * the (bogus) native FLTK system */ Track * diff --git a/Timeline/Timeline.H b/Timeline/Timeline.H index 10e8355..e184543 100644 --- a/Timeline/Timeline.H +++ b/Timeline/Timeline.H @@ -185,7 +185,7 @@ public: void select( const Rectangle &r ); Track * track_under ( int Y ); - + int nselected ( void ) const; void delete_selected ( void ); void select_none ( void );