#ifndef ROOT_TGComboBox
#define ROOT_TGComboBox
#ifndef ROOT_TGListBox
#include "TGListBox.h"
#endif
class TGScrollBarElement;
class TGTextEntry;
class TGComboBoxPopup : public TGCompositeFrame {
public:
   TGComboBoxPopup(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1,
                   UInt_t options = kVerticalFrame,
                   Pixel_t back = GetWhitePixel());
   virtual Bool_t HandleButton(Event_t *);
   void PlacePopup(Int_t x, Int_t y, UInt_t w, UInt_t h);
   void EndPopup();
   ClassDef(TGComboBoxPopup,0)  
};
class TGComboBox : public TGCompositeFrame, public TGWidget {
private:
   TGComboBox(const TGComboBox&);       
   TGComboBox& operator=(const TGComboBox&); 
protected:
   TGLBEntry           *fSelEntry;      
   TGTextEntry         *fTextEntry;     
   TGScrollBarElement  *fDDButton;      
   TGComboBoxPopup     *fComboFrame;    
   TGListBox           *fListBox;       
   const TGPicture     *fBpic;          
   TGLayoutHints       *fLhs;           
   TGLayoutHints       *fLhb;           
   TGLayoutHints       *fLhdd;          
   virtual void Init();
public:
   TGComboBox(const TGWindow *p = 0, Int_t id = -1,
              UInt_t options = kHorizontalFrame | kSunkenFrame | kDoubleBorder,
              Pixel_t back = GetWhitePixel());
   TGComboBox(const TGWindow *p, const char *text, Int_t id = -1,
              UInt_t options = kHorizontalFrame | kSunkenFrame | kDoubleBorder,
              Pixel_t back = GetWhitePixel());
   virtual ~TGComboBox();
   virtual void DrawBorder();
   virtual TGDimension GetDefaultSize() const { return TGDimension(fWidth, fHeight); }
   virtual Bool_t HandleButton(Event_t *event);
   virtual Bool_t HandleDoubleClick(Event_t *event);
   virtual Bool_t HandleMotion(Event_t *event);
   virtual Bool_t HandleSelection(Event_t *event);
   virtual Bool_t HandleSelectionRequest(Event_t *event);
   virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2);
   virtual void AddEntry(TGString *s, Int_t id)
                        { fListBox->AddEntry(s, id); }
   virtual void AddEntry(const char *s, Int_t id)
                        { fListBox->AddEntry(s, id); }
   virtual void AddEntry(TGLBEntry *lbe, TGLayoutHints *lhints)
                        { fListBox->AddEntry(lbe, lhints); }
   virtual void InsertEntry(TGString *s, Int_t id, Int_t afterID)
                        { fListBox->InsertEntry(s, id, afterID); }
   virtual void InsertEntry(const char *s, Int_t id, Int_t afterID)
                        { fListBox->InsertEntry(s, id, afterID); }
   virtual void InsertEntry(TGLBEntry *lbe, TGLayoutHints *lhints, Int_t afterID)
                        { fListBox->InsertEntry(lbe, lhints, afterID); }
   virtual void NewEntry(const char *s = "Entry") 
                        { fListBox->NewEntry(s); Resize(); }       
   virtual void RemoveEntry(Int_t id = -1);                        
   virtual void RemoveAll();                                       
   virtual Bool_t IsTextInputEnabled() const { return (fTextEntry != 0); }
   virtual void EnableTextInput(Bool_t on);    
   virtual void RemoveEntries(Int_t from_ID, Int_t to_ID)
                        { fListBox->RemoveEntries(from_ID, to_ID); }
   virtual Int_t GetNumberOfEntries() const
                        { return fListBox->GetNumberOfEntries(); }
   virtual TGListBox    *GetListBox() const { return fListBox; }
   virtual TGTextEntry  *GetTextEntry() const { return fTextEntry; }
   virtual TGLBEntry    *FindEntry(const char *s) const { return fListBox->FindEntry(s); }
   virtual void  Select(Int_t id, Bool_t emit = kTRUE);
   virtual Int_t GetSelected() const { return fListBox->GetSelected(); }
   virtual TGLBEntry *GetSelectedEntry() const
                        { return fListBox->GetSelectedEntry(); }
   virtual void SetTopEntry(TGLBEntry *e, TGLayoutHints *lh);
   virtual void SetEnabled(Bool_t on = kTRUE);   
   virtual Bool_t IsEnabled() const { return  fDDButton->IsEnabled(); }
   virtual void SortByName(Bool_t ascend = kTRUE)
                  { fListBox->SortByName(ascend); }            
   virtual void Selected(Int_t widgetId, Int_t id);                  
   virtual void Selected(Int_t id) { Emit("Selected(Int_t)", id); }  
   virtual void Selected(const char *txt) { Emit("Selected(char*)", txt); } 
   virtual void ReturnPressed();                                     
   virtual void SavePrimitive(ostream &out, Option_t *option = "");
   ClassDef(TGComboBox,0)  
};
class TGLineStyleComboBox : public TGComboBox {
public:
   TGLineStyleComboBox(const TGWindow *p = 0, Int_t id = -1,
              UInt_t options = kHorizontalFrame | kSunkenFrame | kDoubleBorder,
              Pixel_t back = GetWhitePixel());
   virtual void SavePrimitive(ostream &out, Option_t *option = "");
      
   ClassDef(TGLineStyleComboBox, 0)  
    
};
class TGLineWidthComboBox : public TGComboBox {
public:
   TGLineWidthComboBox(const TGWindow *p = 0, Int_t id = -1,
              UInt_t options = kHorizontalFrame | kSunkenFrame | kDoubleBorder,
              Pixel_t back = GetWhitePixel(), Bool_t none=kFALSE);
   
   virtual void SavePrimitive(ostream &out, Option_t *option = "");
   ClassDef(TGLineWidthComboBox, 0)  
     
};
const Int_t kMaxFonts = 20;
class TGFontTypeComboBox : public TGComboBox { 
protected:
   FontStruct_t fFonts[kMaxFonts];      
public:
   TGFontTypeComboBox(const TGWindow *p = 0, Int_t id = -1, 
            UInt_t options = kHorizontalFrame | kSunkenFrame | kDoubleBorder,
            Pixel_t bask = GetWhitePixel());
   virtual ~TGFontTypeComboBox();
   ClassDef(TGFontTypeComboBox, 0)  
};
#endif
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.