Logo ROOT   6.12/07
Reference Guide
TGuiBldHintsEditor.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 #include "TGuiBldHintsEditor.h"
13 #include "TGuiBldHintsButton.h"
14 #include "TGNumberEntry.h"
15 #include "TGuiBldEditor.h"
16 #include "TGLabel.h"
17 #include "TG3DLine.h"
18 #include "TGuiBldNameFrame.h"
19 #include "TGuiBldGeometryFrame.h"
20 #include "TRootGuiBuilder.h"
21 #include "TGTableLayout.h"
22 
23 //_____________________________________________________________________________
24 //
25 // TGuiBldHintsEditor
26 //
27 // Editor of widget's layout hints used by the ROOT GUI builder.
28 //_____________________________________________________________________________
29 
31 
32 ////////////////////////////////////////////////////////////////////////////////
33 class TGuiBldHintsManager : public TGVerticalFrame {
34 
35 public:
36  TGuiBldEditor *fEditor;
37  TGNumberEntry *fColumns;
38  TGNumberEntry *fRows;
39  TGuiBldHintsEditor *fHints;
40  TGMatrixLayout *fMatrix;
41 
42  UInt_t fPadTop; // save values
43  UInt_t fPadBottom; //
44  UInt_t fPadLeft; //
45  UInt_t fPadRight; //
46 
47 public:
48  TGuiBldHintsManager(const TGWindow *p, TGuiBldEditor *editor, TGuiBldHintsEditor *hints);
49  virtual ~TGuiBldHintsManager() { }
50  void ChangeSelected(TGFrame *frame);
51 };
52 
53 ////////////////////////////////////////////////////////////////////////////////
54 /// Constructor.
55 
56 TGuiBldHintsManager::TGuiBldHintsManager(const TGWindow *p, TGuiBldEditor *e,
57  TGuiBldHintsEditor *hints) :
58  TGVerticalFrame(p, 1, 1), fEditor(e), fHints(hints)
59 {
62  fRows = 0;
63  fColumns = 0;
64 
65  //-----check button to layout subframes was moved to HintsEditor to be generalized ------
66 
67  // "Matrix layout" group frame
68  TGGroupFrame *fGroupFrame4066 = new TGGroupFrame(this, "Matrix layout");
69  TGHorizontalFrame *f = new TGHorizontalFrame(fGroupFrame4066);
70 
71  f->AddFrame(new TGLabel(f," Cols "), new TGLayoutHints(kLHintsLeft | kLHintsCenterY, 2, 2, 2, 2));
72  fColumns = new TGNumberEntry(f,0.0,4,-1,(TGNumberFormat::EStyle)5);
73  f->AddFrame(fColumns, new TGLayoutHints(kLHintsLeft | kLHintsCenterY, 2, 2, 2, 2));
74 
75  f->AddFrame(new TGLabel(f," Rows "), new TGLayoutHints(kLHintsLeft | kLHintsCenterY, 2, 2, 2, 2));
76  fRows = new TGNumberEntry(f,0.0,4,-1,(TGNumberFormat::EStyle)5);
77  f->AddFrame(fRows, new TGLayoutHints(kLHintsLeft | kLHintsCenterY, 2, 2, 2, 2));
78 
79  fGroupFrame4066->AddFrame(f, new TGLayoutHints(kLHintsExpandX | kLHintsCenterY, 2, 2, 2, 2));
80 
81  TGTextButton *fAppButton = new TGTextButton(fGroupFrame4066, " Apply ");
82  fGroupFrame4066->AddFrame(fAppButton, new TGLayoutHints(kLHintsExpandX | kLHintsCenterY, 5, 5, 2, 2));
83 
84  AddFrame(fGroupFrame4066, new TGLayoutHints(kLHintsTop | kLHintsExpandX));
85 
86  fAppButton->Connect("Clicked()", "TGuiBldHintsEditor", fHints, "MatrixLayout()");
87  //fRows->Connect("ValueSet(Long_t)", "TGuiBldHintsEditor", fHints, "MatrixLayout()");
88  //fColumns->Connect("ValueSet(Long_t)", "TGuiBldHintsEditor", fHints, "MatrixLayout()");
89  fRows->GetNumberEntry()->Connect("ReturnPressed()", "TGuiBldHintsEditor", fHints, "MatrixLayout()");
90  fColumns->GetNumberEntry()->Connect("ReturnPressed()", "TGuiBldHintsEditor", fHints, "MatrixLayout()");
91  fRows->SetLimits(TGNumberFormat::kNELLimitMin, 1);
92  fColumns->SetLimits(TGNumberFormat::kNELLimitMin, 1);
93 
94  fPadTop = 2;
95  fPadBottom = 2;
96  fPadLeft = 2;
97  fPadRight = 2;
98 
99  MapSubwindows();
100  Resize();
101  MapWindow();
102 }
103 
104 ////////////////////////////////////////////////////////////////////////////////
105 /// action whne selcted/grabbed frame was changed
106 
107 void TGuiBldHintsManager::ChangeSelected(TGFrame *frame)
108 {
109  fMatrix = 0;
110 
111  if (!frame) {
112  UnmapWindow();
113  fHints->fLayButton->SetEnabled(kFALSE);
114  fHints->fLayButton->SetDown(kFALSE);
115  fRows->SetNumber(0);
116  fColumns->SetNumber(0);
117  return;
118  }
119 
120  Bool_t enable = frame->InheritsFrom(TGCompositeFrame::Class()) &&
121  !(frame->GetEditDisabled() & kEditDisableLayout);
122 
123  if (!enable) {
124  UnmapWindow();
125  fHints->fLayButton->SetEnabled(kFALSE);
126  fHints->fLayButton->SetDown(kFALSE);
127  fRows->SetNumber(0);
128  fColumns->SetNumber(0);
129  } else {
130  TGCompositeFrame *comp = (TGCompositeFrame*)frame;
131  TGLayoutManager *lm = comp->GetLayoutManager();
132 
133  if (!lm) {
134  return;
135  }
136  Int_t n = comp->GetList()->GetEntries();
137 
138  MapWindow();
139  fHints->fLayButton->SetEnabled(kTRUE);
140  fHints->fLayButton->SetDown(kFALSE);
141 
142  if (lm->IsA() == TGVerticalLayout::Class()) {
143  fRows->SetNumber(n);
144  fColumns->SetNumber(1);
145  } else if (lm->IsA() == TGHorizontalLayout::Class()) {
146  fColumns->SetNumber(n);
147  fRows->SetNumber(1);
148  } else if (lm->IsA() == TGMatrixLayout::Class()) {
149  fMatrix = (TGMatrixLayout*)lm;
150 
151  fColumns->SetNumber(fMatrix->fColumns);
152  fRows->SetNumber(fMatrix->fRows);
153  }
154  }
155  DoRedraw();
156 }
157 
158 ///////////////////////////////////////////////////////////////////////////////
159 ////////////////////////////////////////////////////////////////////////////////
160 /// ctor.
161 
163  TGVerticalFrame(p, 1, 1), fEditor(e)
164 {
166 
168 
169  TGVerticalFrame *frame3 = new TGVerticalFrame(this,262,18,kVerticalFrame);
170 
171  // horizontal frame - layout subframes (token from matrix layout)
172  TGHorizontalFrame *framez399 = new TGHorizontalFrame(frame3,123,40,kHorizontalFrame);
173  fLayButton = new TGCheckButton(framez399,"");
174  framez399->AddFrame(fLayButton, new TGLayoutHints(kLHintsLeft | kLHintsTop,0,1,2,2));
175  TGLabel *framez401 = new TGLabel(framez399,"Layout subframes");
176  framez399->AddFrame(framez401, new TGLayoutHints(kLHintsLeft | kLHintsCenterX | kLHintsTop,1,1,2,2));
177 
178  frame3->AddFrame(framez399, new TGLayoutHints(kLHintsLeft | kLHintsCenterX | kLHintsTop,1,1,1,1));
179 
180  fLayButton->Connect("Toggled(Bool_t)", "TGuiBldHintsEditor", this, "LayoutSubframes(Bool_t)");
181 
182  //--------layout hints in new layout---------------------------------------
183 
184  // "Padding" group frame
185  fPaddingFrame = new TGGroupFrame(frame3, "Padding");
187 
189  new TGTableLayoutHints(0, 1, 0, 1,
190  kLHintsRight | kLHintsCenterY, 0, 2, 2, 2));
193  kLHintsLeft | kLHintsCenterY, 0, 0, 2, 2));
194 
196  new TGTableLayoutHints(2, 3, 0, 1,
197  kLHintsRight | kLHintsCenterY, 2, 2, 2, 2));
200  kLHintsLeft | kLHintsCenterY, 0, 0, 2, 2));
201 
203  new TGTableLayoutHints(0, 1, 1, 2,
204  kLHintsRight | kLHintsCenterY, 0, 2, 2, 2));
207  kLHintsLeft | kLHintsCenterY, 0, 0, 2, 2));
208 
210  new TGTableLayoutHints(2, 3, 1, 2,
211  kLHintsRight | kLHintsCenterY, 2, 2, 2, 2));
214  kLHintsLeft | kLHintsCenterY, 0, 0, 2, 2));
215 
216  frame3->AddFrame(fPaddingFrame, new TGLayoutHints(kLHintsTop | kLHintsExpandX, 2, 2, 2, 2));
217 
218  // "Layout" group frame
219  fHintsFrame = new TGGroupFrame(frame3,"Layout");
220 
222 
223  fCbTop = new TGCheckButton(fHintsFrame, "Top");
225  kLHintsLeft | kLHintsCenterY, 5, 2, 2, 2));
226 
227  fCbBottom = new TGCheckButton(fHintsFrame, "Bottom");
229  kLHintsLeft | kLHintsCenterY, 5, 2, 2, 2));
230 
231  fCbLeft = new TGCheckButton(fHintsFrame, "Left");
233  kLHintsLeft | kLHintsCenterY, 5, 2, 2, 2));
234 
235  fCbRight = new TGCheckButton(fHintsFrame, "Right");
237  kLHintsLeft | kLHintsCenterY, 5, 2, 2, 2));
238 
239  fCbCenterX = new TGCheckButton(fHintsFrame, "Center in X");
241  kLHintsLeft | kLHintsCenterY, 9, 2, 2, 2));
242 
243  fCbCenterY = new TGCheckButton(fHintsFrame, "Center in Y");
245  kLHintsLeft | kLHintsCenterY, 9, 2, 2, 2));
246 
247  fCbExpandX = new TGCheckButton(fHintsFrame, "Expand in X");
249  kLHintsLeft | kLHintsCenterY, 9, 2, 2, 2));
250 
251  fCbExpandY = new TGCheckButton(fHintsFrame, "Expand in Y");
253  kLHintsLeft | kLHintsCenterY, 9, 2, 2, 2));
254 
255  frame3->AddFrame(fHintsFrame, new TGLayoutHints(kLHintsTop | kLHintsExpandX, 2, 2, 2, 2));
256 
257  fHintsManager = new TGuiBldHintsManager(frame3, e, this);
259  fHintsManager->UnmapWindow();
260  AddFrame(frame3);
261 
262  SetEditDisabled(1);
263  Resize();
264  MapSubwindows();
265  MapWindow();
266 
267  fCbTop->Connect("Clicked()", "TGButton", fCbBottom, "SetDown(=kFALSE)");
268  fCbBottom->Connect("Clicked()", "TGButton", fCbTop, "SetDown(=kFALSE)");
269  fCbRight->Connect("Clicked()", "TGButton", fCbLeft, "SetDown(=kFALSE)");
270  fCbLeft->Connect("Clicked()", "TGButton", fCbRight, "SetDown(=kFALSE)");
271 
272  fCbTop->Connect("Clicked()", "TGuiBldHintsEditor", this, "UpdateState()");
273  fCbBottom->Connect("Clicked()", "TGuiBldHintsEditor", this, "UpdateState()");
274  fCbRight->Connect("Clicked()", "TGuiBldHintsEditor", this, "UpdateState()");
275  fCbLeft->Connect("Clicked()", "TGuiBldHintsEditor", this, "UpdateState()");
276  fCbExpandX->Connect("Clicked()", "TGuiBldHintsEditor", this, "UpdateState()");
277  fCbCenterX->Connect("Clicked()", "TGuiBldHintsEditor", this, "UpdateState()");
278  fCbExpandY->Connect("Clicked()", "TGuiBldHintsEditor", this, "UpdateState()");
279  fCbCenterY->Connect("Clicked()", "TGuiBldHintsEditor", this, "UpdateState()");
280 
281  fPadTop->Connect("ValueSet(Long_t)", "TGuiBldHintsEditor", this, "UpdateState()");
282  fPadLeft->Connect("ValueSet(Long_t)", "TGuiBldHintsEditor", this, "UpdateState()");
283  fPadRight->Connect("ValueSet(Long_t)", "TGuiBldHintsEditor", this, "UpdateState()");
284  fPadBottom->Connect("ValueSet(Long_t)", "TGuiBldHintsEditor", this, "UpdateState()");
285 
286  fPadTop->GetNumberEntry()->Connect("ReturnPressed()", "TGuiBldHintsEditor", this, "UpdateState()");
287  fPadLeft->GetNumberEntry()->Connect("ReturnPressed()", "TGuiBldHintsEditor", this, "UpdateState()");
288  fPadRight->GetNumberEntry()->Connect("ReturnPressed()", "TGuiBldHintsEditor", this, "UpdateState()");
289  fPadBottom->GetNumberEntry()->Connect("ReturnPressed()", "TGuiBldHintsEditor", this, "UpdateState()");
290 }
291 
292 
293 ////////////////////////////////////////////////////////////////////////////////
294 /// Change selected
295 
297 {
298  if (!frame) {
299  return;
300  }
301  TGFrameElement *fe = frame->GetFrameElement();
302 
303  if (!fe) {
304  return;
305  }
306 
307  fHintsManager->ChangeSelected(frame);
308 
309  ULong_t lh = fe->fLayout->GetLayoutHints();
310 
317 
322 
327 
328  fCbTop->SetDown(lh & kLHintsTop);
330  fCbLeft->SetDown(lh & kLHintsLeft);
332 
337 }
338 
339 ////////////////////////////////////////////////////////////////////////////////
340 /// Update state
341 
343 {
344  TGFrame *frame = fEditor->GetSelected();
345 
346  if (!frame) {
347  return;
348  }
349 
350  TGFrameElement *fe = frame->GetFrameElement();
351 
352  if (!fe) {
353  return;
354  }
355 
356  if (fLayButton->IsDown() &&
357  ((gTQSender == fPadTop) || (gTQSender == fPadBottom) ||
358  (gTQSender == fPadLeft) || (gTQSender == fPadRight))) {
359  SetMatrixSep();
360  return;
361  }
362 
363  ULong_t lh = fe->fLayout->GetLayoutHints();
364 
365  if (fCbCenterX->IsDown()) {
366  lh |= kLHintsCenterX;
367  } else {
368  lh &= ~kLHintsCenterX;
369  }
370 
371  if (fCbCenterY->IsDown()) {
372  lh |= kLHintsCenterY;
373  } else {
374  lh &= ~kLHintsCenterY;
375  }
376 
377  if (fCbExpandX->IsDown()) {
378  lh |= kLHintsExpandX;
379  } else {
380  lh &= ~kLHintsExpandX;
381  }
382 
383  if (fCbExpandY->IsDown()) {
384  lh |= kLHintsExpandY;
385  } else {
386  lh &= ~kLHintsExpandY;
387  }
388 
389  if (fCbTop->IsDown()) {
390  lh |= kLHintsTop;
391  lh &= ~kLHintsBottom;
392  } else {
393  lh &= ~kLHintsTop;
394  }
395 
396  if (fCbBottom->IsDown()) {
397  lh |= kLHintsBottom;
398  lh &= ~kLHintsTop;
399  } else {
400  lh &= ~kLHintsBottom;
401  }
402 
403  if (fCbRight->IsDown()) {
404  lh |= kLHintsRight;
405  lh &= ~kLHintsLeft;
406  } else {
407  lh &= ~kLHintsRight;
408  }
409 
410  if (fCbLeft->IsDown()) {
411  lh |= kLHintsLeft;
412  lh &= ~kLHintsRight;
413  } else {
414  lh &= ~kLHintsLeft;
415  }
416 
417  if (fPadLeft->GetIntNumber() >=0) {
419  }
420  if (fPadRight->GetIntNumber() >=0) {
422  }
423  if (fPadTop->GetIntNumber() >=0) {
425  }
426  if (fPadBottom->GetIntNumber() >=0) {
428  }
429 
430  if (fe->fLayout->References() > 1) {
431  TGLayoutHints *lh2 = new TGLayoutHints(*fe->fLayout);
432  fe->fLayout->RemoveReference();
433  lh2->AddReference();
434  fe->fLayout = lh2;
435  } else {
436  fe->fLayout->SetLayoutHints(lh);
437  }
438 
439  fEditor->UpdateSelected(frame);
440 }
441 
442 ////////////////////////////////////////////////////////////////////////////////
443 /// Set the position of selected frame when adjusted by the right panel input.
444 
446 {
447  if (!fEditor) {
448  return;
449  }
450  TGFrame *frame = fEditor->GetSelected();
451 
452  if (!frame) {
453  //fNameFrame->Reset();
454  return;
455  }
456 
457  if ((fEditor->GetXPos() >= 0) && (fEditor->GetYPos() >= 0)) {
458  frame->MoveResize(fEditor->GetXPos(), fEditor->GetYPos(),
459  frame->GetWidth(), frame->GetHeight());
460  fClient->NeedRedraw(frame, kTRUE);
461  TGWindow *root = (TGWindow*)fClient->GetRoot();
462  fClient->NeedRedraw(root, kTRUE);
463  if (fBuilder) {
465  }
466  } else {
467  fEditor->SetYPos(frame->GetY());
468  fEditor->SetXPos(frame->GetX());
469  }
470 }
471 
472 
473 ////////////////////////////////////////////////////////////////////////////////
474 /// Layout subframes.
475 
477 {
478  if (!fEditor) {
479  return;
480  }
481  TGFrame *frame = fEditor->GetSelected();
482 
483  if (!frame) {
484  //fNameFrame->Reset();
485  return;
486  }
487 
488  TGFrameElement *fe = frame->GetFrameElement();
489 
490  if (!fe) {
491  //fNameFrame->Reset();
492  return;
493  }
494 
495  Bool_t enable = frame->InheritsFrom(TGCompositeFrame::Class()) &&
496  !(frame->GetEditDisabled() & kEditDisableLayout);
497 
498  if (!on) {
500  fPadBottom->SetIntNumber(fHintsManager->fPadBottom);
501  fPadLeft->SetIntNumber(fHintsManager->fPadLeft);
502  fPadRight->SetIntNumber(fHintsManager->fPadRight);
503 
504  ChangeSelected(frame);
505  return;
506  }
507  if (!enable) {
508  return;
509  }
510 
511  TGCompositeFrame *comp = (TGCompositeFrame*)frame;
512  fHintsManager->fRows->SetState(kTRUE);
513  fHintsManager->fColumns->SetState(kTRUE);
514  comp->SetLayoutBroken(kFALSE);
515 
516  if (!fHintsManager->fMatrix) {
517  if (!(frame->GetParent()->GetEditDisabled() & kEditDisableLayout)) {
518  //comp->Resize();
519  comp->Layout();
520  } else {
521  if (comp->GetLayoutManager()) {
522  comp->GetLayoutManager()->Layout();
523  } else {
524  comp->Layout();
525  }
526  }
527  return;
528  }
529 
530  MatrixLayout();
531 
532 }
533 
534 ////////////////////////////////////////////////////////////////////////////////
535 /// Set matrix layout separator.
536 
538 {
539  TGFrame *frame = fEditor->GetSelected();
540 
541  if (!frame) {
542  //fNameFrame->Reset();
543  return;
544  }
545 
546  TGFrameElement *fe = frame->GetFrameElement();
547 
548  if (!fe) {
549  //fNameFrame->Reset();
550  return;
551  }
552 
553  Bool_t enable = frame->InheritsFrom(TGCompositeFrame::Class()) &&
554  !(frame->GetEditDisabled() & kEditDisableLayout) &&
555  ((TGCompositeFrame*)frame)->GetLayoutManager() &&
556  ((TGCompositeFrame*)frame)->GetLayoutManager()->InheritsFrom(TGMatrixLayout::Class());
557 
558  if (!enable) {
559  return;
560  }
561 
563  UInt_t sep = ne->GetIntNumber();
564 
565  fPadTop->SetIntNumber(sep);
566  fPadLeft->SetIntNumber(sep);
567  fPadRight->SetIntNumber(sep);
568  fPadBottom->SetIntNumber(sep);
570 
571  fHintsManager->fMatrix->fSep = sep;
572  frame->SetLayoutBroken(kFALSE);
573 
574  if (!(frame->GetParent()->GetEditDisabled() & kEditDisableLayout)) {
575  frame->Resize();
576  } else {
577  fHintsManager->fMatrix->Layout();
578  }
579  fClient->NeedRedraw(frame, kTRUE);
580 }
581 
582 ////////////////////////////////////////////////////////////////////////////////
583 /// Apply matrix layout.
584 
586 {
587  TGFrame *frame = fEditor->GetSelected();
588 
589  if (!frame) {
590  //fNameFrame->Reset();
591  return;
592  }
593 
594  TGFrameElement *fe = frame->GetFrameElement();
595 
596  if (!fe) {
597  //fNameFrame->Reset();
598  return;
599  }
600 
601  Bool_t enable = frame->InheritsFrom(TGCompositeFrame::Class()) &&
602  !(frame->GetEditDisabled() & kEditDisableLayout);
603 
604  if (!enable) {
605  return;
606  }
607 
608  TGCompositeFrame *comp = (TGCompositeFrame*)frame;
609 
610  UInt_t rows = fHintsManager->fRows->GetIntNumber();
611  UInt_t cols = fHintsManager->fColumns->GetIntNumber();
613 
618 
623 
624  fHintsManager->fPadTop = fPadTop->GetIntNumber();
625  fHintsManager->fPadBottom = fPadBottom->GetIntNumber();
626  fHintsManager->fPadLeft = fPadLeft->GetIntNumber();
627  fHintsManager->fPadRight = fPadRight->GetIntNumber();
628 
629  fPadTop->SetIntNumber(sep);
630  fPadLeft->SetIntNumber(sep);
631  fPadRight->SetIntNumber(sep);
632  fPadBottom->SetIntNumber(sep);
633 
634  fHintsManager->fRows->SetState(kTRUE);
635  fHintsManager->fColumns->SetState(kTRUE);
636 
637  comp->SetLayoutBroken(kFALSE);
638 
639  fHintsManager->fMatrix = new TGMatrixLayout(comp, rows, cols, sep, 0);
640  comp->SetLayoutManager(fHintsManager->fMatrix);
641 
642  if (!(comp->GetParent()->GetEditDisabled() & kEditDisableLayout)) {
643  comp->Layout(); //resize?
644  } else {
645  fHintsManager->fMatrix->Layout();
646  }
647  fClient->NeedRedraw(comp, kTRUE);
648 }
virtual void Resize(UInt_t w=0, UInt_t h=0)
Resize the frame.
Definition: TGFrame.cxx:587
virtual void SetPadBottom(Int_t v)
Definition: TGLayout.h:97
TGCheckButton * fCbBottom
virtual void MapSubwindows()
Definition: TGFrame.h:247
virtual UInt_t GetEditDisabled() const
Definition: TGWindow.h:116
TGCheckButton * fLayButton
virtual void MoveResize(Int_t x, Int_t y, UInt_t w=0, UInt_t h=0)
Move and/or resize the frame.
Definition: TGFrame.cxx:611
TGNumberEntry * fPadBottom
TGGroupFrame * fHintsFrame
ULong_t GetLayoutHints() const
Definition: TGLayout.h:89
void ChangeSelected(TGFrame *)
Change selected.
R__EXTERN void * gTQSender
Definition: TQObject.h:45
Int_t GetY() const
Definition: TGFrame.h:279
const TGWindow * GetRoot() const
Returns current root (i.e.
Definition: TGClient.cxx:222
UInt_t GetHeight() const
Definition: TGFrame.h:272
void MatrixLayout()
Apply matrix layout.
virtual void DoRedraw()
Redraw button.
virtual Int_t GetEntries() const
Definition: TCollection.h:177
virtual void SetLayoutManager(TGLayoutManager *l)
Set the layout manager for the composite frame.
Definition: TGFrame.cxx:982
TGGroupFrame * fPaddingFrame
int Int_t
Definition: RtypesCore.h:41
bool Bool_t
Definition: RtypesCore.h:59
TGFrame * GetSelected() const
Definition: TGuiBldEditor.h:69
UInt_t GetWidth() const
Definition: TGFrame.h:271
TGNumberEntry * fPadTop
virtual void Layout()
Layout the elements of the composite frame.
Definition: TGFrame.cxx:1239
TGLayoutHints * fLayout
Definition: TGLayout.h:121
void SetYPos(Int_t pos)
Definition: TGuiBldEditor.h:67
virtual Long_t GetIntNumber() const
void Class()
Definition: Class.C:29
virtual Bool_t IsDown() const
Definition: TGButton.h:312
virtual TList * GetList() const
Definition: TGFrame.h:369
void SetXPos(Int_t pos)
Definition: TGuiBldEditor.h:66
TGuiBldHintsEditor(const TGWindow *p, TGuiBldEditor *e)
ctor.
Int_t GetXPos() const
Definition: TGuiBldEditor.h:64
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:867
virtual void SetPadRight(Int_t v)
Definition: TGLayout.h:99
Int_t GetX() const
Definition: TGFrame.h:278
virtual void SetLayoutBroken(Bool_t on=kTRUE)
Set broken layout. No Layout method is called.
Definition: TGFrame.cxx:994
void LayoutSubframes(Bool_t on=kTRUE)
Layout subframes.
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
Definition: TObject.cxx:443
Int_t GetPadLeft() const
Definition: TGLayout.h:92
unsigned int UInt_t
Definition: RtypesCore.h:42
UInt_t References() const
Definition: TRefCnt.h:38
TGVerticalFrame(const TGWindow *p=0, UInt_t w=1, UInt_t h=1, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Definition: TGFrame.h:436
virtual void SetIntNumber(Long_t val)
TGCheckButton * fCbExpandX
TGNumberEntry * fPadLeft
const Bool_t kFALSE
Definition: RtypesCore.h:88
Int_t GetYPos() const
Definition: TGuiBldEditor.h:65
#define ClassImp(name)
Definition: Rtypes.h:359
virtual void SetEditDisabled(UInt_t on=1)
Set edit disable flag for this frame and subframes.
Definition: TGFrame.cxx:1004
virtual void SetLayoutHints(ULong_t lh)
Definition: TGLayout.h:95
UInt_t RemoveReference()
Definition: TRefCnt.h:41
virtual void SetCleanup(Int_t mode=kLocalCleanup)
Turn on automatic cleanup of child frames in dtor.
Definition: TGFrame.cxx:1054
virtual void SetEnabled(Bool_t e=kTRUE)
Set enabled or disabled state of button.
Definition: TGButton.cxx:409
void SetMatrixSep()
Set matrix layout separator.
Int_t GetPadRight() const
Definition: TGLayout.h:93
void SetPosition()
Set the position of selected frame when adjusted by the right panel input.
unsigned long ULong_t
Definition: RtypesCore.h:51
TGuiBldEditor * fEditor
TGNumberEntry * fPadRight
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
Definition: TRolke.cxx:630
virtual void SetCleanup(Int_t=kLocalCleanup)
Definition: TGFrame.h:264
void UpdateState()
Update state.
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=0)
Add frame to the composite frame using the specified layout hints.
Definition: TGFrame.cxx:1099
const TGWindow * GetParent() const
Definition: TGWindow.h:85
virtual void MapSubwindows()
Map all sub windows that are part of the composite frame.
Definition: TGFrame.cxx:1146
TRootGuiBuilder * fBuilder
void UpdateSelected(TGFrame *=0)
Update selected frame.
virtual TGLayoutManager * GetLayoutManager() const
Definition: TGFrame.h:397
virtual void UnmapWindow()
Definition: TGFrame.h:253
virtual void SetPadTop(Int_t v)
Definition: TGLayout.h:96
TGuiBldHintsManager * fHintsManager
virtual void SetDown(Bool_t on=kTRUE, Bool_t emit=kFALSE)
Definition: TGButton.cxx:260
TGNumberEntryField * GetNumberEntry() const
void AddReference()
Definition: TRefCnt.h:40
static TGuiBuilder * Instance()
return an instance of TGuiBuilder object
virtual void SetLayoutBroken(Bool_t=kTRUE)
Definition: TGFrame.h:262
virtual void MapWindow()
Definition: TGFrame.h:251
TGClient * fClient
Definition: TGObject.h:37
virtual void Layout()=0
TGFrameElement * GetFrameElement() const
Definition: TGFrame.h:282
void NeedRedraw(TGWindow *w, Bool_t force=kFALSE)
Set redraw flags.
Definition: TGClient.cxx:370
UInt_t fEditDisabled
Definition: TGWindow.h:41
TGCheckButton * fCbTop
TGCheckButton * fCbCenterX
Int_t GetPadTop() const
Definition: TGLayout.h:90
virtual void SetPadLeft(Int_t v)
Definition: TGLayout.h:98
TGCheckButton * fCbExpandY
const Bool_t kTRUE
Definition: RtypesCore.h:87
const Int_t n
Definition: legend1.C:16
TGCheckButton * fCbCenterY
TGCheckButton * fCbRight
Int_t GetPadBottom() const
Definition: TGLayout.h:91
TGCheckButton * fCbLeft