GSI Object Oriented Online Offline (Go4)  GO4-6.3.0
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 
20 class TGo4PolyCondView : public TCutG {
21 
22 public:
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 
82  Bool_t IsAtExecuteMouseEvent() const { return fbExecutesMouseEvent; }
83  Bool_t IsAtExecuteMouseMenu() const { return fbExecutesMouseMenu; }
84 
85 private:
86 
88  Bool_t fbExecutesMouseEvent{kFALSE};
89 
91  Bool_t fbExecutesMouseMenu{kFALSE};
92 
95 
96  ClassDefOverride(TGo4PolyCondView,7)
97 };
98 
99 #endif //TGO4POLYCONDVIEW_H
virtual Bool_t IsLabelDraw() const
virtual void SetIntDraw(Bool_t on)
virtual Bool_t IsYMeanDraw() const
Bool_t IsAtExecuteMouseMenu() const
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
void SetYMeanDraw(Bool_t on)
virtual void SetYMaxDraw(Bool_t on)
void SetCondition(TGo4PolyCond *condition)
virtual void UpdateCondition()
virtual void SetCMaxDraw(Bool_t on)
void SetLabelDraw(Bool_t on)
virtual Bool_t IsXMeanDraw() const
virtual Bool_t IsYRMSDraw() const
virtual Bool_t IsCMaxDraw() const
virtual void SetYRMSDraw(Bool_t on)
void Paint(Option_t *opt) override
Int_t RemovePoint() override
void SetYRMSDraw(Bool_t on)
virtual void SetXMeanDraw(Bool_t on)
Int_t InsertPoint() override
TGo4PolyCond * fxPolyCondition
virtual Bool_t IsIntDraw() const
virtual void SetXMaxDraw(Bool_t on)
virtual Bool_t IsXRMSDraw() const
virtual Bool_t IsYMaxDraw() const
void SetCMaxDraw(Bool_t on)
void SetXMeanDraw(Bool_t on)
TGo4PolyCond * GetCondition()
void SetXRMSDraw(Bool_t on)
void SetCut(TCutG *source)
virtual void SetXRMSDraw(Bool_t on)
virtual void SetLimitsDraw(Bool_t on)
const char * GetName() const override
void SetName(const char *nam) override
void SetLimitsDraw(Bool_t on)
virtual Bool_t IsLimitsDraw() const
void SetXMaxDraw(Bool_t on)
virtual Bool_t IsXMaxDraw() const
virtual void SetYMeanDraw(Bool_t on)
void SetYMaxDraw(Bool_t on)
virtual void SetLabelDraw(Bool_t on)
Bool_t IsAtExecuteMouseEvent() const
void SetIntDraw(Bool_t on)
virtual ~TGo4PolyCondView()
Bool_t IsCutChanged() const