library: libGui #include "TGDoubleSlider.h"

# TGDoubleHSlider

class description - source file - inheritance tree (.pdf)

## class TGDoubleHSlider : public TGDoubleSlider

| Inheritance Chart:
`TObject`
| <- | `TGObject`
| <- | `TGWindow`
`TQObject`
| <- | `TGFrame`
`TGWidget`
| <- | `TGDoubleSlider`
| <- | `TGDoubleHSlider` |

        protected:

          virtual void DoRedraw()

        public:

                              TGDoubleHSlider(const TGWindow* p = 0, UInt_t w = 1, UInt_t type = 1, Int_t id = -1, UInt_t options = kHorizontalFrame, Pixel_t back = GetDefaultFrameBackground(), Bool_t reversed = kFALSE, Bool_t mark_ends = kFALSE)
                              TGDoubleHSlider(const TGDoubleHSlider&)
                      virtual ~TGDoubleHSlider()
               static TClass* Class()
          virtual TGDimension GetDefaultSize() const
               virtual Bool_t HandleButton(Event_t* event)
               virtual Bool_t HandleMotion(Event_t* event)
              virtual TClass* IsA() const
                 virtual void SavePrimitive(ofstream& out, Option_t* option)
                 virtual void ShowMembers(TMemberInspector& insp, char* parent)
                 virtual void Streamer(TBuffer& b)
                         void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

          Int_t fXp  horizontal slider x position in pixel coordinates

## Class Description

     TGDoubleSlider, TGDoubleVSlider and TGDoubleHSlider

     DoubleSlider widgets allow easy selection of a min and a max value
     out of a range.
     DoubleSliders can be either horizontal or vertical oriented and
     there is a choice of three different types of tick marks.

     To change the min value press the mouse near to the left / bottom
     edge of the slider.
     To change the max value press the mouse near to the right / top
     edge of the slider.
     To change both values simultaneously press the mouse near to the
     center of the slider.

     TGDoubleSlider is an abstract base class. Use the concrete
     TGDoubleVSlider and TGDoubleHSlider.

     Dragging the slider will generate the event:
     kC_VSLIDER, kSL_POS, slider id, 0  (for vertical slider)
     kC_HSLIDER, kSL_POS, slider id, 0  (for horizontal slider)

     Pressing the mouse will generate the event:
     kC_VSLIDER, kSL_PRESS, slider id, 0  (for vertical slider)
     kC_HSLIDER, kSL_PRESS, slider id, 0  (for horizontal slider)

     Releasing the mouse will generate the event:
     kC_VSLIDER, kSL_RELEASE, slider id, 0  (for vertical slider)
     kC_HSLIDER, kSL_RELEASE, slider id, 0  (for horizontal slider)

     Use the functions GetMinPosition(), GetMaxPosition() and
     GetPosition() to retrieve the position of the slider.

TGDoubleHSlider(const TGWindow *p, UInt_t w, UInt_t type, Int_t id, UInt_t options, ULong_t back, Bool_t reversed, Bool_t mark_ends) : TGDoubleSlider(p, w, kDoubleSliderHeight, type, id, options, back, reversed, mark_ends)

     Create horizontal slider widget.

~TGDoubleHSlider()

     Delete a horizontal slider widget.

void DoRedraw()

     Redraw horizontal slider widget.

Bool_t HandleButton(Event_t *event)

     Handle mouse button event in horizontal slider widget.

Bool_t HandleMotion(Event_t *event)

     Handle mouse motion event in horizontal slide widget.

void SavePrimitive(ofstream &out, Option_t *option)

     Save an horizontal slider as a C++ statement(s) on output stream out.

### Inline Functions

                TGDimension GetDefaultSize() const
                    TClass* Class()
                    TClass* IsA() const
                       void ShowMembers(TMemberInspector& insp, char* parent)
                       void Streamer(TBuffer& b)
                       void StreamerNVirtual(TBuffer& b)
            TGDoubleHSlider TGDoubleHSlider(const TGDoubleHSlider&)

Author: Reiner Rohlfs 30/09/98
Last update: root/gui:$Name: $:$Id: TGDoubleSlider.cxx,v 1.12 2005/01/12 18:39:29 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *