library: libGui #include "TGScrollBar.h"

# TGScrollBar

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

## class TGScrollBar : public TGFrame, public TGWidget

| Inheritance Chart:
`TObject`
| <- | `TGObject`
| <- | `TGWindow`
`TQObject`
| <- | `TGFrame`
`TGWidget`
| <- | `TGScrollBar` |
<- |
`TGHScrollBar` |
`TGVScrollBar` |

This is an abstract class, constructors will not be documented.
Look at the header to check for available constructors.

        public:

                  virtual ~TGScrollBar()
           static TClass* Class()
             virtual void DrawBorder()
          static Pixmap_t GetBckgndPixmap()
            virtual Int_t GetPageSize() const
            virtual Int_t GetPosition() const
            virtual Int_t GetRange() const
             static Int_t GetScrollBarWidth()
                     void GrabPointer(Bool_t grab)
           virtual Bool_t HandleButton(Event_t* event)
           virtual Bool_t HandleMotion(Event_t* event)
           virtual Bool_t HandleTimer(TTimer* t)
          virtual TClass* IsA() const
             virtual void Layout()
             virtual void MapSubwindows()
             virtual void SetPosition(Int_t pos)
             virtual void SetRange(Int_t range, Int_t page_size)
             virtual void ShowMembers(TMemberInspector& insp, char* parent)
             virtual void Streamer(TBuffer& b)
                     void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

                        Int_t fX0
                        Int_t fY0               current slider position in pixels
                        Int_t fXp
                        Int_t fYp               previous slider position in pixels
                       Bool_t fDragging         in dragging mode?
                       Bool_t fGrabPointer      grab pointer when dragging
                        Int_t fRange            logical upper range of scrollbar
                        Int_t fPsize            logical page size of scrollbar
                        Int_t fPos              logical current position
                        Int_t fSliderSize       logical slider size
                        Int_t fSliderRange      logical slider range
          TGScrollBarElement* fHead             head button of scrollbar
          TGScrollBarElement* fTail             tail button of scrollbar
          TGScrollBarElement* fSlider           slider
             const TGPicture* fHeadPic          picture in head (up or left arrow)
             const TGPicture* fTailPic          picture in tail (down or right arrow)
                      TTimer* fRepeat           repeat rate timer (when mouse stays pressed)
                     Window_t fSubw             sub window in which mouse is pressed
              static Pixmap_t fgBckgndPixmap
                 static Int_t fgScrollBarWidth

## Class Description

     TGScrollBar and TGScrollBarElement

     The classes in this file implement scrollbars. Scrollbars can be
     either placed horizontal or vertical. A scrollbar contains three
     TGScrollBarElements: The "head", "tail" and "slider". The head and
     tail are fixed at either end and have the typical arrows in them.

     The TGHScrollBar will generate the following event messages:
     kC_HSCROLL, kSB_SLIDERPOS, position, 0
     kC_HSCROLL, kSB_SLIDERTRACK, position, 0

     The TGVScrollBar will generate the following event messages:
     kC_VSCROLL, kSB_SLIDERPOS, position, 0
     kC_VSCROLL, kSB_SLIDERTRACK, position, 0

~TGScrollBar()

     Delete a scrollbar (either horizontal or vertical).

Bool_t HandleTimer(TTimer *t)

     Handle repeat timer for horizontal or vertical scrollbar. Every time
     timer times out we move slider.

Pixmap_t GetBckgndPixmap()

     Static method returning scrollbar background pixmap.

Int_t GetScrollBarWidth()

     Static method returning the scrollbar width.

### Inline Functions

                   void GrabPointer(Bool_t grab)
                   void DrawBorder()
                 Bool_t HandleButton(Event_t* event)
                 Bool_t HandleMotion(Event_t* event)
                   void Layout()
                   void SetRange(Int_t range, Int_t page_size)
                   void SetPosition(Int_t pos)
                  Int_t GetPosition() const
                  Int_t GetPageSize() const
                  Int_t GetRange() const
                   void MapSubwindows()
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
                   void StreamerNVirtual(TBuffer& b)

Author: Fons Rademakers 10/01/98
Last update: root/gui:$Name: $:$Id: TGScrollBar.cxx,v 1.12 2003/11/05 13:08:26 rdm Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *