]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TGeant3/AliGuiGeomMain.h
Decay_t moved to AliDecayer.h
[u/mrichter/AliRoot.git] / TGeant3 / AliGuiGeomMain.h
CommitLineData
ef42d733 1#ifndef ALIGUIGEOMMAIN_H
2#define ALIGUIGEOMMAIN_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8#include "TClonesArray.h"
9#include "TGFrame.h"
10#include "TGListTree.h"
11#include "TGComboBox.h"
12
13class TGTab;
14class TGMenuBar;
15class TGPopupMenu;
16class TGTextBuffer;
17class TGTextEntry;
18class TGLabel;
19class TGTextButton;
20
21class AliGUIMaterial;
22class AliGUIMedium;
23class AliGuiGeomDialog;
24
25class AliGuiGeomMain : public TGMainFrame {
26 public:
27 AliGuiGeomMain(const TGWindow *p, UInt_t w, UInt_t h);
28 virtual ~AliGuiGeomMain();
29 // Destroy the main window
30 virtual void CloseWindow();
31 // Add item to ListTree
32 virtual TGListTreeItem *
33 AddItem(TObject *obj, TGListTreeItem* parent,
34 const char* name,
35 const TGPicture* open, const TGPicture* closed);
36 // Add Material to ComboBox
37 virtual void AddMaterial(AliGUIMaterial *Material, Int_t i);
38 // Add Medium to ComboBox
39 virtual void AddMedium(AliGUIMedium *Medium, Int_t i);
40 // Process messages from this window
41 virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2);
42 // Update widgets
43 virtual void Update();
44 // Update ComboBoxes
45 virtual void UpdateCombo();
46 virtual void UpdateListBox();
47 // Relate objects to ComboEntries
48 // Currently ComboBox Entries are strings only, hence we need this construction
49 virtual void SetComboEntries(TClonesArray *entries) {fComboEntries=entries;}
50 virtual void SetMediaComboEntries(TClonesArray *entries)
51 {fComboMediaEntries=entries;}
52 virtual void Plot();
53private:
54 TGTab *fTab; // Contains Tab entries: volumes, materials..
55 TGCanvas *fCanvasWindow; // Canvas window for list tree
56 TGCompositeFrame *fF2, *fF21, *fF3, *fF31, *fF4, *fF5; // Frames for combos
57 TGCompositeFrame *fF6, *fF61, *fF62, *fF63; // Frames for combos
58 TGListTree *fLt; // Volumes list tree
59 TGMenuBar *fMenuBar; // Menu bar: File, Draw Control ...
60 TGPopupMenu *fMenuFile, *fMenuTest, *fMenuHelp; // Pop-up menus
61 TGLayoutHints *fMenuBarItemLayout, *fMenuBarHelpLayout, // Lay-out hints
62 *fMenuBarLayout, fLTab; // Lay-out hints
63 TGLayoutHints *fL2; // Lay-out hints
64 AliGuiGeomDialog *fDialog; //! no output please
65 TGComboBox *fMaterialCombo; // Material combo box
66 TGComboBox *fMechanismCombo; // Mechanism combo box
67 TGComboBox *fMediaCombo, *fParticleCombo; // Media and particle combo boxes
68 TGListBox *fProcessLB, *fCutsLB; // List boxes for cuts and processes
69 TClonesArray *fComboEntries; // List of materials
70 TClonesArray *fComboMediaEntries; // List of media
71 TGHorizontalFrame *fHframe[6],*fHframeM[8]; // sub frames
72 TGTextBuffer *fTbh[6], *fTbhM[8], *fTbh61, *fTbh62, *fTbh63; // text frames
73 TGTextEntry *fTeh[6], *fTehM[8], *fTeh61, *fTeh62, *fTeh63; // text entries
74 TGLabel *fLabel[6], *fLabelM[8], *fSLabel61; // labels
75 TGTextButton *fPlotButton; // Plot-Button
76 Float_t fEmin; // minimum energy for de/dx plot
77 Float_t fEmax; // maximum energy for de/dx plot
78 Int_t fNbins; // number of bins for de/dx plot
79
80 AliGuiGeomMain(const AliGuiGeomMain &gm)
81 : TGMainFrame((const TGMainFrame&)gm) {}
82 virtual AliGuiGeomMain & operator=(const AliGuiGeomMain &) {return *this;}
83
84
85 ClassDef(AliGuiGeomMain,1) // MainFrame for Geometry Browser
86};
87
88R__EXTERN AliGUIMaterial *gCurrentMaterial;
89R__EXTERN AliGUIMedium *gCurrentMedium;
90
91#endif