Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
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/** \class TGuiBldEditor
13 \ingroup guibuilder
14
15The property editor
16
17*/
18
19
20#include "TGuiBldEditor.h"
21#include "TRootGuiBuilder.h"
22#include "TGuiBldHintsEditor.h"
23#include "TGuiBldNameFrame.h"
25#include "TGResourcePool.h"
26#include "TGTab.h"
27#include "TGLabel.h"
28#include "TGButtonGroup.h"
29#include "TGNumberEntry.h"
30#include "TG3DLine.h"
31#include "TGColorSelect.h"
32#include "TGuiBldDragManager.h"
33#include "TGMsgBox.h"
34#include "TGFrame.h"
35#include "TGSplitter.h"
36#include "TGTableLayout.h"
37
38
39
40////////////////////////////////////////////////////////////////////////////////
61
62////////////////////////////////////////////////////////////////////////////////
63/// Constructor.
64
66 TGVerticalFrame(p, 1, 1)
67{
69 fEditDisabled = 1;
70 fBgndFrame = 0;
71
73
74 fBtnGroup = new TGButtonGroup(this, "Border Mode");
75
77 frame299->SetToolTipText("Set a sunken border of the frame");
79 frame302->SetToolTipText("Set no border of the frame");
81 frame305->SetToolTipText("Set a raised border of the frame");
82 frame305->SetState(kButtonDown);
84 check->SetToolTipText("Set double border of the frame");
85 //TQObject::Disconnect(check);
86
89 fBtnGroup->Connect("Pressed(Int_t)", "TGuiBldEditor", fEditor, "UpdateBorder(Int_t)");
90 check->Connect("Pressed()", "TGuiBldEditor", fEditor, "UpdateBorder(=4)");
91 check->Connect("Released()", "TGuiBldEditor", fEditor, "UpdateBorder(=5)");
92
93 TGCompositeFrame *f = new TGGroupFrame(this, "Palette");
95 fBgndFrame = new TGColorSelect(hf, 0, 1);
98 fBgndFrame->Connect("ColorSelected(Pixel_t)", "TGuiBldEditor", fEditor,
99 "UpdateBackground(Pixel_t)");
100 hf->AddFrame(fBgndFrame, new TGLayoutHints(kLHintsTop | kLHintsLeft, 2, 2, 2, 2));
101 hf->AddFrame(new TGLabel(hf, "Backgrnd"), new TGLayoutHints(kLHintsTop |
102 kLHintsLeft, 2, 2, 2, 2));
103 f->AddFrame(hf, new TGLayoutHints(kLHintsCenterX | kLHintsTop, 2, 2, 2, 2));
105}
106
107////////////////////////////////////////////////////////////////////////////////
108/// Perform actions when selected frame was changed.
109
111{
112 fSelected = frame;
113
114 if (!frame) {
115 return;
116 }
117
118 UInt_t opt = fSelected->GetOptions();
119
124
125 if (fBgndFrame) {
128 fBgndFrame->Connect("ColorSelected(Pixel_t)", "TGuiBldEditor", fEditor, "UpdateBackground(Pixel_t)");
129 }
130}
131
132////////////////////////////////////////////////////////////////////////////////
133////////////////////////////////////////////////////////////////////////////////
134/// Constructor.
135
137{
140 fSelected = 0;
142
143 fNameFrame = new TGuiBldNameFrame(this, this);
145
146 TGHSplitter *splitter = new TGHSplitter(this,100,5);
148 splitter->SetFrame(fNameFrame, kTRUE);
149
150 //------------frame with layout switch
151 hf = new TGHorizontalFrame(this);
152 hf->AddFrame(new TGLabel(hf, "Composite Frame Layout"),
153 new TGLayoutHints(kLHintsLeft | kLHintsTop, 2, 2, 2, 2));
154 hf->AddFrame(new TGHorizontal3DLine(hf), new TGLayoutHints(kLHintsTop |
155 kLHintsExpandX, 2, 2, 2, 2));
157
158 vf = new TGVerticalFrame(this);
159 fLayoutLabel = new TGLabel(vf, "Automatic Layout Disabled");
161 2, 2, 2, 2));
162
163 fLayoutButton = new TGTextButton(vf," Enable layout ");
166 2, 2, 2, 2));
167
169
171 kLHintsExpandX, 2, 2, 2, 2));
172
173 fLayoutButton->Connect("Clicked()", "TGuiBldEditor", this, "SwitchLayout()");
174 fLayoutButton->SetToolTipText("If layout is on, all the frame \nelements get layouted automatically.");
175
176 //-----------------------------
177
178 fTab = new TGTab(this, 80, 40);
180 fTablay = fTab->AddTab("Layout");
181 TGCompositeFrame *tabcont = fTab->AddTab("Style");
182 fLayoutId = 1; // 2nd tab
183 fTab->Connect("Selected(Int_t)", "TGuiBldEditor", this, "TabSelected(Int_t)");
184
187 2, 2, 2, 2));
188
191 2, 2, 2, 2));
192
193 //----------------Position X,Y boxes---------------
194
195 fPositionFrame = new TGGroupFrame(fTablay, "Position");
196
198
199 vf = new TGVerticalFrame(hf);
200 vf->SetLayoutManager(new TGTableLayout(vf, 2, 2));
201
202 vf->AddFrame(new TGLabel(vf, " X "), new TGTableLayoutHints(0, 1, 0, 1,
203 kLHintsCenterY | kLHintsLeft, 2, 2, 2, 2));
204 fXpos = new TGNumberEntry(vf, 0.0, 4, -1, (TGNumberFormat::EStyle)5);
205 vf->AddFrame(fXpos, new TGTableLayoutHints(1, 2, 0, 1, kLHintsCenterY |
206 kLHintsLeft, 2, 2, 2, 2));
207
208 vf->AddFrame(new TGLabel(vf, " Y "), new TGTableLayoutHints(0, 1, 1, 2,
209 kLHintsCenterY | kLHintsLeft, 2, 2, 2, 2));
210 fYpos = new TGNumberEntry(vf, 0.0, 4, -1, (TGNumberFormat::EStyle)5);
211 vf->AddFrame(fYpos, new TGTableLayoutHints(1, 2, 1, 2, kLHintsCenterY |
212 kLHintsLeft, 2, 2, 2, 2));
213
215
216 vf = new TGVerticalFrame(hf);
217 vf->SetLayoutManager(new TGTableLayout(vf, 3, 3));
218
223 fTextButton6366->Resize(20,20);
224 vf->AddFrame(fTextButton6366, new TGTableLayoutHints(1, 2, 0, 1,
225 kLHintsLeft | kLHintsTop, 1, 1, 1, 1));
226
231 fTextButton6367->Resize(20,20);
232 vf->AddFrame(fTextButton6367, new TGTableLayoutHints(1, 2, 2, 3,
233 kLHintsLeft | kLHintsTop, 1, 1, 1, 1));
234
239 fTextButton6364->Resize(20,20);
240 vf->AddFrame(fTextButton6364, new TGTableLayoutHints(0, 1, 1, 2,
241 kLHintsLeft | kLHintsTop, 1, 1, 1, 1));
242
247 fTextButton6365->Resize(20,20);
248 vf->AddFrame(fTextButton6365, new TGTableLayoutHints(2, 3, 1, 2,
249 kLHintsLeft | kLHintsTop, 1, 1, 1, 1));
250
252
254
256
257 fXpos->Connect("ValueSet(Long_t)", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
258 fYpos->Connect("ValueSet(Long_t)", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
259
260 fTextButton6364->Connect("Clicked()", "TGNumberEntry", fXpos, "IncreaseNumber(TGNumberFormat::EStepSize=0,-1)");
261 fTextButton6364->Connect("Clicked()", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
262 fTextButton6365->Connect("Clicked()", "TGNumberEntry", fXpos, "IncreaseNumber()");
263 fTextButton6365->Connect("Clicked()", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
264 fTextButton6366->Connect("Clicked()", "TGNumberEntry", fYpos, "IncreaseNumber(TGNumberFormat::EStepSize=0,-1)");
265 fTextButton6366->Connect("Clicked()", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
266 fTextButton6367->Connect("Clicked()", "TGNumberEntry", fYpos, "IncreaseNumber()");
267 fTextButton6367->Connect("Clicked()", "TGuiBldHintsEditor", fHintsFrame, "SetPosition()");
268
269 //----------------------------------------------------
270
272 tabcont->AddFrame(fBorderFrame, new TGLayoutHints(kLHintsExpandX, 2, 2, 2, 2));
273
275 SetWindowName("Frame Property Editor");
277
279}
280
281////////////////////////////////////////////////////////////////////////////////
282/// Destructor.
283
287
288////////////////////////////////////////////////////////////////////////////////
289/// Remove a frame.
290
292{
293 fNameFrame->RemoveFrame(frame);
294}
295
296////////////////////////////////////////////////////////////////////////////////
297/// Handle selected.
298
300{
301 if (id == fLayoutId) {
302 //printf("%d\n", fSelected);
303 }
304}
305
306////////////////////////////////////////////////////////////////////////////////
307/// Hide editor.
308
310{
311 UnmapWindow();
312}
313
314////////////////////////////////////////////////////////////////////////////////
315/// Change selected frame.
316
318{
320
321 if (!frame) {
323 //fTab->SetTab(0);
324 if (tab) {
325 tab->SetEnabled(kFALSE);
327 }
328 return;
329 }
330
331 fSelected = frame;
332 TGWindow *parent = (TGWindow*)fSelected->GetParent();
333
335
337 enable_layout |= parent && !(parent->GetEditDisabled() & kEditDisableLayout);
339 enable_layout |= parent && (parent->InheritsFrom(TGCompositeFrame::Class()) &&
340 !((TGCompositeFrame*)parent)->IsLayoutBroken());
343
344 if (enable_layout) {
346
347 if (tab) {
348 tab->SetEnabled(kTRUE);
350 }
351 } else {
353
354 if (tab) {
355 fTab->SetTab(0);
356 tab->SetEnabled(kFALSE);
358 }
359 }
360
361 if ((frame->InheritsFrom(TGHorizontalFrame::Class())) ||
363 (frame->InheritsFrom(TGGroupFrame::Class())) ) {
364
366 if (fSelected->IsLayoutBroken()) {
367 fLayoutButton->SetText(" Enable layout ");
368 fLayoutLabel->SetText("Automatic layout disabled");
369 if (fTablay) {
373 }
374 } else {
375 fLayoutButton->SetText(" Disable layout ");
376 fLayoutLabel->SetText("Automatic layout enabled");
377 if (fTablay) {
381 }
382 }
383 }
384 else {
386 TGFrame *parentf = (TGFrame*)frame->GetParent();
387 if (parentf->IsLayoutBroken()) {
388 fLayoutButton->SetText(" Enable layout ");
389 fLayoutLabel->SetText("Automatic layout disabled");
393 } else {
394 fLayoutButton->SetText(" Disable layout ");
395 fLayoutLabel->SetText("Automatic layout enabled");
399 }
400 }
401
402 fYpos->SetIntNumber(frame->GetY());
403 fXpos->SetIntNumber(frame->GetX());
404
407
408 Emit("ChangeSelected(TGFrame*)", (Longptr_t)fSelected);
409
410 MapRaised();
411}
412
413////////////////////////////////////////////////////////////////////////////////
414/// Update selected frame.
415
417{
418 Emit("UpdateSelected(TGFrame*)", (Longptr_t)frame);
419}
420
421////////////////////////////////////////////////////////////////////////////////
422/// Update border of selected frame.
423
425{
426 if (!fSelected) return;
427
428 UInt_t opt = fSelected->GetOptions();
429
430 switch (b) {
431 case 1:
432 opt &= ~kRaisedFrame;
433 opt |= kSunkenFrame;
434 break;
435 case 2:
436 opt &= ~kSunkenFrame;
437 opt &= ~kRaisedFrame;
438 break;
439 case 3:
440 opt &= ~kSunkenFrame;
441 opt |= kRaisedFrame;
442 break;
443 case 4:
444 opt |= kDoubleBorder;
445 break;
446 case 5:
447 opt &= ~kDoubleBorder;
448 break;
449 default:
450 return;
451 }
454}
455
456////////////////////////////////////////////////////////////////////////////////
457/// Update background.
458
466
467////////////////////////////////////////////////////////////////////////////////
468/// Update foreground.
469
477
478////////////////////////////////////////////////////////////////////////////////
479/// Reset the editor.
480
482{
483 fSelected = 0;
484 fNameFrame->Reset();
486 if (tab) {
487 fTab->SetTab(0);
488 tab->SetEnabled(kFALSE);
489 }
490}
491
492////////////////////////////////////////////////////////////////////////////////
493/// Popup dialog to set layout of edited frame off. If layout is on, all
494/// the elements in the frame get laid out automatically.
495
497{
498 if (!fSelected) {
499 fLayoutButton->SetText(" Enable layout ");
501 fLayoutLabel->SetText("Automatic layout disabled");
502 if (fTablay) {
506 }
507 return;
508 }
509
511 TGFrame *frame = fSelected;
513 if (cf == 0)
514 return;
515 if (frame->IsLayoutBroken()) {
517 builder->GetManager()->SetEditable(kFALSE);
518 new TGMsgBox(gClient->GetDefaultRoot(), builder, "Layout change",
519 "Enabling layout will automatically align and resize all the icons. \n Do you really want to layout them?",
521
522 cf->SetEditable(kTRUE);
523 // hack against selecting the message box itself
524 builder->GetManager()->SelectFrame(frame);
525 frame->SetEditable(kTRUE);
526
527 if (retval == kMBOk) {
528 frame->SetLayoutBroken(kFALSE);
529 frame->Layout();
530 fLayoutButton->SetText(" Disable layout ");
531 fLayoutLabel->SetText("Automatic layout enabled");
532 if (fTablay) {
537 }
538 }
539 } else {
540 //set layout off - without dialog, because nothing "bad" can happen
541 frame->SetLayoutBroken(kTRUE);
542 fLayoutButton->SetText(" Enable layout ");
543 fLayoutLabel->SetText("Automatic layout disabled");
544 if (fTablay) {
548 }
549 }
550 fClient->NeedRedraw(frame, kTRUE);
552}
553
554
555
@ kRaisedFrame
Definition GuiTypes.h:384
@ kSunkenFrame
Definition GuiTypes.h:383
@ kDoubleBorder
Definition GuiTypes.h:385
@ kFixedSize
Definition GuiTypes.h:390
ULong_t Pixel_t
Pixel value.
Definition GuiTypes.h:40
#define b(i)
Definition RSha256.hxx:100
#define f(i)
Definition RSha256.hxx:104
long Longptr_t
Integer large enough to hold a pointer (platform-dependent)
Definition RtypesCore.h:89
constexpr Bool_t kFALSE
Definition RtypesCore.h:108
constexpr Bool_t kTRUE
Definition RtypesCore.h:107
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
@ kButtonDown
Definition TGButton.h:54
#define gClient
Definition TGClient.h:157
@ kDeepCleanup
Definition TGFrame.h:42
@ kLHintsExpandY
Definition TGLayout.h:31
@ kLHintsLeft
Definition TGLayout.h:24
@ kLHintsCenterY
Definition TGLayout.h:28
@ kLHintsNormal
Definition TGLayout.h:32
@ kLHintsCenterX
Definition TGLayout.h:25
@ kLHintsTop
Definition TGLayout.h:27
@ kLHintsExpandX
Definition TGLayout.h:30
@ kMBCancel
Definition TGMsgBox.h:37
@ kMBOk
Definition TGMsgBox.h:33
@ kMBIconExclamation
Definition TGMsgBox.h:24
winID h TVirtualViewer3D TVirtualGLPainter p
Organizes TGButton widgets in a group.
virtual void SetRadioButtonExclusive(Bool_t flag=kTRUE)
If enable is kTRUE, this button group will treat radio buttons as mutually exclusive,...
virtual void SetButton(Int_t id, Bool_t down=kTRUE)
Sets the button with id to be on/down, and if this is an exclusive group, all other button in the gro...
static const TGGC & GetDefaultGC()
Return default graphics context.
Definition TGButton.cxx:464
virtual void SetToolTipText(const char *text, Long_t delayms=400)
Set tool tip text associated with this button.
Definition TGButton.cxx:439
virtual void SetEnabled(Bool_t e=kTRUE)
Set enabled or disabled state of button.
Definition TGButton.cxx:453
Selects different options.
Definition TGButton.h:264
void NeedRedraw(TGWindow *w, Bool_t force=kFALSE)
Set redraw flags.
Definition TGClient.cxx:380
Like a checkbutton but instead of the check mark there is color area with a little down arrow.
void SetColor(Pixel_t color, Bool_t emit=kTRUE)
Set color.
The base class for composite widgets (menu bars, list boxes, etc.).
Definition TGFrame.h:289
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=nullptr)
Add frame to the composite frame using the specified layout hints.
Definition TGFrame.cxx:1109
void MapSubwindows() override
Map all sub windows that are part of the composite frame.
Definition TGFrame.cxx:1156
virtual void ShowFrame(TGFrame *f)
Show sub frame.
Definition TGFrame.cxx:1196
void SetCleanup(Int_t mode=kLocalCleanup) override
Turn on automatic cleanup of child frames in dtor.
Definition TGFrame.cxx:1064
Bool_t IsLayoutBroken() const override
Definition TGFrame.h:359
void SetEditDisabled(UInt_t on=1) override
Set edit disable flag for this frame and subframes.
Definition TGFrame.cxx:1014
static TClass * Class()
virtual void HideFrame(TGFrame *f)
Hide sub frame.
Definition TGFrame.cxx:1182
A subclasses of TGWindow, and is used as base class for some simple widgets (buttons,...
Definition TGFrame.h:80
virtual void ChangeOptions(UInt_t options)
Change frame options. Options is an OR of the EFrameTypes.
Definition TGFrame.cxx:313
virtual Bool_t IsLayoutBroken() const
Definition TGFrame.h:218
void Resize(UInt_t w=0, UInt_t h=0) override
Resize the frame.
Definition TGFrame.cxx:597
virtual void SetForegroundColor(Pixel_t)
Definition TGFrame.h:198
void SetBackgroundColor(Pixel_t back) override
Set background color (override from TGWindow base class).
Definition TGFrame.cxx:304
virtual void SetLayoutBroken(Bool_t=kTRUE)
Definition TGFrame.h:217
static Pixel_t GetDefaultFrameBackground()
Get default frame background.
Definition TGFrame.cxx:675
Int_t GetX() const
Definition TGFrame.h:233
virtual UInt_t GetOptions() const
Definition TGFrame.h:199
void UnmapWindow() override
unmap window
Definition TGFrame.h:208
UInt_t GetHeight() const
Definition TGFrame.h:227
Int_t GetY() const
Definition TGFrame.h:234
virtual void Layout()
Definition TGFrame.h:201
virtual Pixel_t GetBackground() const
Definition TGFrame.h:194
UInt_t GetWidth() const
Definition TGFrame.h:226
void SetEditable(Bool_t) override
Definition TGFrame.h:216
void MapRaised() override
map raised
Definition TGFrame.h:207
A composite frame with a border and a title.
Definition TGFrame.h:524
static TClass * Class()
A horizontal 3D line is a line that typically separates a toolbar from the menubar.
Definition TG3DLine.h:18
A composite frame that layout their children in horizontal way.
Definition TGFrame.h:387
static TClass * Class()
This class handles GUI labels.
Definition TGLabel.h:24
virtual void SetText(TGString *newText)
Set new text in label.
Definition TGLabel.cxx:179
This class describes layout hints used by the layout classes.
Definition TGLayout.h:50
TGNumberEntry is a number entry input widget with up/down buttons.
virtual void SetIntNumber(Long_t val, Bool_t emit=kTRUE)
TGClient * fClient
Connection to display server.
Definition TGObject.h:25
Selects different options.
Definition TGButton.h:321
Service classes of the tab widget.
Definition TGTab.h:117
A tab widget contains a set of composite frames each with a little tab with a name (like a set of fol...
Definition TGTab.h:46
TGTabElement * GetTabTab(Int_t tabIndex) const
Return the tab element of tab with index tabIndex.
Definition TGTab.cxx:660
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:555
virtual TGCompositeFrame * AddTab(TGString *text)
Add a tab to the tab widget.
Definition TGTab.cxx:373
This class describes layout hints used by the TGTableLayout class.
A layout manager, which places child frames in a table arranged in rows and columns,...
Yield an action as soon as it is clicked.
Definition TGButton.h:142
static FontStruct_t GetDefaultFontStruct()
Return default font structure.
Definition TGButton.cxx:863
virtual void SetText(TGHotString *new_label)
Set new button text.
Definition TGButton.cxx:638
A composite frame that layout their children in vertical way.
Definition TGFrame.h:376
TGVerticalFrame(const TGWindow *p=nullptr, UInt_t w=1, UInt_t h=1, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Definition TGFrame.h:378
static TClass * Class()
ROOT GUI Window base class.
Definition TGWindow.h:23
virtual UInt_t GetEditDisabled() const
Definition TGWindow.h:112
virtual void SetEditDisabled(UInt_t on=kEditDisable)
Definition TGWindow.h:113
@ kEditDisableLayout
window layout cannot be edited
Definition TGWindow.h:60
virtual void SetWindowName(const char *name=nullptr)
Set window name.
Definition TGWindow.cxx:127
const TGWindow * GetParent() const
Definition TGWindow.h:83
UInt_t fEditDisabled
flags used for "guibuilding"
Definition TGWindow.h:32
TGButtonGroup * fBtnGroup
void ChangeSelected(TGFrame *)
Perform actions when selected frame was changed.
TGuiBldEditor * fEditor
TGuiBldBorderFrame(const TGWindow *p, TGuiBldEditor *editor)
Constructor.
~TGuiBldBorderFrame() override
TGColorSelect * fBgndFrame
void SelectFrame(TGFrame *frame, Bool_t add=kFALSE)
Grab/Select frame.
void SetEditable(Bool_t on=kTRUE) override
Grab server.
The property editor.
void ChangeSelected(TGFrame *)
Change selected frame.
TGuiBldHintsEditor * fHintsFrame
TGuiBldNameFrame * fNameFrame
void UpdateSelected(TGFrame *=nullptr)
Update selected frame.
void Reset()
Reset the editor.
void RemoveFrame(TGFrame *) override
Remove a frame.
TGTextButton * fLayoutButton
TGFrame * fSelected
TGNumberEntry * fXpos
TGuiBldGeometryFrame * fGeomFrame
TGLabel * fLayoutLabel
void TabSelected(Int_t id)
Handle selected.
TGNumberEntry * fYpos
TGuiBldEditor(const TGWindow *p=nullptr)
Constructor.
void SwitchLayout()
Popup dialog to set layout of edited frame off.
void Hide()
Hide editor.
void UpdateForeground(Pixel_t col)
Update foreground.
TGCompositeFrame * fTablay
TGGroupFrame * fPositionFrame
void UpdateBorder(Int_t)
Update border of selected frame.
void UpdateBackground(Pixel_t col)
Update background.
~TGuiBldEditor() override
Destructor.
TGuiBldBorderFrame * fBorderFrame
void ChangeSelected(TGFrame *frame)
Update number entries when new frame selected.
Editor of widget's layout hints used by the ROOT GUI builder.
void ChangeSelected(TGFrame *)
Change selected.
void Reset()
Reset name frame.
void RemoveFrame(TGFrame *frame) override
Remove a frame.
TGCompositeFrame * GetMdi(TGFrame *frame)
Find the parent mdi frame.
void ChangeSelected(TGFrame *frame)
Change selected frame.
static TGuiBuilder * Instance()
return an instance of TGuiBuilder object
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
Definition TObject.cxx:543
void Emit(const char *signal, const T &arg)
Activate signal with single parameter.
Definition TQObject.h:164
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:865
Bool_t Disconnect(const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
Disconnects signal of this object from slot of receiver.
TGuiBldDragManager * GetManager() const