Logo ROOT   6.19/01
Reference Guide
REveViewer.hxx
Go to the documentation of this file.
1 // @(#)root/eve7:$Id$
2 // Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007, 2018
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2019, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT7_REveViewer
13 #define ROOT7_REveViewer
14 
15 #include <ROOT/REveElement.hxx>
16 
17 namespace ROOT {
18 namespace Experimental {
19 
20 class REveScene;
21 
22 ////////////////////////////////////////////////////////////////////////////////
23 /// REveViewer
24 /// Reve representation of TGLViewer.
25 ////////////////////////////////////////////////////////////////////////////////
26 
27 class REveViewer : public REveElement
28 {
29 private:
30  REveViewer(const REveViewer&); // Not implemented
31  REveViewer& operator=(const REveViewer&); // Not implemented
32 
33 public:
34  REveViewer(const std::string &n="REveViewer", const std::string &t="");
35  virtual ~REveViewer();
36 
37  void Redraw(Bool_t resetCameras=kFALSE);
38 
39  virtual void AddScene(REveScene* scene);
40  // XXX Missing RemoveScene() ????
41 
42  void RemoveElementLocal(REveElement *el) override;
43  void RemoveElementsLocal() override;
44 };
45 
46 
47 ////////////////////////////////////////////////////////////////////////////////
48 /// REveViewerList
49 /// List of Viewers providing common operations on REveViewer collections.
50 ////////////////////////////////////////////////////////////////////////////////
51 
53 {
54 private:
55  REveViewerList(const REveViewerList&); // Not implemented
56  REveViewerList& operator=(const REveViewerList&); // Not implemented
57 
58 protected:
60 
63 
64  void HandleTooltip();
65 
66 public:
67  REveViewerList(const std::string &n="REveViewerList", const std::string &t="");
68  virtual ~REveViewerList();
69 
70  void AddElement(REveElement* el) override;
71  void RemoveElementLocal(REveElement* el) override;
72  void RemoveElementsLocal() override;
73 
74  // --------------------------------
75 
76  virtual void Connect();
77  virtual void Disconnect();
78 
79  void RepaintChangedViewers(Bool_t resetCameras, Bool_t dropLogicals);
80  void RepaintAllViewers(Bool_t resetCameras, Bool_t dropLogicals);
81  void DeleteAnnotations();
82 
83  void SceneDestructing(REveScene* scene);
84 
85  // --------------------------------
86 
87  void OnMouseOver(TObject* obj, UInt_t state);
88  void OnReMouseOver(TObject* obj, UInt_t state);
89  void OnUnMouseOver(TObject* obj, UInt_t state);
90  void OnClicked(TObject *obj, UInt_t button, UInt_t state);
91  void OnReClicked(TObject *obj, UInt_t button, UInt_t state);
92  void OnUnClicked(TObject *obj, UInt_t button, UInt_t state);
93 
94  // --------------------------------
95 
96  Bool_t GetShowTooltip() const { return fShowTooltip; }
98 
101 
103  void SwitchColorSet();
104 };
105 
106 } // namespace Experimental
107 } // namespace ROOT
108 
109 #endif
void RepaintAllViewers(Bool_t resetCameras, Bool_t dropLogicals)
Repaint all viewers.
Definition: REveViewer.cxx:235
void OnClicked(TObject *obj, UInt_t button, UInt_t state)
Slot for global TGLViewer::Clicked().
Definition: REveViewer.cxx:376
void RemoveElementLocal(REveElement *el) override
Decompoundofy el, call base-class version.
Definition: REveViewer.cxx:142
REveViewer Reve representation of TGLViewer.
Definition: REveViewer.hxx:27
VSD Structures.
Definition: StringConv.hxx:21
virtual void Disconnect()
Disconnect from TGLViewer class-signals.
Definition: REveViewer.cxx:192
float Float_t
Definition: RtypesCore.h:53
void OnUnClicked(TObject *obj, UInt_t button, UInt_t state)
Slot for global TGLViewer::UnClicked().
Definition: REveViewer.cxx:410
void SceneDestructing(REveScene *scene)
Callback done from a REveScene destructor allowing proper removal of the scene from affected viewers...
Definition: REveViewer.cxx:264
bool Bool_t
Definition: RtypesCore.h:59
void Redraw(Bool_t resetCameras=kFALSE)
Redraw viewer immediately.
Definition: REveViewer.cxx:51
virtual ~REveViewerList()
Destructor.
Definition: REveViewer.cxx:124
Double_t x[n]
Definition: legend1.C:17
void OnReClicked(TObject *obj, UInt_t button, UInt_t state)
Slot for global TGLViewer::ReClicked().
Definition: REveViewer.cxx:393
void RemoveElementsLocal() override
Decompoundofy children, call base-class version.
Definition: REveViewer.cxx:153
void RemoveElementsLocal() override
Remove all children, forwarded to GLViewer.
Definition: REveViewer.cxx:93
void OnMouseOver(TObject *obj, UInt_t state)
Slot for global TGLViewer::MouseOver() signal.
Definition: REveViewer.cxx:310
REveViewer & operator=(const REveViewer &)
void SetColorBrightness(Float_t b)
Set color brightness.
Definition: REveViewer.cxx:421
virtual ~REveViewer()
Destructor.
Definition: REveViewer.cxx:45
void OnUnMouseOver(TObject *obj, UInt_t state)
Slot for global TGLViewer::UnMouseOver().
Definition: REveViewer.cxx:354
unsigned int UInt_t
Definition: RtypesCore.h:42
virtual void AddScene(REveScene *scene)
Add &#39;scene&#39; to the list of scenes.
Definition: REveViewer.cxx:60
REveViewerList & operator=(const REveViewerList &)
void AddElement(REveElement *el) override
Call base-class implementation.
Definition: REveViewer.cxx:134
const Bool_t kFALSE
Definition: RtypesCore.h:88
REveViewer(const REveViewer &)
REveViewerList List of Viewers providing common operations on REveViewer collections.
Definition: REveViewer.hxx:52
void RemoveElementLocal(REveElement *el) override
Remove element &#39;el&#39; from the list of children and also remove appropriate GLScene from GLViewer&#39;s lis...
Definition: REveViewer.cxx:82
Mother of all ROOT objects.
Definition: TObject.h:37
void SwitchColorSet()
Switch background color.
Definition: REveViewer.cxx:429
void HandleTooltip()
Show / hide tooltip for various MouseOver events.
Definition: REveViewer.cxx:279
void DeleteAnnotations()
Delete annotations from all viewers.
Definition: REveViewer.cxx:252
void OnReMouseOver(TObject *obj, UInt_t state)
Slot for global TGLViewer::ReMouseOver().
Definition: REveViewer.cxx:332
void RepaintChangedViewers(Bool_t resetCameras, Bool_t dropLogicals)
Repaint viewers that are tagged as changed.
Definition: REveViewer.cxx:216
REveViewerList(const REveViewerList &)
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
Definition: TRolke.cxx:630
virtual void Connect()
Connect to TGLViewer class-signals.
Definition: REveViewer.cxx:168
const Int_t n
Definition: legend1.C:16