Logo ROOT  
Reference Guide
TGLManipSet.h
Go to the documentation of this file.
1// @(#)root/gl:$Id$
2// Author: Matevz Tadel, Feb 2007
3
4/*************************************************************************
5 * Copyright (C) 1995-2004, 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 ROOT_TGLManipSet
13#define ROOT_TGLManipSet
14
15#include "TGLOverlay.h"
16#include "TGLPShapeRef.h"
17
18class TGLManip;
19
21 public TGLPShapeRef
22{
23public:
25
26private:
27 TGLManipSet(const TGLManipSet&); // Not implemented
28 TGLManipSet& operator=(const TGLManipSet&); // Not implemented
29
30protected:
31 TGLManip *fManip[3]; //! manipulator store
32 EManip fType; //! current manipulator
33
34 Bool_t fDrawBBox; //! also draw bounding-box around physical
35
36public:
38 virtual ~TGLManipSet();
39
40 virtual void SetPShape(TGLPhysicalShape* shape);
41
42 virtual Bool_t MouseEnter(TGLOvlSelectRecord& selRec);
43 virtual Bool_t Handle(TGLRnrCtx& rnrCtx, TGLOvlSelectRecord& selRec,
44 Event_t* event);
45 virtual void MouseLeave();
46
47 virtual void Render(TGLRnrCtx& rnrCtx);
48
49 TGLManip* GetCurrentManip() const { return fManip[fType]; }
50
51 Int_t GetManipType() const { return fType; }
53 Bool_t GetDrawBBox() const { return fDrawBBox; }
54 void SetDrawBBox(Bool_t bb) { fDrawBBox = bb; }
55
56 ClassDef(TGLManipSet, 0); // A collection of available manipulators.
57}; // endclass TGLManipSet
58
59
60#endif
int Int_t
Definition: RtypesCore.h:45
bool Bool_t
Definition: RtypesCore.h:63
#define ClassDef(name, id)
Definition: Rtypes.h:325
int type
Definition: TGX11.cxx:121
Combine all available manipulators in a collection.
Definition: TGLManipSet.h:22
virtual Bool_t Handle(TGLRnrCtx &rnrCtx, TGLOvlSelectRecord &selRec, Event_t *event)
Handle overlay event.
Definition: TGLManipSet.cxx:86
TGLManip * fManip[3]
Definition: TGLManipSet.h:31
virtual ~TGLManipSet()
Destructor.
Definition: TGLManipSet.cxx:53
virtual Bool_t MouseEnter(TGLOvlSelectRecord &selRec)
Mouse has entered this element.
Definition: TGLManipSet.cxx:74
TGLManipSet & operator=(const TGLManipSet &)
Int_t GetManipType() const
Definition: TGLManipSet.h:51
Bool_t GetDrawBBox() const
Definition: TGLManipSet.h:53
EManip fType
manipulator store
Definition: TGLManipSet.h:32
void SetManipType(Int_t type)
Set manipulator type, range checked.
void SetDrawBBox(Bool_t bb)
Definition: TGLManipSet.h:54
TGLManipSet(const TGLManipSet &)
TGLManipSet()
also draw bounding-box around physical
Definition: TGLManipSet.cxx:38
Bool_t fDrawBBox
current manipulator
Definition: TGLManipSet.h:34
virtual void MouseLeave()
Mouse has left the element.
virtual void SetPShape(TGLPhysicalShape *shape)
Set phys-shape, override of virtual from TGLPShapeRef.
Definition: TGLManipSet.cxx:63
TGLManip * GetCurrentManip() const
Definition: TGLManipSet.h:49
virtual void Render(TGLRnrCtx &rnrCtx)
Render the manipulator and bounding-box.
Abstract base class for viewer manipulators, which allow direct in viewer manipulation of a (TGlPhysi...
Definition: TGLManip.h:29
An overlay element.
Definition: TGLOverlay.h:23
Selection record for overlay objects.
Base class for references to TGLPysicalShape that need to be notified when the shape is destroyed.
Definition: TGLPShapeRef.h:20
Concrete physical shape - a GL drawable.
The TGLRnrCtx class aggregates data for a given redering context as needed by various parts of the RO...
Definition: TGLRnrCtx.h:41
Event structure.
Definition: GuiTypes.h:174