#include "AliEveTOFSectorEditor.h"
#include <EveDet/AliEveTOFSector.h>
#include <TVirtualPad.h>
#include <TColor.h>
#include <TEveGValuators.h>
#include <TGLabel.h>
#include <TGButton.h>
#include <TGNumberEntry.h>
#include <TGColorSelect.h>
#include <TGSlider.h>
#include <TGDoubleSlider.h>
ClassImp(AliEveTOFSectorEditor)
AliEveTOFSectorEditor::AliEveTOFSectorEditor(const TGWindow *p, Int_t width, Int_t height,
UInt_t options, Pixel_t back) :
TGedFrame(p, width, height, options | kVerticalFrame, back),
fM(0) ,
fSectorID (0), fAutoTrans (0),
fPlate (0),
fPlate0(0), fPlate1(0), fPlate2(0), fPlate3(0), fPlate4(0),
fThreshold (0), fMaxVal(0)
{
fPlate = new TGCheckButton*[5];
for (Int_t ii=0; ii<5; ii++) fPlate[ii] = new TGCheckButton;
MakeTitle("AliEveTOFSector");
fSectorID = new TEveGValuator(this, "SectorID", 110, 0);
fSectorID->SetLabelWidth(60);
fSectorID->SetShowSlider(kFALSE);
fSectorID->SetNELength(4);
fSectorID->Build();
fSectorID->SetLimits(0, 17);
fSectorID->SetToolTip("The 18 Tof Sector's");
fSectorID->Connect("ValueSet(Double_t)",
"AliEveTOFSectorEditor", this, "DoSectorID()");
fAutoTrans = new TGCheckButton(fSectorID, "AutoTrans");
fAutoTrans->SetToolTipText("Automatically set transformation to true position");
fSectorID->AddFrame(fAutoTrans, new TGLayoutHints(kLHintsLeft, 12, 0, 1, 0));
fAutoTrans->Connect("Toggled(Bool_t)","AliEveTOFSectorEditor", this, "DoAutoTrans()");
AddFrame(fSectorID, new TGLayoutHints(kLHintsTop, 1, 1, 1, 1));
TGHorizontalFrame* f = new TGHorizontalFrame(this);
Int_t nPlate = 0;
fPlate0 = new TGCheckButton(f, "Plate0");
f->AddFrame(fPlate0, new TGLayoutHints(kLHintsTop, 3, 1, 1, 0));
fPlate0->Connect("Toggled(Bool_t)","AliEveTOFSectorEditor", this, "DoPlate0()");
nPlate = 1;
fPlate1 = new TGCheckButton(f, "Plate 1");
f->AddFrame(fPlate1, new TGLayoutHints(kLHintsTop, 3, 1, 1, 0));
fPlate1->Connect("Toggled(Bool_t)","AliEveTOFSectorEditor", this, "DoPlate1()");
nPlate = 2;
fPlate2 = new TGCheckButton(f, "Plate 2");
f->AddFrame(fPlate2, new TGLayoutHints(kLHintsTop, 3, 1, 1, 0));
fPlate2->Connect("Toggled(Bool_t)","AliEveTOFSectorEditor", this, "DoPlate2()");
nPlate = 3;
fPlate3 = new TGCheckButton(f, "Plate 3");
f->AddFrame(fPlate3, new TGLayoutHints(kLHintsTop, 3, 1, 1, 0));
fPlate3->Connect("Toggled(Bool_t)","AliEveTOFSectorEditor", this, "DoPlate3()");
nPlate = 4;
fPlate4 = new TGCheckButton(f, "Plate 4");
f->AddFrame(fPlate4, new TGLayoutHints(kLHintsTop, 3, 1, 1, 0));
fPlate4->Connect("Toggled(Bool_t)","AliEveTOFSectorEditor", this, "DoPlate4()");
fPlate[0] = fPlate0;
fPlate[1] = fPlate1;
fPlate[2] = fPlate2;
fPlate[3] = fPlate3;
fPlate[4] = fPlate4;
AddFrame(f, new TGLayoutHints(kLHintsTop, 1, 1, 1, 1));
fThreshold = new TEveGValuator(this, "Threshold", 200, 0);
fThreshold->SetNELength(4);
fThreshold->SetLabelWidth(60);
fThreshold->Build();
fThreshold->GetSlider()->SetWidth(120);
fThreshold->SetLimits(0,250);
fThreshold->Connect("ValueSet(Double_t)",
"AliEveTOFSectorEditor", this, "DoThreshold()");
AddFrame(fThreshold, new TGLayoutHints(kLHintsTop, 1, 1, 2, 1));
fMaxVal = new TEveGValuator(this,"MaxVal", 200, 0);
fMaxVal->SetNELength(4);
fMaxVal->SetLabelWidth(60);
fMaxVal->Build();
fMaxVal->GetSlider()->SetWidth(60);
fMaxVal->SetLimits(0, 500);
fMaxVal->Connect("ValueSet(Double_t)",
"AliEveTOFSectorEditor", this, "DoMaxVal()");
AddFrame(fMaxVal, new TGLayoutHints(kLHintsTop, 1, 1, 2, 1));
}
AliEveTOFSectorEditor::~AliEveTOFSectorEditor()
{
delete [] fPlate;
}
void AliEveTOFSectorEditor::SetModel(TObject* obj)
{
fM = static_cast<AliEveTOFSector*>(obj);
fSectorID->SetValue(fM->GetSectorID());
fAutoTrans->SetState(fM->GetAutoTrans() ? kButtonDown : kButtonUp);
fPlate0->SetState(fM->GetPlate(0) ? kButtonDown : kButtonUp);
fPlate1->SetState(fM->GetPlate(1) ? kButtonDown : kButtonUp);
fPlate2->SetState(fM->GetPlate(2) ? kButtonDown : kButtonUp);
fPlate3->SetState(fM->GetPlate(3) ? kButtonDown : kButtonUp);
fPlate4->SetState(fM->GetPlate(4) ? kButtonDown : kButtonUp);
}
void AliEveTOFSectorEditor::DoSectorID()
{
fM->SetSectorID((Int_t) fSectorID->GetValue());
Update();
}
void AliEveTOFSectorEditor::DoAutoTrans()
{
fM->SetAutoTrans(fAutoTrans->IsOn());
Update();
}
void AliEveTOFSectorEditor::DoPlate(Int_t nPlate)
{
fM->SetPlate(nPlate, fPlate[nPlate]->IsOn());
Update();
}
void AliEveTOFSectorEditor::DoPlate0()
{
fM->SetPlate(0, fPlate0->IsOn());
Update();
}
void AliEveTOFSectorEditor::DoPlate1()
{
fM->SetPlate(1, fPlate1->IsOn());
Update();
}
void AliEveTOFSectorEditor::DoPlate2()
{
fM->SetPlate(2, fPlate2->IsOn());
Update();
}
void AliEveTOFSectorEditor::DoPlate3()
{
fM->SetPlate(3, fPlate3->IsOn());
Update();
}
void AliEveTOFSectorEditor::DoPlate4()
{
fM->SetPlate(4, fPlate4->IsOn());
Update();
}
void AliEveTOFSectorEditor::DoThreshold()
{
fM->SetThreshold((Short_t) fThreshold->GetValue());
fThreshold->SetValue(fM->GetThreshold());
Update();
}
void AliEveTOFSectorEditor::DoMaxVal()
{
fM->SetMaxVal((Int_t) fMaxVal->GetValue());
fMaxVal->SetValue(fM->GetMaxVal());
Update();
}
AliEveTOFSectorEditor.cxx:1 AliEveTOFSectorEditor.cxx:2 AliEveTOFSectorEditor.cxx:3 AliEveTOFSectorEditor.cxx:4 AliEveTOFSectorEditor.cxx:5 AliEveTOFSectorEditor.cxx:6 AliEveTOFSectorEditor.cxx:7 AliEveTOFSectorEditor.cxx:8 AliEveTOFSectorEditor.cxx:9 AliEveTOFSectorEditor.cxx:10 AliEveTOFSectorEditor.cxx:11 AliEveTOFSectorEditor.cxx:12 AliEveTOFSectorEditor.cxx:13 AliEveTOFSectorEditor.cxx:14 AliEveTOFSectorEditor.cxx:15 AliEveTOFSectorEditor.cxx:16 AliEveTOFSectorEditor.cxx:17 AliEveTOFSectorEditor.cxx:18 AliEveTOFSectorEditor.cxx:19 AliEveTOFSectorEditor.cxx:20 AliEveTOFSectorEditor.cxx:21 AliEveTOFSectorEditor.cxx:22 AliEveTOFSectorEditor.cxx:23 AliEveTOFSectorEditor.cxx:24 AliEveTOFSectorEditor.cxx:25 AliEveTOFSectorEditor.cxx:26 AliEveTOFSectorEditor.cxx:27 AliEveTOFSectorEditor.cxx:28 AliEveTOFSectorEditor.cxx:29 AliEveTOFSectorEditor.cxx:30 AliEveTOFSectorEditor.cxx:31 AliEveTOFSectorEditor.cxx:32 AliEveTOFSectorEditor.cxx:33 AliEveTOFSectorEditor.cxx:34 AliEveTOFSectorEditor.cxx:35 AliEveTOFSectorEditor.cxx:36 AliEveTOFSectorEditor.cxx:37 AliEveTOFSectorEditor.cxx:38 AliEveTOFSectorEditor.cxx:39 AliEveTOFSectorEditor.cxx:40 AliEveTOFSectorEditor.cxx:41 AliEveTOFSectorEditor.cxx:42 AliEveTOFSectorEditor.cxx:43 AliEveTOFSectorEditor.cxx:44 AliEveTOFSectorEditor.cxx:45 AliEveTOFSectorEditor.cxx:46 AliEveTOFSectorEditor.cxx:47 AliEveTOFSectorEditor.cxx:48 AliEveTOFSectorEditor.cxx:49 AliEveTOFSectorEditor.cxx:50 AliEveTOFSectorEditor.cxx:51 AliEveTOFSectorEditor.cxx:52 AliEveTOFSectorEditor.cxx:53 AliEveTOFSectorEditor.cxx:54 AliEveTOFSectorEditor.cxx:55 AliEveTOFSectorEditor.cxx:56 AliEveTOFSectorEditor.cxx:57 AliEveTOFSectorEditor.cxx:58 AliEveTOFSectorEditor.cxx:59 AliEveTOFSectorEditor.cxx:60 AliEveTOFSectorEditor.cxx:61 AliEveTOFSectorEditor.cxx:62 AliEveTOFSectorEditor.cxx:63 AliEveTOFSectorEditor.cxx:64 AliEveTOFSectorEditor.cxx:65 AliEveTOFSectorEditor.cxx:66 AliEveTOFSectorEditor.cxx:67 AliEveTOFSectorEditor.cxx:68 AliEveTOFSectorEditor.cxx:69 AliEveTOFSectorEditor.cxx:70 AliEveTOFSectorEditor.cxx:71 AliEveTOFSectorEditor.cxx:72 AliEveTOFSectorEditor.cxx:73 AliEveTOFSectorEditor.cxx:74 AliEveTOFSectorEditor.cxx:75 AliEveTOFSectorEditor.cxx:76 AliEveTOFSectorEditor.cxx:77 AliEveTOFSectorEditor.cxx:78 AliEveTOFSectorEditor.cxx:79 AliEveTOFSectorEditor.cxx:80 AliEveTOFSectorEditor.cxx:81 AliEveTOFSectorEditor.cxx:82 AliEveTOFSectorEditor.cxx:83 AliEveTOFSectorEditor.cxx:84 AliEveTOFSectorEditor.cxx:85 AliEveTOFSectorEditor.cxx:86 AliEveTOFSectorEditor.cxx:87 AliEveTOFSectorEditor.cxx:88 AliEveTOFSectorEditor.cxx:89 AliEveTOFSectorEditor.cxx:90 AliEveTOFSectorEditor.cxx:91 AliEveTOFSectorEditor.cxx:92 AliEveTOFSectorEditor.cxx:93 AliEveTOFSectorEditor.cxx:94 AliEveTOFSectorEditor.cxx:95 AliEveTOFSectorEditor.cxx:96 AliEveTOFSectorEditor.cxx:97 AliEveTOFSectorEditor.cxx:98 AliEveTOFSectorEditor.cxx:99 AliEveTOFSectorEditor.cxx:100 AliEveTOFSectorEditor.cxx:101 AliEveTOFSectorEditor.cxx:102 AliEveTOFSectorEditor.cxx:103 AliEveTOFSectorEditor.cxx:104 AliEveTOFSectorEditor.cxx:105 AliEveTOFSectorEditor.cxx:106 AliEveTOFSectorEditor.cxx:107 AliEveTOFSectorEditor.cxx:108 AliEveTOFSectorEditor.cxx:109 AliEveTOFSectorEditor.cxx:110 AliEveTOFSectorEditor.cxx:111 AliEveTOFSectorEditor.cxx:112 AliEveTOFSectorEditor.cxx:113 AliEveTOFSectorEditor.cxx:114 AliEveTOFSectorEditor.cxx:115 AliEveTOFSectorEditor.cxx:116 AliEveTOFSectorEditor.cxx:117 AliEveTOFSectorEditor.cxx:118 AliEveTOFSectorEditor.cxx:119 AliEveTOFSectorEditor.cxx:120 AliEveTOFSectorEditor.cxx:121 AliEveTOFSectorEditor.cxx:122 AliEveTOFSectorEditor.cxx:123 AliEveTOFSectorEditor.cxx:124 AliEveTOFSectorEditor.cxx:125 AliEveTOFSectorEditor.cxx:126 AliEveTOFSectorEditor.cxx:127 AliEveTOFSectorEditor.cxx:128 AliEveTOFSectorEditor.cxx:129 AliEveTOFSectorEditor.cxx:130 AliEveTOFSectorEditor.cxx:131 AliEveTOFSectorEditor.cxx:132 AliEveTOFSectorEditor.cxx:133 AliEveTOFSectorEditor.cxx:134 AliEveTOFSectorEditor.cxx:135 AliEveTOFSectorEditor.cxx:136 AliEveTOFSectorEditor.cxx:137 AliEveTOFSectorEditor.cxx:138 AliEveTOFSectorEditor.cxx:139 AliEveTOFSectorEditor.cxx:140 AliEveTOFSectorEditor.cxx:141 AliEveTOFSectorEditor.cxx:142 AliEveTOFSectorEditor.cxx:143 AliEveTOFSectorEditor.cxx:144 AliEveTOFSectorEditor.cxx:145 AliEveTOFSectorEditor.cxx:146 AliEveTOFSectorEditor.cxx:147 AliEveTOFSectorEditor.cxx:148 AliEveTOFSectorEditor.cxx:149 AliEveTOFSectorEditor.cxx:150 AliEveTOFSectorEditor.cxx:151 AliEveTOFSectorEditor.cxx:152 AliEveTOFSectorEditor.cxx:153 AliEveTOFSectorEditor.cxx:154 AliEveTOFSectorEditor.cxx:155 AliEveTOFSectorEditor.cxx:156 AliEveTOFSectorEditor.cxx:157 AliEveTOFSectorEditor.cxx:158 AliEveTOFSectorEditor.cxx:159 AliEveTOFSectorEditor.cxx:160 AliEveTOFSectorEditor.cxx:161 AliEveTOFSectorEditor.cxx:162 AliEveTOFSectorEditor.cxx:163 AliEveTOFSectorEditor.cxx:164 AliEveTOFSectorEditor.cxx:165 AliEveTOFSectorEditor.cxx:166 AliEveTOFSectorEditor.cxx:167 AliEveTOFSectorEditor.cxx:168 AliEveTOFSectorEditor.cxx:169 AliEveTOFSectorEditor.cxx:170 AliEveTOFSectorEditor.cxx:171 AliEveTOFSectorEditor.cxx:172 AliEveTOFSectorEditor.cxx:173 AliEveTOFSectorEditor.cxx:174 AliEveTOFSectorEditor.cxx:175 AliEveTOFSectorEditor.cxx:176 AliEveTOFSectorEditor.cxx:177 AliEveTOFSectorEditor.cxx:178 AliEveTOFSectorEditor.cxx:179 AliEveTOFSectorEditor.cxx:180 AliEveTOFSectorEditor.cxx:181 AliEveTOFSectorEditor.cxx:182 AliEveTOFSectorEditor.cxx:183 AliEveTOFSectorEditor.cxx:184 AliEveTOFSectorEditor.cxx:185 AliEveTOFSectorEditor.cxx:186 AliEveTOFSectorEditor.cxx:187 AliEveTOFSectorEditor.cxx:188 AliEveTOFSectorEditor.cxx:189 AliEveTOFSectorEditor.cxx:190 AliEveTOFSectorEditor.cxx:191 AliEveTOFSectorEditor.cxx:192 AliEveTOFSectorEditor.cxx:193 AliEveTOFSectorEditor.cxx:194 AliEveTOFSectorEditor.cxx:195 AliEveTOFSectorEditor.cxx:196 AliEveTOFSectorEditor.cxx:197 AliEveTOFSectorEditor.cxx:198 AliEveTOFSectorEditor.cxx:199 AliEveTOFSectorEditor.cxx:200 AliEveTOFSectorEditor.cxx:201 AliEveTOFSectorEditor.cxx:202 AliEveTOFSectorEditor.cxx:203 AliEveTOFSectorEditor.cxx:204 AliEveTOFSectorEditor.cxx:205 AliEveTOFSectorEditor.cxx:206 AliEveTOFSectorEditor.cxx:207 AliEveTOFSectorEditor.cxx:208 AliEveTOFSectorEditor.cxx:209 AliEveTOFSectorEditor.cxx:210 AliEveTOFSectorEditor.cxx:211 AliEveTOFSectorEditor.cxx:212 AliEveTOFSectorEditor.cxx:213 AliEveTOFSectorEditor.cxx:214 AliEveTOFSectorEditor.cxx:215 AliEveTOFSectorEditor.cxx:216 AliEveTOFSectorEditor.cxx:217 AliEveTOFSectorEditor.cxx:218 AliEveTOFSectorEditor.cxx:219 AliEveTOFSectorEditor.cxx:220 AliEveTOFSectorEditor.cxx:221 AliEveTOFSectorEditor.cxx:222 AliEveTOFSectorEditor.cxx:223 AliEveTOFSectorEditor.cxx:224 AliEveTOFSectorEditor.cxx:225 AliEveTOFSectorEditor.cxx:226 AliEveTOFSectorEditor.cxx:227 AliEveTOFSectorEditor.cxx:228 AliEveTOFSectorEditor.cxx:229