Logo ROOT   6.14/05
Reference Guide
TGeoNodeEditor.h
Go to the documentation of this file.
1 // @(#):$Id$
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 #ifndef ROOT_TGeoNodeEditor
13 #define ROOT_TGeoNodeEditor
14 
15 #include "TGWidget.h"
16 #include "TGeoGedFrame.h"
17 
18 class TGeoNode;
19 class TGeoVolume;
20 class TGeoMatrix;
21 class TGTextEntry;
22 class TGNumberEntry;
23 class TGTab;
24 class TGComboBox;
25 class TGTextButton;
26 class TGPictureButton;
27 class TGCheckButton;
28 class TGeoTabManager;
29 
30 class TGeoNodeEditor : public TGeoGedFrame {
31 
32 protected:
33 
34  TGeoNode *fNode; // Node object
35 
36  Bool_t fIsEditable; // Flag that the medium can be changed
37  TGTextEntry *fNodeName; // Node name text entry
38  TGNumberEntry *fNodeNumber; // Copy number
39  TGeoVolume *fSelectedVolume; // Selected volume
40  TGLabel *fLSelVolume; // Selected volume label
41  TGPictureButton *fBSelVolume; // Button for selecting a volume
42  TGeoVolume *fSelectedMother; // Selected mother
43  TGLabel *fLSelMother; // Selected mother label
44  TGPictureButton *fBSelMother; // Button for selecting a mother volume
45  TGeoMatrix *fSelectedMatrix; // Selected matrix
46  TGLabel *fLSelMatrix; // Selected matrix label
47  TGPictureButton *fBSelMatrix; // Button for selecting a matrix
48  TGTextButton *fEditMother; // Check button for editing mother volume
49  TGTextButton *fEditVolume; // Check button for volume editing
50  TGTextButton *fEditMatrix; // Check button for matrix editing
51  TGTextButton *fApply; // Apply-Button to accept changes
52  TGTextButton *fCancel; // Cancel-Button
53  TGTextButton *fUndo; // Undo-Button
54 
55  virtual void ConnectSignals2Slots(); // Connect the signals to the slots
56 
57 public:
58  TGeoNodeEditor(const TGWindow *p = 0,
59  Int_t width = 140, Int_t height = 30,
60  UInt_t options = kChildFrame,
62  virtual ~TGeoNodeEditor();
63  virtual void SetModel(TObject *obj);
64 
65  void DoEditMother();
66  void DoEditVolume();
67  void DoEditMatrix();
68  void DoSelectMother();
69  void DoSelectVolume();
70  void DoSelectMatrix();
71  void DoNodeName();
72  void DoNodeNumber();
73  void DoApply();
74  void DoUndo();
75 
76  ClassDef(TGeoNodeEditor,0) // TGeoNode editor
77 };
78 
79 #endif
TGPictureButton * fBSelMatrix
TGeoVolume * fSelectedMother
TGTextButton * fEditVolume
TGTextButton * fApply
TGPictureButton * fBSelMother
TGeoVolume * fSelectedVolume
Definition: TGTab.h:62
Geometrical transformation package.
Definition: TGeoMatrix.h:40
TGTextButton * fCancel
TGeoMatrix * fSelectedMatrix
image html pict1_TGaxis_012 png width
Define new text attributes for the label number "labNum".
Definition: TGaxis.cxx:2551
Manager for all editor tabs.
TGeoVolume, TGeoVolumeMulti, TGeoVolumeAssembly are the volume classes.
Definition: TGeoVolume.h:48
void DoEditMother()
Edit the mother volume.
void DoNodeNumber()
Change node copy number.
int Int_t
Definition: RtypesCore.h:41
bool Bool_t
Definition: RtypesCore.h:59
TGTextButton * fEditMother
virtual void SetModel(TObject *obj)
Connect to a editable object.
TGeoNode * fNode
void DoSelectMother()
Select the mother volume.
#define ClassDef(name, id)
Definition: Rtypes.h:320
ULong_t Pixel_t
Definition: GuiTypes.h:39
static Pixel_t GetDefaultFrameBackground()
Get default frame background.
Definition: TGFrame.cxx:665
TGLabel * fLSelVolume
TGTextButton * fEditMatrix
void DoEditMatrix()
Edit selected material.
void DoSelectMatrix()
Select the matrix.
virtual void ConnectSignals2Slots()
Connect signals to slots.
TGPictureButton * fBSelVolume
virtual ~TGeoNodeEditor()
Destructor.
Editor class for TGeoNode objects.
TGTextButton * fUndo
unsigned int UInt_t
Definition: RtypesCore.h:42
void DoUndo()
Slot for undoing last operation.
TGLabel * fLSelMatrix
void DoSelectVolume()
Select the volume.
TGeoNodeEditor(const TGWindow *p=0, Int_t width=140, Int_t height=30, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Constructor for node editor.
TGLabel * fLSelMother
Mother of all ROOT objects.
Definition: TObject.h:37
A node represent a volume positioned inside another.They store links to both volumes and to the TGeoM...
Definition: TGeoNode.h:39
void DoEditVolume()
Edit selected volume.
void DoNodeName()
Change node name.
TGNumberEntry * fNodeNumber
void DoApply()
Slot for applying modifications.
TGTextEntry * fNodeName
Common base class for geombuilder editors.
Definition: TGeoGedFrame.h:13