ROOT  6.06/09
Reference Guide
TGeoMediumEditor.cxx
Go to the documentation of this file.
1 // @(#):$Id: c816a00a89512fcc6cd4a75fb1343c76ebaa3c24 $
2 // Author: M.Gheata
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2002, 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 // TGeoMediumEditor - Editor class for TGeo tracking media
15 //
16 //______________________________________________________________________________
17 
18 #include "TGeoMediumEditor.h"
19 #include "TGeoTabManager.h"
20 #include "TGeoManager.h"
21 #include "TGeoMedium.h"
22 #include "TGeoMaterial.h"
23 #include "TPad.h"
24 #include "TGTab.h"
25 #include "TGComboBox.h"
26 #include "TGButton.h"
27 #include "TGTextEntry.h"
28 #include "TGNumberEntry.h"
29 #include "TGLabel.h"
30 #include "TG3DLine.h"
31 
33 
34 enum ETGeoMediumWid {
35  kMED_NAME, kMED_ID, kMED_MATSEL,
36  kMED_SENS, kMED_FLDOPT, kMED_EDIT_MAT,
37  kMED_FIELDM, kMED_TMAX, kMED_STEMAX,
38  kMED_DEEMAX, kMED_EPSIL, kMED_STMIN,
39  kMED_APPLY, kMED_CANCEL, kMED_UNDO
40 };
41 
42 ////////////////////////////////////////////////////////////////////////////////
43 /// Constructor for medium editor
44 
46  Int_t height, UInt_t options, Pixel_t back)
47  : TGeoGedFrame(p, width, height, options | kVerticalFrame, back)
48 {
49  fMedium = 0;
52  Pixel_t color;
53  TGLabel *label;
54 
55  // TextEntry for medium name
56  MakeTitle("Name");
57  fMedName = new TGTextEntry(this, "", kMED_NAME);
59  fMedName->SetToolTipText("Enter the medium name");
60  fMedName->Associate(this);
62 
63  TGTextEntry *nef;
64 
65 // Composite frame for medium ID and sensitivity
67  f1->AddFrame(new TGLabel(f1, "ID"), new TGLayoutHints(kLHintsLeft, 4, 1, 6, 0));
68  fMedId = new TGNumberEntry(f1, 0., 1, kMED_ID);
70  nef->SetToolTipText("Enter the medium ID");
71  fMedId->Associate(this);
72  f1->AddFrame(fMedId, new TGLayoutHints(kLHintsLeft | kLHintsExpandX, 2, 2, 4, 4));
73  fMedSensitive = new TGCheckButton(f1, "&Sens", kMED_SENS);
74  fMedSensitive->Associate(this);
75  f1->AddFrame(fMedSensitive, new TGLayoutHints(kLHintsLeft, 2, 2, 4, 4));
76  AddFrame(f1, new TGLayoutHints(kLHintsLeft, 3, 3, 2, 2));
77 
78  // Current material
79  f1 = new TGCompositeFrame(this, 145, 10, kHorizontalFrame | kFixedWidth | kOwnBackground);
80  f1->AddFrame(label = new TGLabel(f1, "Current material"), new TGLayoutHints(kLHintsLeft, 1, 1, 0, 0));
81  f1->AddFrame(new TGHorizontal3DLine(f1), new TGLayoutHints(kLHintsExpandX, 5, 5, 7, 7));
82  gClient->GetColorByName("#ff0000", color);
83  label->SetTextColor(color);
84  AddFrame(f1, new TGLayoutHints(kLHintsTop, 0, 0, 2, 0));
85  f1 = new TGCompositeFrame(this, 155, 30, kHorizontalFrame);
87  fLSelMaterial = new TGLabel(f1, "Select material");
88  gClient->GetColorByName("#0000ff", color);
92  fBSelMaterial = new TGPictureButton(f1, fClient->GetPicture("rootdb_t.xpm"), kMED_MATSEL);
93  fBSelMaterial->SetToolTipText("Replace with one of the existing materials");
94  fBSelMaterial->Associate(this);
95  f1->AddFrame(fBSelMaterial, new TGLayoutHints(kLHintsLeft, 1, 1, 2, 2));
96  fEditMaterial = new TGTextButton(f1, "Edit");
97  f1->AddFrame(fEditMaterial, new TGLayoutHints(kLHintsLeft, 1, 1, 2, 2));
98  fEditMaterial->SetToolTipText("Edit selected material");
99  fEditMaterial->Associate(this);
100  AddFrame(f1, new TGLayoutHints(kLHintsLeft | kLHintsExpandX, 2, 2, 0, 0));
101 
102 // Combo box for magnetic field option
104  f1->AddFrame(label = new TGLabel(f1, "Mag. field option"), new TGLayoutHints(kLHintsLeft, 1, 1, 0, 0));
105  f1->AddFrame(new TGHorizontal3DLine(f1), new TGLayoutHints(kLHintsExpandX, 5, 5, 7, 7));
106  gClient->GetColorByName("#ff0000", color);
107  label->SetTextColor(color);
108  AddFrame(f1, new TGLayoutHints(kLHintsTop, 0, 0, 2, 0));
109  fMagfldOption = new TGComboBox(this, kMED_FLDOPT);
111  AddFrame(fMagfldOption, new TGLayoutHints(kLHintsLeft, 3, 1, 2, 2));
112 
113 
114 // Number entries for other settings
115  f1 = new TGCompositeFrame(this, 145, 10, kHorizontalFrame | kFixedWidth | kOwnBackground);
116  f1->AddFrame(label = new TGLabel(f1, "Medium cuts"), new TGLayoutHints(kLHintsLeft, 1, 1, 0, 0));
117  f1->AddFrame(new TGHorizontal3DLine(f1), new TGLayoutHints(kLHintsExpandX, 5, 5, 7, 7));
118  gClient->GetColorByName("#ff0000", color);
119  label->SetTextColor(color);
120  AddFrame(f1, new TGLayoutHints(kLHintsTop, 0, 0, 2, 0));
122 
123  // Number entry for fieldm
124  f1 = new TGCompositeFrame(compxyz, 118, 10, kHorizontalFrame |
126  f1->AddFrame(new TGLabel(f1, "FIELDM"), new TGLayoutHints(kLHintsLeft, 1, 1, 4, 0));
127  fMedFieldm = new TGNumberEntry(f1, 0., 5, kMED_FIELDM);
129  nef->SetToolTipText("Maximum magnetic field [kilogauss]");
130  fMedFieldm->Associate(this);
132  f1->AddFrame(fMedFieldm, new TGLayoutHints(kLHintsRight | kFixedWidth , 2, 2, 2, 2));
133  compxyz->AddFrame(f1, new TGLayoutHints(kLHintsLeft | kLHintsExpandX , 2, 2, 1, 1));
134 
135  // Number entry for tmaxfd
136  TGCompositeFrame *f2 = new TGCompositeFrame(compxyz, 118, 10, kHorizontalFrame |
138  f2->AddFrame(new TGLabel(f2, "TMAXFD"), new TGLayoutHints(kLHintsLeft, 1, 1, 4, 0));
139  fMedTmaxfd = new TGNumberEntry(f2, 0., 5, kMED_TMAX);
141  nef->SetToolTipText("Maximum angle per step due to field [deg]");
142  fMedTmaxfd->Associate(this);
144  f2->AddFrame(fMedTmaxfd, new TGLayoutHints(kLHintsRight | kFixedWidth , 2, 2, 2, 2));
145  compxyz->AddFrame(f2, new TGLayoutHints(kLHintsLeft | kLHintsExpandX , 2, 2, 1, 1));
146 
147  // Number entry for stemax
148  TGCompositeFrame *f3 = new TGCompositeFrame(compxyz, 118, 10, kHorizontalFrame |
150  f3->AddFrame(new TGLabel(f3, "STEMAX"), new TGLayoutHints(kLHintsLeft, 1, 1, 4, 0));
151  fMedStemax = new TGNumberEntry(f3, 0., 5, kMED_STEMAX);
153  nef->SetToolTipText("Maximum step allowed [cm]");
154  fMedStemax->Associate(this);
156  f3->AddFrame(fMedStemax, new TGLayoutHints(kLHintsRight | kFixedWidth , 2, 2, 2, 2));
157  compxyz->AddFrame(f3, new TGLayoutHints(kLHintsLeft | kLHintsExpandX , 2, 2, 1, 1));
158 
159  // Number entry for deemax
160  TGCompositeFrame *f4 = new TGCompositeFrame(compxyz, 118, 10, kHorizontalFrame |
162  f4->AddFrame(new TGLabel(f4, "DEEMAX"), new TGLayoutHints(kLHintsLeft, 1, 1, 4, 0));
163  fMedDeemax = new TGNumberEntry(f4, 0., 5, kMED_DEEMAX);
165  nef->SetToolTipText("Maximum fraction of energy lost in a step");
166  fMedDeemax->Associate(this);
168  f4->AddFrame(fMedDeemax, new TGLayoutHints(kLHintsRight | kFixedWidth , 2, 2, 2, 2));
169  compxyz->AddFrame(f4, new TGLayoutHints(kLHintsLeft | kLHintsExpandX , 2, 2, 1, 1));
170 
171  // Number entry for epsil
172  TGCompositeFrame *f5 = new TGCompositeFrame(compxyz, 118, 10, kHorizontalFrame |
174  f5->AddFrame(new TGLabel(f5, "EPSIL"), new TGLayoutHints(kLHintsLeft, 1, 1, 4, 0));
175  fMedEpsil = new TGNumberEntry(f5, 0., 5, kMED_EPSIL);
177  nef->SetToolTipText("Tracking precision [cm]");
178  fMedEpsil->Associate(this);
180  f5->AddFrame(fMedEpsil, new TGLayoutHints(kLHintsRight | kFixedWidth , 2, 2, 2, 2));
181  compxyz->AddFrame(f5, new TGLayoutHints(kLHintsLeft | kLHintsExpandX , 2, 2, 1, 1));
182 
183  // Number entry for stmin
184  TGCompositeFrame *f6 = new TGCompositeFrame(compxyz, 118, 10, kHorizontalFrame |
186  f6->AddFrame(new TGLabel(f6, "STMIN"), new TGLayoutHints(kLHintsLeft, 1, 1, 4, 0));
187  fMedStmin = new TGNumberEntry(f6, 0., 5, kMED_STMIN);
189  nef->SetToolTipText("Minimum step due to continuous processes [cm]");
190  fMedStmin->Associate(this);
192  f6->AddFrame(fMedStmin, new TGLayoutHints(kLHintsRight | kFixedWidth , 2, 2, 2, 2));
193  compxyz->AddFrame(f6, new TGLayoutHints(kLHintsLeft | kLHintsExpandX , 2, 2, 1, 1));
194 
195  compxyz->Resize(160,50);
196  AddFrame(compxyz, new TGLayoutHints(kLHintsLeft, 2, 2, 2, 2));
197 
198  // Buttons
200  fApply = new TGTextButton(f23, "&Apply");
201  f23->AddFrame(fApply, new TGLayoutHints(kLHintsLeft, 2, 2, 4, 4));
202  fApply->Associate(this);
203  fUndo = new TGTextButton(f23, " &Undo ");
204  f23->AddFrame(fUndo, new TGLayoutHints(kLHintsRight , 2, 2, 4, 4));
205  fUndo->Associate(this);
206  AddFrame(f23, new TGLayoutHints(kLHintsLeft, 2, 2, 4, 4));
207 }
208 
209 ////////////////////////////////////////////////////////////////////////////////
210 /// Destructor
211 
213 {
214  TGFrameElement *el;
215  TIter next(GetList());
216  while ((el = (TGFrameElement *)next())) {
217  if (el->fFrame->IsA() == TGCompositeFrame::Class() ||
218  el->fFrame->IsA() == TGHorizontalFrame::Class() ||
219  el->fFrame->IsA() == TGVerticalFrame::Class())
221  }
222  Cleanup();
223 }
224 
225 ////////////////////////////////////////////////////////////////////////////////
226 /// Connect signals to slots.
227 
229 {
230  fApply->Connect("Clicked()", "TGeoMediumEditor", this, "DoApply()");
231  fUndo->Connect("Clicked()", "TGeoMediumEditor", this, "DoUndo()");
232  fMedName->Connect("TextChanged(const char *)", "TGeoMediumEditor", this, "DoMedName()");
233  fBSelMaterial->Connect("Clicked()", "TGeoMediumEditor", this, "DoSelectMaterial()");
234  fEditMaterial->Connect("Clicked()", "TGeoMediumEditor", this, "DoEditMaterial()");
235  fMedId->GetNumberEntry()->Connect("TextChanged(const char *)", "TGeoMediumEditor", this, "DoMedId()");
236  fMedTmaxfd->GetNumberEntry()->Connect("TextChanged(const char *)", "TGeoMediumEditor", this, "DoTmaxfd()");
237  fMedStemax->GetNumberEntry()->Connect("TextChanged(const char *)", "TGeoMediumEditor", this, "DoStemax()");
238  fMedDeemax->GetNumberEntry()->Connect("TextChanged(const char *)", "TGeoMediumEditor", this, "DoDeemax()");
239  fMedEpsil->GetNumberEntry()->Connect("TextChanged(const char *)", "TGeoMediumEditor", this, "DoEpsil()");
240  fMedStmin->GetNumberEntry()->Connect("TextChanged(const char *)", "TGeoMediumEditor", this, "DoStmin()");
241  fMedSensitive->Connect("Clicked()", "TGeoMediumEditor", this, "DoToggleSensitive()");
242  fMagfldOption->Connect("Selected(Int_t)", "TGeoMediumEditor", this, "DoMagfldSelect(Int_t)");
243  fInit = kFALSE;
244 }
245 
246 
247 ////////////////////////////////////////////////////////////////////////////////
248 /// Connect to the selected object.
249 
251 {
252  if (obj == 0 || !(obj->IsA()==TGeoMedium::Class())) {
253  SetActive(kFALSE);
254  return;
255  }
256  fMedium = (TGeoMedium*)obj;
257  const char *sname = fMedium->GetName();
258  if (!strcmp(sname, fMedium->ClassName())) fMedName->SetText("");
259  else fMedName->SetText(sname);
260 
262  Int_t isvol = (Int_t)fMedium->GetParam(0);
264 
267 
269  fMagfldOption->AddEntry("No field", 0);
270  fMagfldOption->AddEntry("User decision", 1);
271  fMagfldOption->AddEntry("Runge-Kutta", 2);
272  fMagfldOption->AddEntry("Helix", 3);
273  fMagfldOption->AddEntry("Helix3", 4);
274  fMagfldOption->AddEntry("Unknown option", 5);
275  }
276  Int_t ifld = (Int_t)fMedium->GetParam(1);
277  switch (ifld) {
278  case 0:
279  fMagfldOption->Select(0);
280  break;
281  case -1:
282  fMagfldOption->Select(1);
283  break;
284  case 1:
285  fMagfldOption->Select(2);
286  break;
287  case 2:
288  fMagfldOption->Select(3);
289  break;
290  case 3:
291  fMagfldOption->Select(4);
292  break;
293  default:
294  fMagfldOption->Select(5);
295  break;
296  }
297 
304 
307 
308 
310  SetActive();
311 }
312 
313 ////////////////////////////////////////////////////////////////////////////////
314 /// Edit selected material.
315 
317 {
319 }
320 
321 ////////////////////////////////////////////////////////////////////////////////
322 /// Slot for medium name.
323 
325 {
326  const char *name = fMedName->GetText();
327  if (!name[0] || !strcmp(name, fMedium->GetName())) return;
328  fMedium->SetName(name);
329 }
330 
331 ////////////////////////////////////////////////////////////////////////////////
332 /// Slot for medium id.
333 
335 {
336 }
337 
338 ////////////////////////////////////////////////////////////////////////////////
339 /// Select the material component.
340 
342 {
343  TGeoMaterial *material = fSelectedMaterial;
344  new TGeoMaterialDialog(fBSelMaterial, gClient->GetRoot(), 200,300);
346  if (fSelectedMaterial) fLSelMaterial->SetText(fSelectedMaterial->GetName());
347  else fSelectedMaterial = material;
348 }
349 
350 ////////////////////////////////////////////////////////////////////////////////
351 /// Slot for sensitivity.
352 
354 {
355  fIsModified = kTRUE;
356 }
357 
358 ////////////////////////////////////////////////////////////////////////////////
359 /// Slot for mag. field.
360 
362 {
363  fIsModified = kTRUE;
364 }
365 
366 ////////////////////////////////////////////////////////////////////////////////
367 /// Slot for max field.
368 
370 {
371  fIsModified = kTRUE;
372 }
373 
374 ////////////////////////////////////////////////////////////////////////////////
375 /// Slot for tmaxfd.
376 
378 {
379  fIsModified = kTRUE;
380 }
381 
382 ////////////////////////////////////////////////////////////////////////////////
383 /// Slot for the max allowed step.
384 
386 {
387  fIsModified = kTRUE;
388 }
389 
390 ////////////////////////////////////////////////////////////////////////////////
391 /// Slot for the maximum allowed dedx.
392 
394 {
395  fIsModified = kTRUE;
396 }
397 
398 ////////////////////////////////////////////////////////////////////////////////
399 /// Slot for tracking precision.
400 
402 {
403  fIsModified = kTRUE;
404 }
405 
406 ////////////////////////////////////////////////////////////////////////////////
407 /// Slot for min. step.
408 
410 {
411  fIsModified = kTRUE;
412 }
413 
414 ////////////////////////////////////////////////////////////////////////////////
415 /// Slot for applying modifications.
416 
418 {
419  if (!fIsModified) return;
420  Double_t isvol = (fMedSensitive->IsOn())?1:0;
421  Double_t ifield = fMagfldOption->GetSelected();
422  if (ifield>0) {
423  ifield -= 1.;
424  if (ifield < 1.) ifield -= 1.;
425  }
426  Double_t fieldm = fMedFieldm->GetNumber();
427  Double_t tmaxfd = fMedTmaxfd->GetNumber();
428  Double_t stemax = fMedStemax->GetNumber();
429  Double_t deemax = fMedDeemax->GetNumber();
430  Double_t epsil = fMedEpsil->GetNumber();
431  Double_t stmin = fMedStmin->GetNumber();
432 
433  fMedium->SetParam(0,isvol);
434  fMedium->SetParam(1,ifield);
435  fMedium->SetParam(2,fieldm);
436  fMedium->SetParam(3,tmaxfd);
437  fMedium->SetParam(4,stemax);
438  fMedium->SetParam(5,deemax);
439  fMedium->SetParam(6,epsil);
440  fMedium->SetParam(7,stmin);
441  if (strcmp(fMedium->GetName(), fMedName->GetText())) fMedium->SetName(fMedName->GetText());
443 }
444 
445 ////////////////////////////////////////////////////////////////////////////////
446 /// Slot for undoing last operation.
447 
449 {
450 }
451 
virtual void Resize(UInt_t w=0, UInt_t h=0)
Resize the frame.
Definition: TGFrame.cxx:587
virtual const char * GetName() const
Return unique name, used in SavePrimitive methods.
Definition: TGWindow.cxx:221
TGLabel * fLSelMaterial
ClassImp(TSeqCollection) Int_t TSeqCollection TIter next(this)
Return index of object in collection.
virtual void SetTextColor(Pixel_t color, Bool_t global=kFALSE)
Changes text color.
Definition: TGLabel.cxx:359
TGNumberEntry * fMedTmaxfd
virtual void SetToolTipText(const char *text, Long_t delayms=500)
Set tool tip text associated with this text entry.
virtual void SetName(const char *name)
Change (i.e.
Definition: TNamed.cxx:128
void DoStmin()
Slot for min. step.
virtual void SetNumber(Double_t val)
TGeoMedium * fMedium
virtual TList * GetList() const
Definition: TGFrame.h:385
#define gClient
Definition: TGClient.h:174
int Int_t
Definition: RtypesCore.h:41
void GetMaterialEditor(TGeoMaterial *material)
Get editor for a material.
const Bool_t kFALSE
Definition: Rtypes.h:92
virtual Int_t GetNumberOfEntries() const
Definition: TGComboBox.h:129
TGNumberEntry * fMedStmin
TGNumberEntry * fMedDeemax
static void Cleanup(TGCompositeFrame *frame)
Static method to cleanup hirarchically all daughters of a composite frame.
void DoDeemax()
Slot for the maximum allowed dedx.
TGNumberEntryField * GetNumberEntry() const
ULong_t Pixel_t
Definition: GuiTypes.h:41
void Class()
Definition: Class.C:29
void DoEditMaterial()
Edit selected material.
virtual void SetText(TGString *newText)
Set new text in label.
Definition: TGLabel.cxx:177
ClassImp(TGeoMediumEditor) enum ETGeoMediumWid
const char * GetText() const
Definition: TGTextEntry.h:140
void SetParam(Int_t i, Double_t val)
Definition: TGeoMedium.h:52
virtual void SetActive(Bool_t active=kTRUE)
Set active GUI attribute frames related to the selected object.
virtual void Select(Int_t id, Bool_t emit=kTRUE)
Make the selected item visible in the combo box window and emit signals according to the second param...
Definition: TGComboBox.cxx:443
TGCompositeFrame(const TGCompositeFrame &)
Double_t GetParam(Int_t i) const
Definition: TGeoMedium.h:51
virtual void SetDefaultSize(UInt_t w, UInt_t h)
Set the default / minimal size of the widget.
TGNumberEntry * fMedStemax
virtual Int_t GetSelected() const
Definition: TGComboBox.h:136
TGNumberEntry * fMedFieldm
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:1135
TGTextButton * fApply
virtual void Associate(const TGWindow *w)
Make w the window that will receive the generated messages.
TGPictureButton * fBSelMaterial
TGCheckButton * fMedSensitive
virtual const char * ClassName() const
Returns name of class to which the object belongs.
Definition: TObject.cxx:187
virtual void Associate(const TGWindow *w)
Definition: TGWidget.h:90
Int_t GetId() const
Definition: TGeoMedium.h:50
void DoToggleSensitive()
Slot for sensitivity.
TGNumberEntry * fMedId
unsigned int UInt_t
Definition: RtypesCore.h:42
TGFrame * fFrame
Definition: TGLayout.h:125
virtual Bool_t IsOn() const
Definition: TGButton.h:315
virtual const char * GetName() const
Returns name of object.
Definition: TNamed.h:51
const std::string sname
Definition: testIO.cxx:45
TGTextButton * fEditMaterial
void DoUndo()
Slot for undoing last operation.
TGeoMaterial * fSelectedMaterial
TGeoMaterial * GetMaterial() const
Definition: TGeoMedium.h:54
TGComboBox * fMagfldOption
void DoEpsil()
Slot for tracking precision.
void DoMedId()
Slot for medium id.
void SetId(Int_t id)
Definition: TGeoMedium.h:56
virtual void ConnectSignals2Slots()
Connect signals to slots.
TGTextEntry * fMedName
virtual ~TGeoMediumEditor()
Destructor.
double Double_t
Definition: RtypesCore.h:55
virtual void AddEntry(TGString *s, Int_t id)
Definition: TGComboBox.h:108
virtual void SetEnabled(Bool_t e=kTRUE)
Set enabled or disabled state of button.
Definition: TGButton.cxx:409
TGTextButton * fUndo
const TGPicture * GetPicture(const char *name)
Get picture from the picture pool.
Definition: TGClient.cxx:287
static TObject * GetSelected()
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=0)
Add frame to the composite frame using the specified layout hints.
Definition: TGFrame.cxx:1099
TGNumberEntry * fMedEpsil
#define name(a, b)
Definition: linkTestLib0.cpp:5
void DoTmaxfd()
Slot for tmaxfd.
void DoApply()
Slot for applying modifications.
Mother of all ROOT objects.
Definition: TObject.h:58
void DoSelectMaterial()
Select the material component.
Bool_t fInit
Definition: TGedFrame.h:55
virtual UInt_t GetDefaultHeight() const
Definition: TGFrame.h:254
double f2(const double *x)
void DoMagfldSelect(Int_t ientry)
Slot for mag. field.
TGClient * fClient
Definition: TGObject.h:41
TF1 * f1
Definition: legend1.C:11
virtual Long_t GetIntNumber() const
void DoFieldm()
Slot for max field.
virtual Double_t GetNumber() const
virtual void SetState(EButtonState state, Bool_t emit=kFALSE)
Set check button state.
Definition: TGButton.cxx:1200
virtual void SetModel(TObject *obj)
Connect to the selected object.
UInt_t GetDefaultHeight() const
virtual void SetText(const char *text, Bool_t emit=kTRUE)
Sets text entry to text, clears the selection and moves the cursor to the end of the line...
void DoMedName()
Slot for medium name.
virtual void Cleanup()
Cleanup and delete all objects contained in this composite frame.
Definition: TGFrame.cxx:949
const Bool_t kTRUE
Definition: Rtypes.h:91
TObject * obj
TGeoMediumEditor(const TGWindow *p=0, Int_t width=140, Int_t height=30, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Constructor for medium editor.
virtual void MakeTitle(const char *title)
Create attribute frame title.
Definition: TGedFrame.cxx:96
virtual void SetToolTipText(const char *text, Long_t delayms=400)
Set tool tip text associated with this button.
Definition: TGButton.cxx:395
virtual void ChangeOptions(UInt_t options)
Change frame options. Options is an OR of the EFrameTypes.
Definition: TGFrame.cxx:303
void DoStemax()
Slot for the max allowed step.
TGeoTabManager * fTabMgr
Definition: TGeoGedFrame.h:27