TGuiBldEditor.h

Go to the documentation of this file.
00001 // @(#)root/guibuilder:$Id: TGuiBldEditor.h 30063 2009-09-08 12:15:59Z bellenot $
00002 // Author: Valeriy Onuchin   12/09/04
00003 
00004 /*************************************************************************
00005  * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers.               *
00006  * All rights reserved.                                                  *
00007  *                                                                       *
00008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
00009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
00010  *************************************************************************/
00011 
00012 #ifndef ROOT_TGuiBldEditor
00013 #define ROOT_TGuiBldEditor
00014 
00015 
00016 //////////////////////////////////////////////////////////////////////////
00017 //                                                                      //
00018 // TGuiBldEditor                                                        //
00019 //                                                                      //
00020 //////////////////////////////////////////////////////////////////////////
00021 
00022 
00023 #ifndef ROOT_TGFrame
00024 #include "TGFrame.h"
00025 #endif
00026 
00027 #ifndef ROOT_TGNumberEntry
00028 #include "TGNumberEntry.h"
00029 #endif
00030 
00031 class TGuiBldHintsEditor;
00032 class TGuiBldNameFrame;
00033 class TGuiBldBorderFrame;
00034 class TGuiBldGeometryFrame;
00035 class TGuiBldDragManager;
00036 class TGTab;
00037 class TGButton;
00038 class TGLabel;
00039 class TGGroupFrame;
00040 class TGCompositeFrame;
00041 
00042 //////////////////////////////////////////////////////////////////////////
00043 class TGuiBldEditor : public TGVerticalFrame {
00044 
00045 friend class TGuiBldDragManager;
00046 
00047 private:
00048    TGFrame              *fSelected;       // editted frame
00049    TGuiBldNameFrame     *fNameFrame;      // frame name
00050    TGuiBldHintsEditor   *fHintsFrame;     // frame hints
00051    TGuiBldBorderFrame   *fBorderFrame;    // frame border
00052    TGuiBldGeometryFrame *fGeomFrame;      // frame geom
00053    TGGroupFrame         *fPositionFrame;  // X,Y coordinates
00054    TGuiBldDragManager   *fManager;        // main manager
00055    Bool_t                fEmbedded;       // kTRUE when it is inside guibuilder
00056    TGTab                *fTab;            // tab frame
00057    TGCompositeFrame     *fTablay;         // layout tab frame
00058    Int_t                 fLayoutId;       // the id of layout tab
00059    TGTextButton         *fLayoutButton;   // button to enable/disable layout
00060    TGLabel              *fLayoutLabel;    // saying if layout is enabled
00061    TGNumberEntry        *fXpos;           // X position
00062    TGNumberEntry        *fYpos;           // Y position
00063 
00064 public:
00065    TGuiBldEditor(const TGWindow *p = 0);
00066    virtual ~TGuiBldEditor();
00067 
00068    Int_t    GetXPos() const { return fXpos->GetIntNumber(); }
00069    Int_t    GetYPos() const { return fYpos->GetIntNumber(); }
00070    void     SetXPos(Int_t pos) { fXpos->SetIntNumber(pos); }
00071    void     SetYPos(Int_t pos) { fYpos->SetIntNumber(pos); }
00072 
00073    TGFrame *GetSelected() const { return fSelected; }
00074    Bool_t   IsEmbedded() const { return fEmbedded; }
00075    void     SetEmbedded(Bool_t e = kTRUE) { fEmbedded = e; }
00076    void     Hide();
00077    void     UpdateBorder(Int_t);
00078    void     UpdateBackground(Pixel_t col);
00079    void     UpdateForeground(Pixel_t col);
00080    void     Reset();
00081    TGuiBldHintsEditor *GetHintsEditor() const { return fHintsFrame; }
00082 
00083    void     RemoveFrame(TGFrame *);
00084    void     TabSelected(Int_t id);
00085    void     UpdateSelected(TGFrame* = 0); //*SIGNAL*
00086    void     ChangeSelected(TGFrame*);     //*SIGNAL*
00087    void     SwitchLayout();
00088 
00089    ClassDef(TGuiBldEditor,0)  // frame property editor
00090 };
00091 
00092 #endif

Generated on Tue Jul 5 14:22:09 2011 for ROOT_528-00b_version by  doxygen 1.5.1