From d9315ee6924a6621af10c491f38c235f507fd554 Mon Sep 17 00:00:00 2001 From: Jonathan Moore Liles Date: Wed, 13 Jan 2010 01:38:43 -0600 Subject: [PATCH] Mixer_Strip: Don't forget strip's color. --- Mixer/Mixer_Strip.C | 22 +++++++++++---- Mixer/Mixer_Strip.H | 68 ++++++++++++++++++++------------------------- 2 files changed, 47 insertions(+), 43 deletions(-) diff --git a/Mixer/Mixer_Strip.C b/Mixer/Mixer_Strip.C index 81fc929..a794726 100644 --- a/Mixer/Mixer_Strip.C +++ b/Mixer/Mixer_Strip.C @@ -40,6 +40,7 @@ #include "FL/Fl_Flowpack.H" +#include #include #include "Mixer.H" @@ -103,6 +104,20 @@ Mixer_Strip::log_children ( void ) _chain->log_children(); } +void +Mixer_Strip::color ( Fl_Color c ) +{ + _color = c; + name_field->color( _color ); + name_field->redraw(); +} + +Fl_Color +Mixer_Strip::color ( void ) const +{ + return _color; +} + void Mixer_Strip::chain ( Chain *c ) { @@ -426,18 +441,15 @@ Mixer_Strip::handle ( int m ) { Logger log( this ); - static Fl_Color orig_color; - switch ( m ) { case FL_ENTER: - orig_color = name_field->color(); - color( FL_BLACK ); + name_field->color( FL_BLACK ); name_field->redraw(); return 1; break; case FL_LEAVE: - name_field->color( orig_color ); + name_field->color( _color ); name_field->redraw(); return 1; break; diff --git a/Mixer/Mixer_Strip.H b/Mixer/Mixer_Strip.H index 3cff5df..878fd48 100644 --- a/Mixer/Mixer_Strip.H +++ b/Mixer/Mixer_Strip.H @@ -33,7 +33,6 @@ #include #include #include -#include //#include "Fader.H" #include @@ -47,6 +46,7 @@ class Controller_Module; class Meter_Indicator_Module; class Module; class Fl_Flip_Button; +class Fl_Input; class Mixer_Strip : public Fl_Group, public Loggable { @@ -57,6 +57,33 @@ public: Mixer_Strip(); /* for log create */ ~Mixer_Strip(); + + void chain ( Chain *c ); + + void log_children ( void ); + + virtual void color ( Fl_Color c ); + virtual Fl_Color color ( void ) const; + + LOG_CREATE_FUNC( Mixer_Strip ); + + void process ( unsigned int nframes ); + + static void configure_outputs ( Fl_Widget *o, void *v ); + void configure_outputs ( void ); + + bool configure_ports ( int n ); + + void handle_module_added ( Module *m ); + + void update ( void ); + + // int channels ( void ) const { return _in.size(); } + void name ( const char *name ); + const char *name ( void ) const { return label(); } + +private: + // Fl_Value_Slider *gain_slider; Fl_Flip_Button *prepost_button; Fl_Flip_Button *tab_button; @@ -81,9 +108,9 @@ public: nframes_t nframes; -private: - unsigned _color; + Fl_Color _color; +// unsigned _color; void init ( ); void cb_handle(Fl_Widget*); @@ -99,39 +126,4 @@ protected: void set ( Log_Entry &e ); virtual int handle ( int m ); - -public: - - void chain ( Chain *c ); - - void log_children ( void ); - - void color ( Fl_Color c ) - { - _color = c; - name_field->color( _color ); - name_field->redraw(); - } - - Fl_Color color ( void ) const - { - return name_field->color(); - } - - LOG_CREATE_FUNC( Mixer_Strip ); - - void process ( unsigned int nframes ); - - static void configure_outputs ( Fl_Widget *o, void *v ); - void configure_outputs ( void ); - - bool configure_ports ( int n ); - - void handle_module_added ( Module *m ); - - void update ( void ); - - // int channels ( void ) const { return _in.size(); } - void name ( const char *name ); - const char *name ( void ) const { return label(); } };