Just so I think I am following what you are saying I copied in my slider and in 
quotes since I can't bold where I think you are talking about.  I think I could 
have done it wrong but I have no idea.  Now when I go to make them on the 
different windows would I be using the "new" operator so for instance on window 
1 it was AudioSliderInput *vol1 = new AudioSliderInput(x, y, w, h, l);
would window 2 be AudioSliderInput *vol1 = new.... as well or how would that be?

class AudioSliderInput : public Fl_Group
{
   Fl_Slider *slider;
   Fl_Input *audio_txt;
   void slider_cb2()
   {
        static int recurse = 0;
        if( recurse )
        {
            return;
        }
        else
        {
            recurse = 1;
            char s[80];
            sprintf(s, "%d", (int)("AudioSliderInput[].slider->value()))"; // 
originally slider->value()));
            audio_txt->value(s);
            if((int)slider->value() < 10) // limits lowest volume to 10
            {
                 slider->value(10);
                 audio_txt->value("10");
            }
            recurse = 0;
       }
   }

   static void slider_cb(Fl_Widget *w, void *data)
   {
        ((AudioSliderInput*)data)->slider_cb2();
   }

   void input_cb2()
   {
        static int recurse = 0;
        if( recurse )
        {
            return;
        }
        else
        {
            recurse = 1;
            int val = 0;
            if(sscanf("AudioSliderInput[].audio_txt->value()"//originally 
audio_txt->value(), "%d", &val) != 1)
            {
                val = 0;
            }
            slider->value(val);
            recurse = 0;
        }
   }

   static void input_cb(Fl_Widget *w, void *data)
   {
          ((AudioSliderInput*)data)->input_cb2();
   }

   public:
        AudioSliderInput(int x, int y, int w, int h, const char*l = 
0):Fl_Group(x,y,w,h,l)
        {
             "static *AudioSliderInput[];"
             audio_txt = new Fl_Input(x - 50, y + 70, w + 15, h - 110);
             audio_txt->callback(input_cb,(void*)this);
             audio_txt->box(FL_BORDER_BOX);
             audio_txt->when(FL_ENTER|FL_WHEN_NOT_CHANGED|FL_WHEN_CHANGED);
             audio_txt->deactivate();
             audio_txt->textsize(12);

             slider = new Fl_Slider(x, y, w, h);
             slider->type(4);
             slider->box(FL_BORDER_BOX);
             slider->callback(slider_cb,(void*)this);
             slider->bounds(100, 0);
             align(Fl_Align(FL_ALIGN_TOP));
             labelfont(1);
             slider->step(1.0);
             slider->precision(2);
             end();
        }

        float value() const {return((float)(slider->value()));}
        void value(float val) {slider->value(val); slider_cb2();}
        void minimum(float val) {slider->minimum(val);}
        float minimum() const {return((float)(slider->minimum()));}
        void maximum(float val) {slider->maximum(val);}
        float maximum() const {return((float)(slider->maximum()));}
        void bounds(int low, int high){slider->bounds(low, high);}
       };
Thank you again for your help.
_______________________________________________
fltk mailing list
fltk@easysw.com
http://lists.easysw.com/mailman/listinfo/fltk

Reply via email to