Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
TGuiBldEditor.h
Go to the documentation of this file.
1 // @(#)root/guibuilder:$Id$
2 // Author: Valeriy Onuchin 12/09/04
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TGuiBldEditor
13 #define ROOT_TGuiBldEditor
14 
15 
16 //////////////////////////////////////////////////////////////////////////
17 // //
18 // TGuiBldEditor //
19 // //
20 //////////////////////////////////////////////////////////////////////////
21 
22 
23 #include "TGFrame.h"
24 
25 #include "TGNumberEntry.h"
26 
27 class TGuiBldHintsEditor;
28 class TGuiBldNameFrame;
29 class TGuiBldBorderFrame;
30 class TGuiBldGeometryFrame;
31 class TGuiBldDragManager;
32 class TGTab;
33 class TGButton;
34 class TGLabel;
35 class TGGroupFrame;
36 class TGCompositeFrame;
37 
38 //////////////////////////////////////////////////////////////////////////
39 class TGuiBldEditor : public TGVerticalFrame {
40 
41 friend class TGuiBldDragManager;
42 
43 private:
44  TGFrame *fSelected; // editted frame
45  TGuiBldNameFrame *fNameFrame; // frame name
46  TGuiBldHintsEditor *fHintsFrame; // frame hints
47  TGuiBldBorderFrame *fBorderFrame; // frame border
48  TGuiBldGeometryFrame *fGeomFrame; // frame geom
49  TGGroupFrame *fPositionFrame; // X,Y coordinates
50  TGuiBldDragManager *fManager; // main manager
51  Bool_t fEmbedded; // kTRUE when it is inside guibuilder
52  TGTab *fTab; // tab frame
53  TGCompositeFrame *fTablay; // layout tab frame
54  Int_t fLayoutId; // the id of layout tab
55  TGTextButton *fLayoutButton; // button to enable/disable layout
56  TGLabel *fLayoutLabel; // saying if layout is enabled
57  TGNumberEntry *fXpos; // X position
58  TGNumberEntry *fYpos; // Y position
59 
60 public:
61  TGuiBldEditor(const TGWindow *p = 0);
62  virtual ~TGuiBldEditor();
63 
64  Int_t GetXPos() const { return fXpos->GetIntNumber(); }
65  Int_t GetYPos() const { return fYpos->GetIntNumber(); }
66  void SetXPos(Int_t pos) { fXpos->SetIntNumber(pos); }
67  void SetYPos(Int_t pos) { fYpos->SetIntNumber(pos); }
68 
69  TGFrame *GetSelected() const { return fSelected; }
70  Bool_t IsEmbedded() const { return fEmbedded; }
71  void SetEmbedded(Bool_t e = kTRUE) { fEmbedded = e; }
72  void Hide();
73  void UpdateBorder(Int_t);
74  void UpdateBackground(Pixel_t col);
75  void UpdateForeground(Pixel_t col);
76  void Reset();
77  TGuiBldHintsEditor *GetHintsEditor() const { return fHintsFrame; }
78 
79  void RemoveFrame(TGFrame *);
80  void TabSelected(Int_t id);
81  void UpdateSelected(TGFrame* = 0); //*SIGNAL*
82  void ChangeSelected(TGFrame*); //*SIGNAL*
83  void SwitchLayout();
84 
85  ClassDef(TGuiBldEditor,0) // frame property editor
86 };
87 
88 #endif