// @(#)root/gui:$Id$
// Author: Fons Rademakers   22/02/98

/*************************************************************************
 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/

#ifndef ROOT_TRootControlBar
#define ROOT_TRootControlBar


//////////////////////////////////////////////////////////////////////////
//                                                                      //
// TRootControlBar                                                      //
//                                                                      //
// This class provides an interface to the GUI dependent functions of   //
// the TControlBar class. A control bar is a horizontal or vertical bar //
// with a number of buttons (text or picture buttons).                  //
//                                                                      //
//////////////////////////////////////////////////////////////////////////

#ifndef ROOT_TControlBarImp
#include "TControlBarImp.h"
#endif
#ifndef ROOT_TGFrame
#include "TGFrame.h"
#endif

class TControlBar;
class TList;


class TRootControlBar : public TGMainFrame, public TControlBarImp {

private:
   TList          *fWidgets; // list of TGTextButton or TGPictureButtons
   TGLayoutHints  *fL1;      // button layout hints
   UInt_t          fBwidth;  // button width in pixels

public:
   TRootControlBar(TControlBar *c = 0, const char *title = "ROOT Control Bar",
                   Int_t x = -999, Int_t y = -999);
   virtual ~TRootControlBar();

   void Create();
   void Hide();
   void Show();

   TList *GetWidgets() const { return fWidgets; }

   // overridden from TGMainFrame
   void   CloseWindow();
   Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2);
   void   ReallyDelete();
   void   SetButtonState(const char *label, Int_t state = 0);
   void   SetButtonWidth(UInt_t width);
   void   SetFont(const char *fontName);
   void   SetTextColor(const char *colorName);

   ClassDef(TRootControlBar,0)  //ROOT native GUI implementation of TControlBar
};

#endif
 TRootControlBar.h:1
 TRootControlBar.h:2
 TRootControlBar.h:3
 TRootControlBar.h:4
 TRootControlBar.h:5
 TRootControlBar.h:6
 TRootControlBar.h:7
 TRootControlBar.h:8
 TRootControlBar.h:9
 TRootControlBar.h:10
 TRootControlBar.h:11
 TRootControlBar.h:12
 TRootControlBar.h:13
 TRootControlBar.h:14
 TRootControlBar.h:15
 TRootControlBar.h:16
 TRootControlBar.h:17
 TRootControlBar.h:18
 TRootControlBar.h:19
 TRootControlBar.h:20
 TRootControlBar.h:21
 TRootControlBar.h:22
 TRootControlBar.h:23
 TRootControlBar.h:24
 TRootControlBar.h:25
 TRootControlBar.h:26
 TRootControlBar.h:27
 TRootControlBar.h:28
 TRootControlBar.h:29
 TRootControlBar.h:30
 TRootControlBar.h:31
 TRootControlBar.h:32
 TRootControlBar.h:33
 TRootControlBar.h:34
 TRootControlBar.h:35
 TRootControlBar.h:36
 TRootControlBar.h:37
 TRootControlBar.h:38
 TRootControlBar.h:39
 TRootControlBar.h:40
 TRootControlBar.h:41
 TRootControlBar.h:42
 TRootControlBar.h:43
 TRootControlBar.h:44
 TRootControlBar.h:45
 TRootControlBar.h:46
 TRootControlBar.h:47
 TRootControlBar.h:48
 TRootControlBar.h:49
 TRootControlBar.h:50
 TRootControlBar.h:51
 TRootControlBar.h:52
 TRootControlBar.h:53
 TRootControlBar.h:54
 TRootControlBar.h:55
 TRootControlBar.h:56
 TRootControlBar.h:57
 TRootControlBar.h:58
 TRootControlBar.h:59
 TRootControlBar.h:60
 TRootControlBar.h:61
 TRootControlBar.h:62
 TRootControlBar.h:63
 TRootControlBar.h:64
 TRootControlBar.h:65
 TRootControlBar.h:66
 TRootControlBar.h:67