VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends
vtkContextScene Class Reference

Provides a 2D scene for vtkContextItem objects. More...

#include <vtkContextScene.h>

Inheritance diagram for vtkContextScene:
Inheritance graph
[legend]
Collaboration diagram for vtkContextScene:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkObject Superclass
enum  {
  SELECTION_NONE = 0, SELECTION_DEFAULT, SELECTION_ADDITION, SELECTION_SUBTRACTION,
  SELECTION_TOGGLE
}

Public Member Functions

virtual int IsA (const char *type)
vtkContextSceneNewInstance () const
virtual void PrintSelf (ostream &os, vtkIndent indent)
virtual bool Paint (vtkContext2D *painter)
unsigned int AddItem (vtkAbstractContextItem *item)
bool RemoveItem (vtkAbstractContextItem *item)
bool RemoveItem (unsigned int index)
vtkAbstractContextItemGetItem (unsigned int index)
unsigned int GetNumberOfItems ()
void ClearItems ()
virtual void SetAnnotationLink (vtkAnnotationLink *link)
virtual int GetViewWidth ()
virtual int GetViewHeight ()
int GetSceneWidth ()
int GetSceneHeight ()
virtual void SetRenderer (vtkRenderer *renderer)
void ReleaseGraphicsResources ()
vtkWeakPointer< vtkContext2DGetLastPainter ()
vtkAbstractContextBufferIdGetBufferId ()
virtual void SetTransform (vtkTransform2D *transform)
vtkTransform2DGetTransform ()
bool HasTransform ()
virtual vtkAnnotationLinkGetAnnotationLink ()
virtual void SetGeometry (int, int)
void SetGeometry (int[2])
virtual intGetGeometry ()
virtual void GetGeometry (int &, int &)
virtual void GetGeometry (int[2])
virtual void SetUseBufferId (bool)
virtual bool GetUseBufferId ()
virtual void SetScaleTiles (bool)
virtual bool GetScaleTiles ()
virtual void ScaleTilesOn ()
virtual void ScaleTilesOff ()
void SetDirty (bool isDirty)
bool GetDirty () const

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkContextSceneSafeDownCast (vtkObjectBase *o)
static vtkContextSceneNew ()

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkContextScene ()
 ~vtkContextScene ()
virtual bool ProcessSelectionEvent (unsigned int rect[5])
virtual bool MouseMoveEvent (const vtkContextMouseEvent &event)
virtual bool ButtonPressEvent (const vtkContextMouseEvent &event)
virtual bool ButtonReleaseEvent (const vtkContextMouseEvent &event)
virtual bool DoubleClickEvent (const vtkContextMouseEvent &event)
virtual bool MouseWheelEvent (int delta, const vtkContextMouseEvent &event)
virtual bool KeyPressEvent (const vtkContextKeyEvent &keyEvent)
virtual bool KeyReleaseEvent (const vtkContextKeyEvent &keyEvent)
virtual void PaintIds ()
void TestBufferIdSupport ()
vtkIdType GetPickedItem (int x, int y)
vtkAbstractContextItemGetPickedItem ()
void UpdateBufferId ()

Protected Attributes

vtkAnnotationLinkAnnotationLink
int Geometry [2]
vtkContextScenePrivateChildren
vtkWeakPointer< vtkContext2DLastPainter
vtkWeakPointer< vtkRendererRenderer
vtkAbstractContextBufferIdBufferId
bool BufferIdDirty
bool UseBufferId
bool BufferIdSupportTested
bool BufferIdSupported
bool ScaleTiles
vtkTransform2DTransform
Private * Storage

Friends

class vtkContextInteractorStyle

Detailed Description

Provides a 2D scene for vtkContextItem objects.

Provides a 2D scene that vtkContextItem objects can be added to. Manages the items, ensures that they are rendered at the right times and passes on mouse events.

Tests:
vtkContextScene (Tests)

Definition at line 48 of file vtkContextScene.h.


Member Typedef Documentation

