]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/Reve/Viewer.h
Separate import of standard macros into a special function so that
[u/mrichter/AliRoot.git] / EVE / Reve / Viewer.h
1 // $Header$
2
3 #ifndef REVE_Viewer_H
4 #define REVE_Viewer_H
5
6 #include <Reve/RenderElement.h>
7
8 class TGWindow;
9 class TGedEditor;
10 class TGLViewer;
11
12 namespace Reve {
13
14 class Scene;
15
16 /**************************************************************************/
17 // Viewer
18 /**************************************************************************/
19
20 class Viewer : public RenderElementList
21 {
22 private:
23   Viewer(const Viewer&);            // Not implemented
24   Viewer& operator=(const Viewer&); // Not implemented
25
26 protected:
27   TGLViewer *fGLViewer;
28
29 public:
30   Viewer(const Text_t* n="Viewer", const Text_t* t="");
31   virtual ~Viewer();
32
33   TGLViewer* GetGLViewer() const { return fGLViewer; }
34   void SetGLViewer(TGLViewer* s);
35   void SpawnGLViewer(const TGWindow* parent, TGedEditor* ged);
36
37   virtual void AddScene(Scene* scene);
38
39   virtual void RemoveElementLocal(RenderElement* el);
40   virtual void RemoveElementsLocal();
41
42   virtual TObject* GetEditorObject() const;
43
44   virtual Bool_t HandleElementPaste(RenderElement* el);
45
46   virtual const TGPicture* GetListTreeIcon() { return RenderElement::fgListTreeIcons[1]; }
47
48   ClassDef(Viewer, 0);
49 }; // endclass Viewer
50
51
52 /**************************************************************************/
53 // ViewerList
54 /**************************************************************************/
55
56 class ViewerList : public RenderElementList
57 {
58 private:
59   ViewerList(const ViewerList&);            // Not implemented
60   ViewerList& operator=(const ViewerList&); // Not implemented
61
62 protected:
63
64 public:
65   ViewerList(const Text_t* n="ViewerList", const Text_t* t="");
66   virtual ~ViewerList();
67
68   void RepaintChangedViewers(Bool_t resetCameras, Bool_t dropLogicals);
69   void RepaintAllViewers(Bool_t resetCameras, Bool_t dropLogicals);
70
71   void SceneDestructing(Scene* scene);
72
73   ClassDef(ViewerList, 0);
74 }; // endclass ViewerList
75
76 }
77
78 #endif