12 #ifndef ROOT_TRootGuiBuilder 
   13 #define ROOT_TRootGuiBuilder 
   25 enum EGuiBuilderMenuIds {
 
   37    kGUIBLD_WINDOW_CASCADE,
 
   38    kGUIBLD_WINDOW_OPAQUE,
 
   39    kGUIBLD_WINDOW_ARRANGE,
 
   41    kGUIBLD_HELP_CONTENTS,
 
   51 class TGDockableFrame;
 
   55 class TGuiBldDragManager;
 
   60 class TGPictureButton;
 
   65 class TRootGuiBuilder : 
public TGuiBuilder, 
public TGMainFrame {
 
   67 friend class TGuiBldDragManager;
 
   70    TGuiBldDragManager *fManager;    
 
   71    TGButton          *fActionButton;
 
   74    TGMdiMainFrame    *fMain;        
 
   75    TGDockableFrame   *fToolDock;    
 
   76    TGDockableFrame   *fShutterDock; 
 
   77    TGMdiMenuBar      *fMenuBar;     
 
   78    TGPopupMenu       *fMenuFile;    
 
   79    TGPopupMenu       *fMenuWindow;  
 
   80    TGPopupMenu       *fMenuEdit;    
 
   81    TGPopupMenu       *fMenuHelp;    
 
   82    TGStatusBar       *fStatusBar;   
 
   84    TGMdiFrame        *fEditable;    
 
   85    TGuiBldEditor     *fEditor;      
 
   86    const TGPicture   *fIconPic;     
 
   87    TGPictureButton   *fStartButton; 
 
   91    static TGGC       *fgBgndPopup;
 
   92    static TGGC       *fgBgndPopupHlght;
 
   95    void EnableLassoButtons(Bool_t on = kTRUE);
 
   96    void EnableSelectedButtons(Bool_t on = kTRUE);
 
   97    void EnableEditButtons(Bool_t on = kTRUE);
 
   99    TGButton *FindActionButton(
const char *name, 
const char *section);
 
  102    TRootGuiBuilder(
const TGWindow *p = 0);
 
  103    virtual ~TRootGuiBuilder();
 
  105    virtual void      AddAction(TGuiBldAction *act, 
const char *sect);
 
  106    virtual void      AddMacro(
const char *macro, TImage *img);
 
  107    virtual void      AddSection(
const char *sect);
 
  108    virtual TGFrame  *ExecuteAction();
 
  109    virtual void      HandleButtons();
 
  110    virtual void      Show() { MapRaised(); }
 
  112    virtual void      ChangeSelected(TGFrame *f);
 
  113    virtual void      Update();
 
  114    virtual Bool_t    IsSelectMode() 
const;
 
  115    virtual Bool_t    IsGrabButtonDown() 
const;
 
  116    virtual Bool_t    OpenProject(Event_t *event = 0);
 
  117    virtual Bool_t    SaveProject(Event_t *event = 0);
 
  118    virtual Bool_t    NewProject(TString type = 
"");
 
  119    virtual Bool_t    HandleKey(Event_t *event);
 
  120    virtual void      HandleMenu(Int_t 
id);
 
  121    virtual void      CloseWindow();
 
  122    virtual void      MaybeCloseWindow();
 
  123    virtual void      HandleWindowClosed(Int_t 
id);
 
  124    virtual void      UpdateStatusBar(
const char *text = 0);
 
  125    virtual void      EraseStatusBar();
 
  126    virtual void      SwitchToolbarButton();
 
  128    TGMdiFrame *FindEditableMdiFrame(
const TGWindow *win);
 
  129    TGuiBldEditor    *GetEditor()
 const { 
return fEditor; }
 
  130    TGDockableFrame  *GetToolDock()
 const { 
return fToolDock; }
 
  131    TGMdiMainFrame   *GetMdiMain()
 const { 
return fMain; }
 
  132    TGMdiFrame       *GetEditable()
 const { 
return fEditable; }
 
  133    TGuiBldDragManager  *GetManager()
 const { 
return fManager; }
 
  135    static ULong_t    GetBgnd();
 
  136    static TGGC      *GetBgndGC();
 
  138    static ULong_t    GetPopupBgnd();
 
  139    static TGGC      *GetPopupBgndGC();
 
  141    static ULong_t    GetPopupHlght();
 
  142    static TGGC      *GetPopupHlghtGC();
 
  144    static void       PropagateBgndColor(TGFrame *frame, Pixel_t color);
 
  146    static TGFrame     *HSplitter();
 
  147    static TGFrame     *VSplitter();
 
  148    static TGPopupMenu *CreatePopup();
 
  149    static TGFrame     *BuildListTree();
 
  150    static TGFrame     *BuildCanvas();
 
  151    static TGFrame     *BuildShutter();
 
  152    static TGFrame     *BuildTextEdit();
 
  153    static TGFrame     *BuildTab();
 
  154    static TGFrame     *BuildListBox();
 
  155    static TGFrame     *BuildComboBox();
 
  156    static TGFrame     *BuildH3DLine();
 
  157    static TGFrame     *BuildV3DLine();
 
  158    static TGFrame     *BuildHScrollBar();
 
  159    static TGFrame     *BuildVScrollBar();
 
  160    static TGFrame     *BuildHProgressBar();
 
  161    static TGFrame     *BuildVProgressBar();
 
  164    ClassDef(TRootGuiBuilder,0)