Main Page | Namespace List | Class Hierarchy | Data Structures | File List | Data Fields | Globals

BaseSceneNode Class Reference

#include <basescenenode.h>

Inheritance diagram for BaseSceneNode:

Inheritance graph
[legend]
Collaboration diagram for BaseSceneNode:

Collaboration graph
[legend]

Public Member Functions

virtual void get_boundrect (double &, double &, double &, double &)=0
virtual void get_scenerect (double &, double &, double &, double &)
virtual bool handle_event (Event *)
virtual bool handle_message (Message *)
virtual bool check_event_fitspixels (Event *)=0
virtual BaseSceneNodeget_child (void)
virtual void translate (double dx, double dy)
virtual void rotate (double ax, double ay, double rad)
virtual void move (double newx, double newy)
virtual ~BaseSceneNode ()

Protected Member Functions

bool check_event_fitsrect (Event *e)
bool check_node_visible (Event *e)
void resize (double newsize)
double get_size (void)

Static Protected Attributes

std::map< BaseSceneNode *,
double > 
resize_map

Constructor & Destructor Documentation

BaseSceneNode::~BaseSceneNode  )  [virtual]
 


Member Function Documentation

bool BaseSceneNode::check_event_fitsrect Event e  )  [protected]
 

Here is the call graph for this function:

bool BaseSceneNode::check_node_visible Event e  )  [protected]
 

Here is the call graph for this function:

void BaseSceneNode::resize double  newsize  )  [protected]
 

double BaseSceneNode::get_size void   )  [protected]
 

virtual void BaseSceneNode::get_boundrect double &  ,
double &  ,
double &  ,
double & 
[pure virtual]
 

This function should be overloaded in every node to provide for event handling and repaint.

Implemented in BorderLayer< SP >, DefaultCursorNode, HUDGroupNode, ZoomDecorator< ZP, maxzoom >, GroupNode, LeafNode, and SceneNode.

void BaseSceneNode::get_scenerect double &  ,
double &  ,
double &  ,
double & 
[virtual]
 

This function is used to compute scene bounds. Certain types of nodes, e.g. HUDGroups will return an invalid rect here.
get_boundrect() is aliased to get_boundrect in BaseSceneNode and there is normally no need to override it.

Reimplemented in HUDGroupNode, and GroupNode.

Here is the call graph for this function:

bool BaseSceneNode::handle_event Event  )  [virtual]
 

call the base event handler in all nodes because it provides checks for node visibility and mouse event fitting into bounding rectangle.

Reimplemented in ActiveLeaf, BorderLayer< SP >, ContainerNode, CursorPolicyNode, DefaultCursorNode, EventFilter, AreaFilter, HUDGroupNode, ZoomDecorator< ZP, maxzoom >, ZoomSceneNode< ZP, maxzoom >, GroupNode, LayerNode, LeafNode, and SceneNode.

Here is the call graph for this function:

bool BaseSceneNode::handle_message Message  )  [virtual]
 

messages are intended to a certain node but can be processed by nodes directly higher up (i.e. decorator nodes). Beware that this can be slow for large graphs but using smart group nodes can help.

Reimplemented in ActiveLeaf, DefaultCursorNode, GroupNode, LeafNode, and SceneNode.

Here is the call graph for this function:

virtual bool BaseSceneNode::check_event_fitspixels Event  )  [pure virtual]
 

This function should be overloaded in every node to provide for event handling.

Implemented in DefaultCursorNode, ZoomDecorator< ZP, maxzoom >, GroupNode, and SceneNode.

BaseSceneNode * BaseSceneNode::get_child void   )  [virtual]
 

this one always returns NULL for BaseSceneNode. SceneNode and GroupNode override this function.

Reimplemented in SceneNode.

virtual void BaseSceneNode::translate double  dx,
double  dy
[inline, virtual]
 

Reimplemented in GroupNode, LeafNode, and SceneNode.

virtual void BaseSceneNode::rotate double  ax,
double  ay,
double  rad
[inline, virtual]
 

Reimplemented in GroupNode, LeafNode, and SceneNode.

virtual void BaseSceneNode::move double  newx,
double  newy
[inline, virtual]
 

Reimplemented in GroupNode, LeafNode, and SceneNode.


Field Documentation

std::map< BaseSceneNode *, double > BaseSceneNode::resize_map [static, protected]
 


The documentation for this class was generated from the following files:
Generated on Wed Jun 23 18:47:28 2004 for cZUI by doxygen 1.3.5