Logo ROOT  
Reference Guide
TGuiBldEditor.cxx
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 //////////////////////////////////////////////////////////////////////////
13 // //
14 // TGuiBldEditor - the property editor //
15 // //
16 //////////////////////////////////////////////////////////////////////////
17 
18 #include "TGuiBldEditor.h"
19 #include "TRootGuiBuilder.h"
20 #include "TGuiBldHintsEditor.h"
21 #include "TGuiBldNameFrame.h"
22 #include "TGuiBldGeometryFrame.h"
23 #include "TGResourcePool.h"
24 #include "TGTab.h"
25 #include "TGLabel.h"
26 #include "TGButtonGroup.h"
27 #include "TGNumberEntry.h"
28 #include "TG3DLine.h"
29 #include "TGColorSelect.h"
30 #include "TGuiBldDragManager.h"
31 #include "TGMsgBox.h"
32 #include "TGFrame.h"
33 #include "TGSplitter.h"
34 #include "TGTableLayout.h"
35 
37 
38 
39 ////////////////////////////////////////////////////////////////////////////////
40 class TGuiBldBorderFrame : public TGVerticalFrame {
41 
42 private:
43  enum EBldBorderFrameMode {
44  kBldBorderNone, kBldBorderSunken,
45  kBldBorderPlain, kBldBorderRaised,
46  kBldBorderDouble };
47 
48 private:
49  TGuiBldEditor *fEditor;
50  TGFrame *fSelected;
51  TGButtonGroup *fBtnGroup;
52  TGColorSelect *fBgndFrame;
53 
54 public:
55  TGuiBldBorderFrame(const TGWindow *p, TGuiBldEditor *editor);
56  virtual ~TGuiBldBorderFrame() { }
57 
58  void ChangeSelected(TGFrame*);
59 };
60 
61 ////////////////////////////////////////////////////////////////////////////////
62 /// Constructor.
63 
64 TGuiBldBorderFrame::TGuiBldBorderFrame(const TGWindow *p, TGuiBldEditor *editor) :
65  TGVerticalFrame(p, 1, 1)
66 {
67  fEditor = editor;
68  fEditDisabled = 1;
69  fBgndFrame = 0;
70 
72 
73  fBtnGroup = new TGButtonGroup(this, "Border Mode");
74 
75  TGRadioButton *frame299 = new TGRadioButton(fBtnGroup," Sunken",kBldBorderSunken);
76  frame299->SetToolTipText("Set a sunken border of the frame");
77  TGRadioButton *frame302 = new TGRadioButton(fBtnGroup," None",kBldBorderPlain);
78  frame302->SetToolTipText("Set no border of the frame");
79  TGRadioButton *frame305 = new TGRadioButton(fBtnGroup," Raised",kBldBorderRaised);
80  frame305->SetToolTipText("Set a raised border of the frame");
81  frame305->SetState(kButtonDown);
82  TGCheckButton *check = new TGCheckButton(fBtnGroup," Double",kBldBorderDouble);
83  check->SetToolTipText("Set double border of the frame");
84  //TQObject::Disconnect(check);
85 
86  fBtnGroup->SetRadioButtonExclusive(kTRUE);
87  AddFrame(fBtnGroup, new TGLayoutHints(kLHintsCenterX | kLHintsTop));
88  fBtnGroup->Connect("Pressed(Int_t)", "TGuiBldEditor", fEditor, "UpdateBorder(Int_t)");
89  check->Connect("Pressed()", "TGuiBldEditor", fEditor, "UpdateBorder(=4)");
90  check->Connect("Released()", "TGuiBldEditor", fEditor, "UpdateBorder(=5)");
91 
92  TGCompositeFrame *f = new TGGroupFrame(this, "Palette");
93  TGHorizontalFrame *hf = new TGHorizontalFrame(f ,1, 1);
94  fBgndFrame = new TGColorSelect(hf, 0, 1);
95  fBgndFrame->SetEditDisabled();
96  fBgndFrame->SetColor(GetDefaultFrameBackground());
97  fBgndFrame->Connect("ColorSelected(Pixel_t)", "TGuiBldEditor", fEditor,
98  "UpdateBackground(Pixel_t)");
99  hf->AddFrame(fBgndFrame, new TGLayoutHints(kLHintsTop | kLHintsLeft, 2, 2, 2, 2));
100  hf->AddFrame(new TGLabel(hf, "Backgrnd"), new TGLayoutHints(kLHintsTop |
101  kLHintsLeft, 2, 2, 2, 2));
102  f->AddFrame(hf, new TGLayoutHints(kLHintsCenterX | kLHintsTop, 2, 2, 2, 2));
103  AddFrame(f, new TGLayoutHints(kLHintsCenterX | kLHintsTop));
104 }
105 
106 ////////////////////////////////////////////////////////////////////////////////
107 /// Perform actions when selected frame was changed.
108 
109 void TGuiBldBorderFrame::ChangeSelected(TGFrame *frame)
110 {
111  fSelected = frame;
112 
113  if (!frame) {
114  return;
115  }
116 
117  UInt_t opt = fSelected->GetOptions();
118 
119  fBtnGroup->SetButton(kBldBorderDouble, opt & kDoubleBorder);
120  fBtnGroup->SetButton(kBldBorderSunken, opt & kSunkenFrame);
121  fBtnGroup->SetButton(kBldBorderRaised, opt & kRaisedFrame);
122  fBtnGroup->SetButton(kBldBorderPlain, !(opt & kRaisedFrame) && !(opt & kSunkenFrame));
123 
124  if (fBgndFrame) {
125  TQObject::Disconnect(fBgndFrame);
126  fBgndFrame->SetColor(fSelected->GetBackground());
127  fBgndFrame->Connect("ColorSelected(Pixel_t)", "TGuiBldEditor", fEditor, "UpdateBackground(Pixel_t)");
128  }
129 }
130 
131 ////////////////////////////////////////////////////////////////////////////////
132 ////////////////////////////////////////////////////////////////////////////////
133 /// Constructor.
134 
136 {
137  TGHorizontalFrame *hf;
138  TGVerticalFrame *vf;
139  fSelected = 0;
141 
142  fNameFrame = new TGuiBldNameFrame(this, this);
144 
145  TGHSplitter *splitter = new TGHSplitter(this,100,5);
147  splitter->SetFrame(fNameFrame, kTRUE);
148 
149  //------------frame with layout switch
150  hf = new TGHorizontalFrame(this);
151  hf->AddFrame(new TGLabel(hf, "Composite Frame Layout"),
152  new TGLayoutHints(kLHintsLeft | kLHintsTop, 2, 2, 2, 2));
154  kLHintsExpandX, 2, 2, 2, 2));
155  AddFrame(hf, new TGLayoutHints(kLHintsTop | kLHintsExpandX, 2, 2, 2, 2));
156 
157  vf = new TGVerticalFrame(this);
158  fLayoutLabel = new TGLabel(vf, "Automatic Layout Disabled");
160  2, 2, 2, 2));
161 
162  fLayoutButton = new TGTextButton(vf," Enable layout ");
165  2, 2, 2, 2));
166 
167  AddFrame(vf, new TGLayoutHints(kLHintsTop | kLHintsExpandX, 2, 2, 2, 2));
168 
170  kLHintsExpandX, 2, 2, 2, 2));
171 
172  fLayoutButton->Connect("Clicked()", "TGuiBldEditor", this, "SwitchLayout()");
173  fLayoutButton->SetToolTipText("If layout is on, all the frame \nelements get layouted automatically.");
174 
175  //-----------------------------
176 
177  fTab = new TGTab(this, 80, 40);
179  fTablay = fTab->AddTab("Layout");
180  TGCompositeFrame *tabcont = fTab->AddTab("Style");
181  fLayoutId = 1; // 2nd tab
182  fTab->Connect("Selected(Int_t)", "TGuiBldEditor", this, "TabSelected(Int_t)");
183 
186  2, 2, 2, 2));
187 
190  2, 2, 2, 2));
191 
192  //----------------Position X,Y boxes---------------
193 
194  fPositionFrame = new TGGroupFrame(fTablay, "Position");
195 
197 
198  vf = new TGVerticalFrame(hf);
199  vf->SetLayoutManager(new TGTableLayout(vf, 2, 2));
200 
201  vf->AddFrame(new TGLabel(vf, " X "), new TGTableLayoutHints(0, 1, 0, 1,
202  kLHintsCenterY | kLHintsLeft, 2, 2, 2, 2));
203  fXpos = new TGNumberEntry(vf, 0.0, 4, -1, (TGNumberFormat::EStyle)5);
204  vf->AddFrame(fXpos, new TGTableLayoutHints(1, 2, 0, 1, kLHintsCenterY |
205  kLHintsLeft, 2, 2, 2, 2));
206 
207  vf->AddFrame(new TGLabel(vf, " Y "), new TGTableLayoutHints(0, 1, 1, 2,
208  kLHintsCenterY | kLHintsLeft, 2, 2, 2, 2));
209  fYpos = new TGNumberEntry(vf, 0.0, 4, -1, (TGNumberFormat::EStyle)5);
210  vf->AddFrame(fYpos, new TGTableLayoutHints(1, 2, 1, 2, kLHintsCenterY |
211  kLHintsLeft, 2, 2, 2, 2));
212 
214 
215  vf = new TGVerticalFrame(hf);
216  vf->SetLayoutManager(new TGTableLayout(vf, 3, 3));
217 
218  TGTextButton *fTextButton6366 = new TGTextButton(vf, "^", -1,
222  fTextButton6366->Resize(20,20);
223  vf->AddFrame(fTextButton6366, new TGTableLayoutHints(1, 2, 0, 1,
224  kLHintsLeft | kLHintsTop, 1, 1, 1, 1));
225 
226  TGTextButton *fTextButton6367 = new TGTextButton(vf, "v", -1,
230  fTextButton6367->Resize(20,20);
231  vf->AddFrame(fTextButton6367, new TGTableLayoutHints(1, 2, 2, 3,
232  kLHintsLeft | kLHintsTop, 1, 1, 1, 1));
233 
234  TGTextButton *fTextButton6364 = new TGTextButton(vf, "<", -1,
238  fTextButton6364->Resize(20,20);
239  vf->AddFrame(fTextButton6364, new TGTableLayoutHints(0, 1, 1, 2,
240  kLHintsLeft | kLHintsTop, 1, 1, 1, 1));
241 
242  TGTextButton *fTextButton6365 = new TGTextButton(vf, ">", -1,
246  fTextButton6365->Resize(20,20);
247  vf->AddFrame(fTextButton6365, new TGTableLayoutHints(2, 3, 1, 2,
248  kLHintsLeft | kLHintsTop, 1, 1, 1, 1));
249 
251 
253 
255 
256  fXpos->Connect("ValueSet(Long_t)", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
257  fYpos->Connect("ValueSet(Long_t)", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
258 
259  fTextButton6364->Connect("Clicked()", "TGNumberEntry", fXpos, "IncreaseNumber(TGNumberFormat::EStepSize=0,-1)");
260  fTextButton6364->Connect("Clicked()", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
261  fTextButton6365->Connect("Clicked()", "TGNumberEntry", fXpos, "IncreaseNumber()");
262  fTextButton6365->Connect("Clicked()", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
263  fTextButton6366->Connect("Clicked()", "TGNumberEntry", fYpos, "IncreaseNumber(TGNumberFormat::EStepSize=0,-1)");
264  fTextButton6366->Connect("Clicked()", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
265  fTextButton6367->Connect("Clicked()", "TGNumberEntry", fYpos, "IncreaseNumber()");
266  fTextButton6367->Connect("Clicked()", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
267 
268  //----------------------------------------------------
269 
270  fBorderFrame = new TGuiBldBorderFrame(tabcont, this);
271  tabcont->AddFrame(fBorderFrame, new TGLayoutHints(kLHintsExpandX, 2, 2, 2, 2));
272 
273  MapSubwindows();
274  SetWindowName("Frame Property Editor");
275  SetEditDisabled(1);
276 
277  fEmbedded = kFALSE;
278 }
279 
280 ////////////////////////////////////////////////////////////////////////////////
281 /// Destructor.
282 
284 {
285 }
286 
287 ////////////////////////////////////////////////////////////////////////////////
288 /// Remove a frame.
289 
291 {
292  fNameFrame->RemoveFrame(frame);
293 }
294 
295 ////////////////////////////////////////////////////////////////////////////////
296 /// Handle selected.
297 
299 {
300  if (id == fLayoutId) {
301  //printf("%d\n", fSelected);
302  }
303 }
304 
305 ////////////////////////////////////////////////////////////////////////////////
306 /// Hide editor.
307 
309 {
310  UnmapWindow();
311 }
312 
313 ////////////////////////////////////////////////////////////////////////////////
314 /// Change selected frame.
315 
317 {
319 
320  if (!frame) {
322  //fTab->SetTab(0);
323  if (tab) {
324  tab->SetEnabled(kFALSE);
325  fClient->NeedRedraw(tab);
326  }
327  return;
328  }
329 
330  fSelected = frame;
331  TGWindow *parent = (TGWindow*)fSelected->GetParent();
332 
334 
335  Bool_t enable_layout = kFALSE;
336  enable_layout |= parent && !(parent->GetEditDisabled() & kEditDisableLayout);
337  enable_layout |= !(fSelected->GetEditDisabled() & kEditDisableLayout);
338  enable_layout |= parent && (parent->InheritsFrom(TGCompositeFrame::Class()) &&
339  !((TGCompositeFrame*)parent)->IsLayoutBroken());
340  enable_layout |= (fSelected->InheritsFrom(TGCompositeFrame::Class()) &&
342 
343  if (enable_layout) {
345 
346  if (tab) {
347  tab->SetEnabled(kTRUE);
348  fClient->NeedRedraw(tab);
349  }
350  } else {
352 
353  if (tab) {
354  fTab->SetTab(0);
355  tab->SetEnabled(kFALSE);
356  fClient->NeedRedraw(tab);
357  }
358  }
359 
360  if ((frame->InheritsFrom(TGHorizontalFrame::Class())) ||
361  (frame->InheritsFrom(TGVerticalFrame::Class())) ||
362  (frame->InheritsFrom(TGGroupFrame::Class())) ) {
363 
365  if (fSelected->IsLayoutBroken()) {
366  fLayoutButton->SetText(" Enable layout ");
367  fLayoutLabel->SetText("Automatic layout disabled");
368  if (fTablay) {
372  }
373  } else {
374  fLayoutButton->SetText(" Disable layout ");
375  fLayoutLabel->SetText("Automatic layout enabled");
376  if (fTablay) {
380  }
381  }
382  }
383  else {
385  TGFrame *parentf = (TGFrame*)frame->GetParent();
386  if (parentf->IsLayoutBroken()) {
387  fLayoutButton->SetText(" Enable layout ");
388  fLayoutLabel->SetText("Automatic layout disabled");
392  } else {
393  fLayoutButton->SetText(" Disable layout ");
394  fLayoutLabel->SetText("Automatic layout enabled");
398  }
399  }
400 
401  fYpos->SetIntNumber(frame->GetY());
402  fXpos->SetIntNumber(frame->GetX());
403 
404  if (fBorderFrame) fBorderFrame->ChangeSelected(fSelected);
406 
407  Emit("ChangeSelected(TGFrame*)", (long)fSelected);
408 
409  MapRaised();
410 }
411 
412 ////////////////////////////////////////////////////////////////////////////////
413 /// Update selected frame.
414 
416 {
417  Emit("UpdateSelected(TGFrame*)", (long)frame);
418 }
419 
420 ////////////////////////////////////////////////////////////////////////////////
421 /// Update border of selected frame.
422 
424 {
425  if (!fSelected) return;
426 
427  UInt_t opt = fSelected->GetOptions();
428 
429  switch (b) {
430  case 1:
431  opt &= ~kRaisedFrame;
432  opt |= kSunkenFrame;
433  break;
434  case 2:
435  opt &= ~kSunkenFrame;
436  opt &= ~kRaisedFrame;
437  break;
438  case 3:
439  opt &= ~kSunkenFrame;
440  opt |= kRaisedFrame;
441  break;
442  case 4:
443  opt |= kDoubleBorder;
444  break;
445  case 5:
446  opt &= ~kDoubleBorder;
447  break;
448  default:
449  return;
450  }
451  fSelected->ChangeOptions(opt);
453 }
454 
455 ////////////////////////////////////////////////////////////////////////////////
456 /// Update background.
457 
459 {
460  if (!fSelected) return;
461 
464 }
465 
466 ////////////////////////////////////////////////////////////////////////////////
467 /// Update foreground.
468 
470 {
471  if (!fSelected) return;
472 
475 }
476 
477 ////////////////////////////////////////////////////////////////////////////////
478 /// Reset the editor.
479 
481 {
482  fSelected = 0;
483  fNameFrame->Reset();
485  if (tab) {
486  fTab->SetTab(0);
487  tab->SetEnabled(kFALSE);
488  }
489 }
490 
491 ////////////////////////////////////////////////////////////////////////////////
492 /// Popup dialog to set layout of editted frame off. If layout is on, all
493 /// the elements in the frame get layouted automatically.
494 
496 {
497  if (!fSelected) {
498  fLayoutButton->SetText(" Enable layout ");
500  fLayoutLabel->SetText("Automatic layout disabled");
501  if (fTablay) {
505  }
506  return;
507  }
508 
510  TGFrame *frame = fSelected;
511  TGCompositeFrame *cf = fNameFrame->GetMdi(frame);
512  if (cf == 0)
513  return;
514  if (frame->IsLayoutBroken()) {
515  Int_t retval;
516  builder->GetManager()->SetEditable(kFALSE);
517  new TGMsgBox(gClient->GetDefaultRoot(), builder, "Layout change",
518  "Enabling layout will automatically align and resize all the icons. \n Do you really want to layout them?",
519  kMBIconExclamation, kMBOk | kMBCancel, &retval);
520 
521  cf->SetEditable(kTRUE);
522  // hack against selecting the message box itself
523  builder->GetManager()->SelectFrame(frame);
524  frame->SetEditable(kTRUE);
525 
526  if (retval == kMBOk) {
527  frame->SetLayoutBroken(kFALSE);
528  frame->Layout();
529  fLayoutButton->SetText(" Disable layout ");
530  fLayoutLabel->SetText("Automatic layout enabled");
531  if (fTablay) {
536  }
537  }
538  } else {
539  //set layout off - without dialog, because nothing "bad" can happen
540  frame->SetLayoutBroken(kTRUE);
541  fLayoutButton->SetText(" Enable layout ");
542  fLayoutLabel->SetText("Automatic layout disabled");
543  if (fTablay) {
547  }
548  }
549  fClient->NeedRedraw(frame, kTRUE);
551 }
552 
553 
554 
TGWindow::SetWindowName
virtual void SetWindowName(const char *name=0)
Set window name.
Definition: TGWindow.cxx:118
TGuiBldEditor::fYpos
TGNumberEntry * fYpos
Definition: TGuiBldEditor.h:58
TGuiBldEditor::RemoveFrame
void RemoveFrame(TGFrame *)
Remove a frame.
Definition: TGuiBldEditor.cxx:290
TGButton::SetToolTipText
virtual void SetToolTipText(const char *text, Long_t delayms=400)
Set tool tip text associated with this button.
Definition: TGButton.cxx:398
TGRadioButton::SetState
virtual void SetState(EButtonState state, Bool_t emit=kFALSE)
Set radio button state.
Definition: TGButton.cxx:1566
TGButton::SetEnabled
virtual void SetEnabled(Bool_t e=kTRUE)
Set enabled or disabled state of button.
Definition: TGButton.cxx:412
TGuiBldEditor::UpdateBackground
void UpdateBackground(Pixel_t col)
Update background.
Definition: TGuiBldEditor.cxx:458
TGFrame::GetHeight
UInt_t GetHeight() const
Definition: TGFrame.h:250
TGuiBldNameFrame
Definition: TGuiBldNameFrame.h:39
TGFrame::SetForegroundColor
virtual void SetForegroundColor(Pixel_t)
Definition: TGFrame.h:221
TQObject::Disconnect
Bool_t Disconnect(const char *signal=0, void *receiver=0, const char *slot=0)
Disconnects signal of this object from slot of receiver.
Definition: TQObject.cxx:1022
TGWindow
Definition: TGWindow.h:31
kLHintsCenterX
@ kLHintsCenterX
Definition: TGLayout.h:38
TGFrame::SetEditable
virtual void SetEditable(Bool_t)
Definition: TGFrame.h:239
kTRUE
const Bool_t kTRUE
Definition: RtypesCore.h:91
TGFrame::ChangeOptions
virtual void ChangeOptions(UInt_t options)
Change frame options. Options is an OR of the EFrameTypes.
Definition: TGFrame.cxx:306
TGFrame::SetCleanup
virtual void SetCleanup(Int_t=kLocalCleanup)
Definition: TGFrame.h:242
TGuiBldEditor::fTab
TGTab * fTab
Definition: TGuiBldEditor.h:52
f
#define f(i)
Definition: RSha256.hxx:122
TGFrame::IsLayoutBroken
virtual Bool_t IsLayoutBroken() const
Definition: TGFrame.h:241
TGFrame::SetBackgroundColor
virtual void SetBackgroundColor(Pixel_t back)
Set background color (override from TGWindow base class).
Definition: TGFrame.cxx:297
TGHorizontal3DLine
Definition: TG3DLine.h:29
TGuiBldEditor::~TGuiBldEditor
virtual ~TGuiBldEditor()
Destructor.
Definition: TGuiBldEditor.cxx:283
TGNumberEntry::SetIntNumber
virtual void SetIntNumber(Long_t val)
Definition: TGNumberEntry.h:189
TGTabElement::SetEnabled
virtual void SetEnabled(Bool_t on=kTRUE)
Definition: TGTab.h:162
kButtonDown
@ kButtonDown
Definition: TGButton.h:60
kLHintsTop
@ kLHintsTop
Definition: TGLayout.h:40
Pixel_t
ULong_t Pixel_t
Definition: GuiTypes.h:39
TGButton::GetDefaultGC
static const TGGC & GetDefaultGC()
Return default graphics context.
Definition: TGButton.cxx:423
TGuiBldEditor::fLayoutLabel
TGLabel * fLayoutLabel
Definition: TGuiBldEditor.h:56
TGTableLayoutHints
Definition: TGTableLayout.h:35
ClassImp
#define ClassImp(name)
Definition: Rtypes.h:364
TGTableLayout.h
TGuiBldNameFrame::ChangeSelected
void ChangeSelected(TGFrame *frame)
Change selected frame.
Definition: TGuiBldNameFrame.cxx:129
kMBCancel
@ kMBCancel
Definition: TGMsgBox.h:48
TGuiBldEditor::Reset
void Reset()
Reset the editor.
Definition: TGuiBldEditor.cxx:480
TGMsgBox
Definition: TGMsgBox.h:63
TGCompositeFrame::SetEditable
virtual void SetEditable(Bool_t on=kTRUE)
Switch ON/OFF edit mode.
Definition: TGFrame.cxx:933
kLHintsLeft
@ kLHintsLeft
Definition: TGLayout.h:37
TGWindow::kEditDisableLayout
@ kEditDisableLayout
Definition: TGWindow.h:61
TGLabel
Definition: TGLabel.h:32
TGuiBldGeometryFrame
Definition: TGuiBldGeometryFrame.h:34
TGuiBldEditor::SwitchLayout
void SwitchLayout()
Popup dialog to set layout of editted frame off.
Definition: TGuiBldEditor.cxx:495
TGTextButton
Definition: TGButton.h:142
TGuiBldNameFrame::Reset
void Reset()
Reset name frame.
Definition: TGuiBldNameFrame.cxx:119
TGuiBldEditor::TGuiBldEditor
TGuiBldEditor(const TGWindow *p=0)
Constructor.
Definition: TGuiBldEditor.cxx:135
TRootGuiBuilder
Definition: TRootGuiBuilder.h:65
TGuiBldGeometryFrame::ChangeSelected
void ChangeSelected(TGFrame *frame)
Update number entries when new frame selected.
Definition: TGuiBldGeometryFrame.cxx:114
TGCompositeFrame::SetEditDisabled
virtual void SetEditDisabled(UInt_t on=1)
Set edit disable flag for this frame and subframes.
Definition: TGFrame.cxx:1007
TGuiBldNameFrame::GetMdi
TGCompositeFrame * GetMdi(TGFrame *frame)
Find the parent mdi frame.
Definition: TGuiBldNameFrame.cxx:223
TGVerticalFrame::TGVerticalFrame
TGVerticalFrame(const TGWindow *p=0, UInt_t w=1, UInt_t h=1, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Definition: TGFrame.h:414
TGFrame::GetDefaultFrameBackground
static Pixel_t GetDefaultFrameBackground()
Get default frame background.
Definition: TGFrame.cxx:668
TGButtonGroup
Definition: TGButtonGroup.h:31
TGuiBldNameFrame::RemoveFrame
void RemoveFrame(TGFrame *frame)
Remove a frame.
Definition: TGuiBldNameFrame.cxx:335
TGHorizontalFrame
Definition: TGFrame.h:423
TGWindow::GetEditDisabled
virtual UInt_t GetEditDisabled() const
Definition: TGWindow.h:113
TGFrame
Definition: TGFrame.h:105
kDoubleBorder
@ kDoubleBorder
Definition: GuiTypes.h:385
TGTabElement
Definition: TGTab.h:130
TObject::InheritsFrom
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
Definition: TObject.cxx:445
b
#define b(i)
Definition: RSha256.hxx:118
TGLabel::SetText
virtual void SetText(TGString *newText)
Set new text in label.
Definition: TGLabel.cxx:179
bool
TGFrame::GetWidth
UInt_t GetWidth() const
Definition: TGFrame.h:249
TGFrame::GetOptions
virtual UInt_t GetOptions() const
Definition: TGFrame.h:222
TGuiBldEditor.h
TGuiBldDragManager::fEditor
TGuiBldEditor * fEditor
Definition: TGuiBldDragManager.h:74
gClient
#define gClient
Definition: TGClient.h:166
TGuiBldEditor::TabSelected
void TabSelected(Int_t id)
Handle selected.
Definition: TGuiBldEditor.cxx:298
TGCheckButton
Definition: TGButton.h:264
TGuiBldEditor::fPositionFrame
TGGroupFrame * fPositionFrame
Definition: TGuiBldEditor.h:49
TG3DLine.h
TGuiBldEditor::fGeomFrame
TGuiBldGeometryFrame * fGeomFrame
Definition: TGuiBldEditor.h:48
kSunkenFrame
@ kSunkenFrame
Definition: GuiTypes.h:383
TGuiBldEditor::fTablay
TGCompositeFrame * fTablay
Definition: TGuiBldEditor.h:53
TGuiBldGeometryFrame.h
kLHintsNormal
@ kLHintsNormal
Definition: TGLayout.h:45
TGuiBldEditor::fBorderFrame
TGuiBldBorderFrame * fBorderFrame
Definition: TGuiBldEditor.h:47
TGuiBldEditor::UpdateSelected
void UpdateSelected(TGFrame *=0)
Update selected frame.
Definition: TGuiBldEditor.cxx:415
TGuiBldDragManager::SetEditable
void SetEditable(Bool_t on=kTRUE)
Grab server.
Definition: TGuiBldDragManager.cxx:4616
kLHintsCenterY
@ kLHintsCenterY
Definition: TGLayout.h:41
TGRadioButton
Definition: TGButton.h:322
TGTextButton::SetText
virtual void SetText(TGHotString *new_label)
Set new button text.
Definition: TGButton.cxx:597
TGFrame::SetLayoutBroken
virtual void SetLayoutBroken(Bool_t=kTRUE)
Definition: TGFrame.h:240
TGCompositeFrame::MapSubwindows
virtual void MapSubwindows()
Map all sub windows that are part of the composite frame.
Definition: TGFrame.cxx:1149
TGVerticalFrame
Definition: TGFrame.h:412
TGTab::AddTab
virtual TGCompositeFrame * AddTab(TGString *text)
Add a tab to the tab widget.
Definition: TGTab.cxx:343
TGFrame::Resize
virtual void Resize(UInt_t w=0, UInt_t h=0)
Resize the frame.
Definition: TGFrame.cxx:590
kMBIconExclamation
@ kMBIconExclamation
Definition: TGMsgBox.h:41
TGuiBldEditor::fNameFrame
TGuiBldNameFrame * fNameFrame
Definition: TGuiBldEditor.h:45
kFALSE
const Bool_t kFALSE
Definition: RtypesCore.h:92
TGCompositeFrame::HideFrame
virtual void HideFrame(TGFrame *f)
Hide sub frame.
Definition: TGFrame.cxx:1175
TGFrame.h
TGLayoutHints
Definition: TGLayout.h:57
TGuiBldEditor::UpdateBorder
void UpdateBorder(Int_t)
Update border of selected frame.
Definition: TGuiBldEditor.cxx:423
TGGroupFrame
Definition: TGFrame.h:587
TGFrame::MapRaised
virtual void MapRaised()
map raised
Definition: TGFrame.h:230
TGTab
Definition: TGTab.h:62
TGButtonGroup.h
UInt_t
unsigned int UInt_t
Definition: RtypesCore.h:46
TGTab.h
kFixedSize
@ kFixedSize
Definition: GuiTypes.h:390
kLHintsExpandY
@ kLHintsExpandY
Definition: TGLayout.h:44
TGTab::SetTab
virtual Bool_t SetTab(Int_t tabIndex, Bool_t emit=kTRUE)
Brings the composite frame with the index tabIndex to the front and generate the following event if t...
Definition: TGTab.cxx:509
TGuiBldNameFrame.h
TGFrame::GetX
Int_t GetX() const
Definition: TGFrame.h:256
TGCompositeFrame::SetLayoutManager
virtual void SetLayoutManager(TGLayoutManager *l)
Set the layout manager for the composite frame.
Definition: TGFrame.cxx:985
kRaisedFrame
@ kRaisedFrame
Definition: GuiTypes.h:384
TGuiBldEditor::fLayoutId
Int_t fLayoutId
Definition: TGuiBldEditor.h:54
unsigned int
kMBOk
@ kMBOk
Definition: TGMsgBox.h:44
TGuiBldEditor
Definition: TGuiBldEditor.h:39
TGuiBldEditor::fSelected
TGFrame * fSelected
Definition: TGuiBldEditor.h:44
TGLabel.h
TGuiBldEditor::fLayoutButton
TGTextButton * fLayoutButton
Definition: TGuiBldEditor.h:55
TGuiBldEditor::fXpos
TGNumberEntry * fXpos
Definition: TGuiBldEditor.h:57
TGWindow::GetParent
const TGWindow * GetParent() const
Definition: TGWindow.h:84
TGHSplitter
Definition: TGSplitter.h:100
TGClient::NeedRedraw
void NeedRedraw(TGWindow *w, Bool_t force=kFALSE)
Set redraw flags.
Definition: TGClient.cxx:373
TQObject::Connect
Bool_t Connect(const char *signal, const char *receiver_class, void *receiver, const char *slot)
Non-static method is used to connect from the signal of this object to the receiver slot.
Definition: TQObject.cxx:864
TGCompositeFrame::IsLayoutBroken
virtual Bool_t IsLayoutBroken() const
Definition: TGFrame.h:394
TGFrame::UnmapWindow
virtual void UnmapWindow()
unmap window
Definition: TGFrame.h:231
TRootGuiBuilder::GetManager
TGuiBldDragManager * GetManager() const
Definition: TRootGuiBuilder.h:133
TGMsgBox.h
TGObject::fClient
TGClient * fClient
Definition: TGObject.h:37
TGuiBldEditor::UpdateForeground
void UpdateForeground(Pixel_t col)
Update foreground.
Definition: TGuiBldEditor.cxx:469
TGuiBldEditor::fHintsFrame
TGuiBldHintsEditor * fHintsFrame
Definition: TGuiBldEditor.h:46
TGTableLayout
Definition: TGTableLayout.h:85
TGSplitter.h
TGuiBldEditor::ChangeSelected
void ChangeSelected(TGFrame *)
Change selected frame.
Definition: TGuiBldEditor.cxx:316
TGuiBldEditor::fEmbedded
Bool_t fEmbedded
Definition: TGuiBldEditor.h:51
kDeepCleanup
@ kDeepCleanup
Definition: TGFrame.h:51
TGTextButton::GetDefaultFontStruct
static FontStruct_t GetDefaultFontStruct()
Return default font structure.
Definition: TGButton.cxx:822
TGFrame::GetY
Int_t GetY() const
Definition: TGFrame.h:257
TGuiBldHintsEditor.h
TGuiBldDragManager::SelectFrame
void SelectFrame(TGFrame *frame, Bool_t add=kFALSE)
Grab/Select frame.
Definition: TGuiBldDragManager.cxx:1218
TGColorSelect
Definition: TGColorSelect.h:127
TGNumberEntry.h
kLHintsExpandX
@ kLHintsExpandX
Definition: TGLayout.h:43
TGResourcePool.h
TGColorSelect.h
TGCompositeFrame::SetCleanup
virtual void SetCleanup(Int_t mode=kLocalCleanup)
Turn on automatic cleanup of child frames in dtor.
Definition: TGFrame.cxx:1057
TGNumberEntry
Definition: TGNumberEntry.h:156
TGWindow::fEditDisabled
UInt_t fEditDisabled
Definition: TGWindow.h:40
TGFrame::Layout
virtual void Layout()
Definition: TGFrame.h:224
Class
void Class()
Definition: Class.C:29
TGTab::GetTabTab
TGTabElement * GetTabTab(Int_t tabIndex) const
Return the tab element of tab with index tabIndex.
Definition: TGTab.cxx:614
TGuiBldHintsEditor
Definition: TGuiBldHintsEditor.h:34
TGCompositeFrame
Definition: TGFrame.h:324
splitter
REAL splitter
Definition: triangle.c:616
TGCompositeFrame::AddFrame
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=0)
Add frame to the composite frame using the specified layout hints.
Definition: TGFrame.cxx:1102
TGuiBldDragManager.h
TGNumberFormat::EStyle
EStyle
Definition: TGNumberEntry.h:39
TGuiBldHintsEditor::ChangeSelected
void ChangeSelected(TGFrame *)
Change selected.
Definition: TGuiBldHintsEditor.cxx:296
TGCompositeFrame::ShowFrame
virtual void ShowFrame(TGFrame *f)
Show sub frame.
Definition: TGFrame.cxx:1189
TQObject::Emit
void Emit(const char *signal, const T &arg)
Activate signal with single parameter.
Definition: TQObject.h:164
TRootGuiBuilder.h
TGuiBuilder::Instance
static TGuiBuilder * Instance()
return an instance of TGuiBuilder object
Definition: TGuiBuilder.cxx:147
int
TGuiBldEditor::Hide
void Hide()
Hide editor.
Definition: TGuiBldEditor.cxx:308