Reimplemented from vtkObject.

Definition at line 51 of file vtkContextScene.h.


Member Enumeration Documentation

anonymous enum

Enum of valid selection modes for charts in the scene

Enumerator:
SELECTION_NONE 
SELECTION_DEFAULT 
SELECTION_ADDITION 
SELECTION_SUBTRACTION 
SELECTION_TOGGLE 

Definition at line 171 of file vtkContextScene.h.


Constructor & Destructor Documentation


Member Function Documentation

static int vtkContextScene::IsTypeOf ( const char *  name) [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

virtual int vtkContextScene::IsA ( const char *  name) [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

Reimplemented from vtkObject.

virtual vtkObjectBase* vtkContextScene::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkObject.

Reimplemented from vtkObject.

virtual void vtkContextScene::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkObject.

static vtkContextScene* vtkContextScene::New ( ) [static]

Creates a 2D Painter object.

Reimplemented from vtkObject.

virtual bool vtkContextScene::Paint ( vtkContext2D painter) [virtual]

Paint event for the chart, called whenever the chart needs to be drawn

Add child items to this item. Increments reference count of item.

Returns:
the index of the child item.

Remove child item from this item. Decrements reference count of item.

Parameters:
itemthe item to be removed.
Returns:
true on success, false otherwise.
bool vtkContextScene::RemoveItem ( unsigned int  index)

Remove child item from this item. Decrements reference count of item.

Parameters:
indexof the item to be removed.
Returns:
true on success, false otherwise.

Get the item at the specified index.

Returns:
the item at the specified index (null if index is invalid).

Get the number of child items.

Remove all child items from this item.

virtual void vtkContextScene::SetAnnotationLink ( vtkAnnotationLink link) [virtual]

Set the vtkAnnotationLink for the chart.

Get the vtkAnnotationLink for the chart.

virtual void vtkContextScene::SetGeometry ( int  ,
int   
) [virtual]

Set the width and height of the scene in pixels.

Set the width and height of the scene in pixels.

virtual int* vtkContextScene::GetGeometry ( ) [virtual]

Get the width and height of the scene in pixels.

virtual void vtkContextScene::GetGeometry ( int ,
int  
) [virtual]

Get the width and height of the scene in pixels.

virtual void vtkContextScene::GetGeometry ( int  [2]) [virtual]

Get the width and height of the scene in pixels.

virtual void vtkContextScene::SetUseBufferId ( bool  ) [virtual]

Set whether the scene should use the color buffer. Default is true.

virtual bool vtkContextScene::GetUseBufferId ( ) [virtual]

Get whether the scene is using the color buffer. Default is true.

virtual int vtkContextScene::GetViewWidth ( ) [virtual]

Get the width of the view

virtual int vtkContextScene::GetViewHeight ( ) [virtual]

Get the height of the view

Get the width of the scene.

Get the height of the scene.

virtual void vtkContextScene::SetScaleTiles ( bool  ) [virtual]

Whether to scale the scene transform when tiling, for example when using vtkWindowToImageFilter to take a large screenshot. The default is true.

virtual bool vtkContextScene::GetScaleTiles ( ) [virtual]

Whether to scale the scene transform when tiling, for example when using vtkWindowToImageFilter to take a large screenshot. The default is true.

virtual void vtkContextScene::ScaleTilesOn ( ) [virtual]

Whether to scale the scene transform when tiling, for example when using vtkWindowToImageFilter to take a large screenshot. The default is true.

virtual void vtkContextScene::ScaleTilesOff ( ) [virtual]

Whether to scale the scene transform when tiling, for example when using vtkWindowToImageFilter to take a large screenshot. The default is true.

virtual void vtkContextScene::SetRenderer ( vtkRenderer renderer) [virtual]

This should not be necessary as the context view should take care of rendering.

void vtkContextScene::SetDirty ( bool  isDirty)

Inform the scene that something changed that requires a repaint of the scene. This should only be used by the vtkContextItem derived objects in a scene in their event handlers.

bool vtkContextScene::GetDirty ( ) const

Inform the scene that something changed that requires a repaint of the scene. This should only be used by the vtkContextItem derived objects in a scene in their event handlers.

Release graphics resources hold by the scene.

Last painter used. Not part of the end-user API. Can be used by context items to create their own colorbuffer id (when a context item is a container).

Return buffer id. Not part of the end-user API. Can be used by context items to initialize their own colorbuffer id (when a context item is a container).

virtual void vtkContextScene::SetTransform ( vtkTransform2D transform) [virtual]

Set the transform for the scene.

Get the transform for the scene.

bool vtkContextScene::HasTransform ( ) [inline]

Check whether the scene has a transform.

Definition at line 167 of file vtkContextScene.h.

virtual bool vtkContextScene::ProcessSelectionEvent ( unsigned int  rect[5]) [protected, virtual]

Process a rubber band selection event.

virtual bool vtkContextScene::MouseMoveEvent ( const vtkContextMouseEvent event) [protected, virtual]

Process a mouse move event.

virtual bool vtkContextScene::ButtonPressEvent ( const vtkContextMouseEvent event) [protected, virtual]

Process a mouse button press event.

virtual bool vtkContextScene::ButtonReleaseEvent ( const vtkContextMouseEvent event) [protected, virtual]

Process a mouse button release event.

virtual bool vtkContextScene::DoubleClickEvent ( const vtkContextMouseEvent event) [protected, virtual]

Process a mouse button double click event.

virtual bool vtkContextScene::MouseWheelEvent ( int  delta,
const vtkContextMouseEvent event 
) [protected, virtual]

Process a mouse wheel event where delta is the movement forward or back.

virtual bool vtkContextScene::KeyPressEvent ( const vtkContextKeyEvent keyEvent) [protected, virtual]

Process a key press event.

virtual bool vtkContextScene::KeyReleaseEvent ( const vtkContextKeyEvent keyEvent) [protected, virtual]

Process a key release event.

virtual void vtkContextScene::PaintIds ( ) [protected, virtual]

Paint the scene in a special mode to build a cache for picking. Use internally.

Test if BufferId is supported by the OpenGL context.

vtkIdType vtkContextScene::GetPickedItem ( int  x,
int  y 
) [protected]

Return the item id under mouse cursor at position (x,y). Return -1 if there is no item under the mouse cursor.

Postcondition:
valid_result: result>=-1 && result<this->GetNumberOfItems()

Return the item under the mouse. If no item is under the mouse, the method returns a null pointer.

void vtkContextScene::UpdateBufferId ( ) [protected]

Make sure the buffer id used for picking is up-to-date.


Friends And Related Function Documentation

friend class vtkContextInteractorStyle [friend]

The vtkContextInteractorStyle class delegates all of the events to the scene, accessing protected API.

Definition at line 235 of file vtkContextScene.h.


Member Data Documentation

Definition at line 228 of file vtkContextScene.h.

Definition at line 231 of file vtkContextScene.h.

Private* vtkContextScene::Storage [protected]

Definition at line 239 of file vtkContextScene.h.

This structure provides a list of children, along with convenience functions to paint the children etc. It is derived from std::vector<vtkAbstractContextItem>, defined in a private header.

Definition at line 246 of file vtkContextScene.h.

Definition at line 248 of file vtkContextScene.h.

Definition at line 250 of file vtkContextScene.h.

Definition at line 252 of file vtkContextScene.h.

Definition at line 253 of file vtkContextScene.h.

bool vtkContextScene::UseBufferId [protected]

Definition at line 255 of file vtkContextScene.h.

Definition at line 257 of file vtkContextScene.h.

Definition at line 258 of file vtkContextScene.h.

bool vtkContextScene::ScaleTiles [protected]

Definition at line 260 of file vtkContextScene.h.

The scene level transform.

Definition at line 263 of file vtkContextScene.h.


The documentation for this class was generated from the following file: