Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
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,
61  Pixel_t back = GetDefaultFrameBackground());
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