]>
Commit | Line | Data |
---|---|---|
d810d0de | 1 | // $Id$ |
2 | // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007 | |
5a5a1232 | 3 | |
d810d0de | 4 | /************************************************************************** |
5 | * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. * | |
6 | * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for * | |
51346b82 | 7 | * full copyright notice. * |
d810d0de | 8 | **************************************************************************/ |
9 | ||
10 | #include "AliEveTPCSector2DEditor.h" | |
11 | #include <Alieve/AliEveTPCSector2D.h> | |
5a5a1232 | 12 | |
5a5a1232 | 13 | #include <TGButton.h> |
a8600b56 | 14 | #include <TGComboBox.h> |
15 | #include <TGLabel.h> | |
d810d0de | 16 | |
5a5a1232 | 17 | |
18 | //______________________________________________________________________ | |
d810d0de | 19 | // AliEveTPCSector2DEditor |
5a5a1232 | 20 | // |
21 | ||
d810d0de | 22 | ClassImp(AliEveTPCSector2DEditor) |
5a5a1232 | 23 | |
d810d0de | 24 | AliEveTPCSector2DEditor::AliEveTPCSector2DEditor(const TGWindow *p, |
a8600b56 | 25 | Int_t width, Int_t height, |
684070b7 | 26 | UInt_t options, Pixel_t back) : |
a8600b56 | 27 | TGedFrame(p, width, height, options | kVerticalFrame, back), |
265ecb21 | 28 | fM(0), |
a8600b56 | 29 | fShowMax(0), fAverage(0), fUseTexture(0), fPickEmpty(0), fPickMode(0) |
5a5a1232 | 30 | { |
d810d0de | 31 | MakeTitle("AliEveTPCSector2D"); |
5a5a1232 | 32 | |
5a5a1232 | 33 | { |
34 | TGHorizontalFrame* f = new TGHorizontalFrame(this); | |
b56d8877 | 35 | fShowMax = new TGCheckButton(f, "ShowMax"); |
36 | f->AddFrame(fShowMax, new TGLayoutHints(kLHintsLeft, 3, 16, 1, 0)); | |
d810d0de | 37 | fShowMax->Connect("Toggled(Bool_t)","AliEveTPCSector2DEditor", this, "DoShowMax()"); |
b56d8877 | 38 | fAverage = new TGCheckButton(f, "Average"); |
39 | f->AddFrame(fAverage, new TGLayoutHints(kLHintsLeft, 3, 1, 1, 0)); | |
d810d0de | 40 | fAverage->Connect("Toggled(Bool_t)","AliEveTPCSector2DEditor", this, "DoAverage()"); |
a8600b56 | 41 | AddFrame(f); |
42 | } | |
43 | { | |
44 | TGHorizontalFrame* f = new TGHorizontalFrame(this); | |
45 | fUseTexture = new TGCheckButton(f, "UseTexture"); | |
46 | f->AddFrame(fUseTexture, new TGLayoutHints(kLHintsTop, 3, 9, 1, 0)); | |
d810d0de | 47 | fUseTexture->Connect("Toggled(Bool_t)","AliEveTPCSector2DEditor", this, "DoUseTexture()"); |
a8600b56 | 48 | fPickEmpty = new TGCheckButton(f, "PickEmpty"); |
49 | f->AddFrame(fPickEmpty, new TGLayoutHints(kLHintsTop, 3, 1, 1, 0)); | |
d810d0de | 50 | fPickEmpty->Connect("Toggled(Bool_t)","AliEveTPCSector2DEditor", this, "DoPickEmpty()"); |
a8600b56 | 51 | AddFrame(f); |
52 | } | |
53 | { | |
54 | TGHorizontalFrame* f = new TGHorizontalFrame(this); | |
55 | TGLabel* lab = new TGLabel(f, "PickMode"); | |
56 | f->AddFrame(lab, new TGLayoutHints(kLHintsLeft|kLHintsBottom, 1, 10, 1, 2)); | |
57 | fPickMode = new TGComboBox(f); | |
58 | fPickMode->AddEntry("Print", 0); | |
59 | fPickMode->AddEntry("1D histo", 1); | |
60 | fPickMode->AddEntry("2D histo", 2); | |
61 | TGListBox* lb = fPickMode->GetListBox(); | |
32e219c2 | 62 | lb->Resize(lb->GetWidth(), 3*18); |
a8600b56 | 63 | fPickMode->Resize(80, 20); |
d810d0de | 64 | fPickMode->Connect("Selected(Int_t)", "AliEveTPCSector2DEditor", this, "DoPickMode(Int_t)"); |
a8600b56 | 65 | f->AddFrame(fPickMode, new TGLayoutHints(kLHintsTop, 1, 1, 1, 1)); |
66 | AddFrame(f); | |
b56d8877 | 67 | } |
5a5a1232 | 68 | } |
69 | ||
d810d0de | 70 | AliEveTPCSector2DEditor::~AliEveTPCSector2DEditor() |
5a5a1232 | 71 | {} |
72 | ||
73 | /**************************************************************************/ | |
74 | ||
d810d0de | 75 | void AliEveTPCSector2DEditor::SetModel(TObject* obj) |
5a5a1232 | 76 | { |
d810d0de | 77 | fM = dynamic_cast<AliEveTPCSector2D*>(obj); |
5a5a1232 | 78 | |
5a5a1232 | 79 | fShowMax->SetState(fM->fShowMax ? kButtonDown : kButtonUp); |
b56d8877 | 80 | SetupAverage(); |
915dabe1 | 81 | |
092578a7 | 82 | fUseTexture->SetState(fM->fUseTexture ? kButtonDown : kButtonUp); |
a8600b56 | 83 | fPickEmpty->SetState(fM->fPickEmpty ? kButtonDown : kButtonUp); |
84 | fPickMode->Select(fM->fPickMode, kFALSE); | |
5a5a1232 | 85 | } |
86 | ||
87 | /**************************************************************************/ | |
88 | ||
d810d0de | 89 | void AliEveTPCSector2DEditor::DoShowMax() |
5a5a1232 | 90 | { |
91 | fM->SetShowMax(fShowMax->IsOn()); | |
b56d8877 | 92 | SetupAverage(); |
93 | Update(); | |
94 | } | |
95 | ||
d810d0de | 96 | void AliEveTPCSector2DEditor::DoAverage() |
b56d8877 | 97 | { |
98 | fM->SetAverage(fAverage->IsOn()); | |
99 | Update(); | |
100 | } | |
101 | ||
d810d0de | 102 | void AliEveTPCSector2DEditor::SetupAverage() |
b56d8877 | 103 | { |
104 | if(fM->fShowMax) { | |
105 | fAverage->SetEnabled(kFALSE); | |
106 | } else { | |
107 | fAverage->SetEnabled(kTRUE); | |
108 | fAverage->SetState(fM->fAverage ? kButtonDown : kButtonUp); | |
109 | } | |
110 | } | |
111 | ||
092578a7 | 112 | /**************************************************************************/ |
b56d8877 | 113 | |
d810d0de | 114 | void AliEveTPCSector2DEditor::DoUseTexture() |
b56d8877 | 115 | { |
092578a7 | 116 | fM->fUseTexture = fUseTexture->IsOn(); |
5a5a1232 | 117 | Update(); |
118 | } | |
a8600b56 | 119 | |
d810d0de | 120 | void AliEveTPCSector2DEditor::DoPickEmpty() |
a8600b56 | 121 | { |
122 | fM->fPickEmpty = fPickEmpty->IsOn(); | |
123 | // Update(); | |
124 | } | |
125 | ||
d810d0de | 126 | void AliEveTPCSector2DEditor::DoPickMode(Int_t mode) |
a8600b56 | 127 | { |
128 | fM->fPickMode = mode; | |
129 | // Update(); | |
130 | } |