GSI Object Oriented Online Offline (Go4) GO4-6.4.0
Loading...
Searching...
No Matches
TGo4PolyCondView.h
Go to the documentation of this file.
1// $Id$
2//-----------------------------------------------------------------------
3// The GSI Online Offline Object Oriented (Go4) Project
4// Experiment Data Processing at EE department, GSI
5//-----------------------------------------------------------------------
6// Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7// Planckstr. 1, 64291 Darmstadt, Germany
8// Contact: http://go4.gsi.de
9//-----------------------------------------------------------------------
10// This software can be used under the license agreements as stated
11// in Go4License.txt file which is part of the distribution.
12//-----------------------------------------------------------------------
13
14#ifndef TGO4POLYCONDVIEW_H
15#define TGO4POLYCONDVIEW_H
16
17#include "TCutG.h"
18#include "TGo4PolyCond.h"
19
20class TGo4PolyCondView : public TCutG {
21
22public:
23
24 TGo4PolyCondView(TCutG *source);
26 virtual ~TGo4PolyCondView();
27
28 void Paint(Option_t *opt) override;
29 void ExecuteEvent(Int_t event, Int_t px, Int_t py) override;
30
32 Bool_t IsCutChanged() const;
34 virtual void UpdateCondition();
35
36 void SetCondition(TGo4PolyCond *condition) { fxPolyCondition = condition; }
37
39
41 void SetCut(TCutG *source);
42
44 TCutG *CreateCut();
45
46 const char *GetName() const override;
47 void SetName(const char *nam) override; // *MENU*
49 void DeleteRegion(); // *MENU*
50
51 void SetLabelDraw(Bool_t on) { if(fxPolyCondition) fxPolyCondition->SetLabelDraw(on); } // *TOGGLE* *GETTER=IsLabelDraw
52 void SetLimitsDraw(Bool_t on) { if(fxPolyCondition) fxPolyCondition->SetLimitsDraw(on); } // *TOGGLE* *GETTER=IsLimitsDraw
53 void SetIntDraw(Bool_t on) { if(fxPolyCondition) fxPolyCondition->SetIntDraw(on); } // *TOGGLE* *GETTER=IsIntDraw
54 void SetXMeanDraw(Bool_t on) { if(fxPolyCondition) fxPolyCondition->SetXMeanDraw(on); } // *TOGGLE* *GETTER=IsXMeanDraw
55 void SetXRMSDraw(Bool_t on) { if(fxPolyCondition) fxPolyCondition->SetXRMSDraw(on); } // *TOGGLE* *GETTER=IsXRMSDraw
56 void SetYMeanDraw(Bool_t on) { if(fxPolyCondition) fxPolyCondition->SetYMeanDraw(on); } // *TOGGLE* *GETTER=IsYMeanDraw
57 void SetYRMSDraw(Bool_t on) { if(fxPolyCondition) fxPolyCondition->SetYRMSDraw(on); } // *TOGGLE* *GETTER=IsYRMSDraw
58 void SetXMaxDraw(Bool_t on) { if(fxPolyCondition) fxPolyCondition->SetXMaxDraw(on); } // *TOGGLE* *GETTER=IsXMaxDraw
59 void SetYMaxDraw(Bool_t on) { if(fxPolyCondition) fxPolyCondition->SetYMaxDraw(on); } // *TOGGLE* *GETTER=IsYMaxDraw
60 void SetCMaxDraw(Bool_t on) { if(fxPolyCondition) fxPolyCondition->SetCMaxDraw(on); } // *TOGGLE* *GETTER=IsCMaxDraw
61
62 Bool_t IsLabelDraw() { return fxPolyCondition ? fxPolyCondition->IsLabelDraw() : kFALSE; }
63 Bool_t IsLimitsDraw() { return fxPolyCondition ? fxPolyCondition->IsLimitsDraw() : kFALSE; }
64 Bool_t IsIntDraw() { return fxPolyCondition ? fxPolyCondition->IsIntDraw() : kFALSE; }
65 Bool_t IsXMeanDraw() { return fxPolyCondition ? fxPolyCondition->IsXMeanDraw() : kFALSE; }
66 Bool_t IsXRMSDraw() { return fxPolyCondition ? fxPolyCondition->IsXRMSDraw() : kFALSE; }
67 Bool_t IsYMeanDraw() { return fxPolyCondition ? fxPolyCondition->IsYMeanDraw() : kFALSE; }
68 Bool_t IsYRMSDraw() { return fxPolyCondition ? fxPolyCondition->IsYRMSDraw() : kFALSE; }
69 Bool_t IsXMaxDraw() { return fxPolyCondition ? fxPolyCondition->IsXMaxDraw() : kFALSE; }
70 Bool_t IsYMaxDraw() { return fxPolyCondition ? fxPolyCondition->IsYMaxDraw() : kFALSE; }
71 Bool_t IsCMaxDraw() { return fxPolyCondition ? fxPolyCondition->IsCMaxDraw() : kFALSE; }
72
74 void SaveLabelStyle();// *MENU*
76 void ResetLabel();// *MENU*
77
78 using TCutG::RemovePoint;
79 Int_t InsertPoint() override; // *MENU*
80 Int_t RemovePoint() override; // *MENU*
81
83 Bool_t IsAtExecuteMouseMenu() const { return fbExecutesMouseMenu; }
84
85private:
86
88 Bool_t fbExecutesMouseEvent{kFALSE};
89
91 Bool_t fbExecutesMouseMenu{kFALSE};
92
95
96 ClassDefOverride(TGo4PolyCondView,7)
97};
98
99#endif //TGO4POLYCONDVIEW_H
Int_t InsertPoint() override
const char * GetName() const override
virtual void UpdateCondition()
Copy modified view values back to condition.
Bool_t fbExecutesMouseEvent
JAM this one will suppress condition repaint during execution of mouse events.
void SetYRMSDraw(Bool_t on)
TCutG * CreateCut()
create plain cutg from this view.
TGo4PolyCond * GetCondition()
void SetCut(TCutG *source)
Set this view to values of cut source.
void DeleteRegion()
Delete condition instead of view:
void SetCMaxDraw(Bool_t on)
void SetXMeanDraw(Bool_t on)
Int_t RemovePoint() override
Bool_t IsCutChanged() const
Check if cut on pad is changed compared with condition.
void ResetLabel()
Will reset label position to defaults.
void SetXMaxDraw(Bool_t on)
void SetXRMSDraw(Bool_t on)
void SetLimitsDraw(Bool_t on)
void SetCondition(TGo4PolyCond *condition)
void SetLabelDraw(Bool_t on)
void SetYMaxDraw(Bool_t on)
Bool_t fbExecutesMouseMenu
JAM this one will suppress condition repaint during mouse menu execution.
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Bool_t IsAtExecuteMouseMenu() const
TGo4PolyCondView(TCutG *source)
JAM2016: like for polygon condition we may suppress intermediate streaming when updating the conditio...
void SetName(const char *nam) override
TGo4PolyCond * fxPolyCondition
pointer to viewed condition for update after graphical action
void SetIntDraw(Bool_t on)
Bool_t IsAtExecuteMouseEvent() const
void Paint(Option_t *opt) override
void SaveLabelStyle()
This will save draw flags into static default setup.
void SetYMeanDraw(Bool_t on)
Polygon condition.