CEL

Public API Reference

Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members

iPcMeshSelect Struct Reference

This is a property class for selecting meshes. More...

#include <propclass/meshsel.h>

List of all members.

Public Member Functions

virtual void AddMeshSelectListener (iPcMeshSelectListener *listener)=0
 Add a listener to listen to mouse selection.
virtual void RemoveMeshSelectListener (iPcMeshSelectListener *listener)=0
 Remove a mesh selection listener.
virtual void SetCamera (iPcCamera *camera)=0
 Set the camera to use for mesh selection.
virtual void SetMouseButtons (int buttons)=0
 Indicate (with a bit-mask) for which buttons this mesh selector will work.
virtual int GetMouseButtons () const =0
 Get the bit-mask for the supported buttons.
virtual void SetGlobalSelection (bool glob)=0
 Set global/local selection.
virtual bool HasGlobalSelection () const =0
 Get value of global/local selection.
virtual void SetFollowMode (bool follow)=0
 If true then follow the mouse so that up/down events come through immediatelly when the mouse leaves the object (even if mouse up has not yet happened).
virtual bool HasFollowMode () const =0
 Get the value of follow mode.
virtual void SetFollowAlwaysMode (bool followalways)=0
 If true then also send move messages when the entity is not selected but the mouse is positioned on top of the entity.
virtual bool HasFollowAlwaysMode () const =0
 Get the value of follow always mode.
virtual void SetDragMode (bool drag)=0
 If true then it is possible to drag the selected object.
virtual bool HasDragMode () const =0
 Get value of drag mode.
virtual void SetDragPlaneNormal (const csVector3 &drag_normal, bool camera_space)=0
 Set the normal of the plane on which the dragged object will move.
virtual void GetDragPlaneNormal (csVector3 &drag_normal, bool &camera_space) const =0
 Get the drag normal and camera space flag.
virtual void SetSendmoveEvent (bool mov)=0
 If true then also send messages on mouse move (only between mouse-down and mouse-up (message 'selectmesh_move').
virtual bool HasSendmoveEvent () const =0
 Get the value of send move events.
virtual void SetSendupEvent (bool su)=0
 If true then send mouse-up events (message 'selectmesh_up').
virtual bool HasSendupEvent () const =0
 Get the value of send up events.
virtual void SetSenddownEvent (bool sd)=0
 If true then send mouse-down events (message 'selectmesh_down').
virtual bool HasSenddownEvent () const =0
 Get the value of send down events.
virtual void SetMaxSelectionDistance (float distance)=0
 Set the maximum distance to use for mesh selection.
virtual float GetMaxSelectionDistance () const =0
 Get the maximum distance to use for mesh selection.


Detailed Description

This is a property class for selecting meshes.

This property class can send out the following messages to the behaviour (add prefix 'cel.parameter.' to get the ID for parameters):

This property class supports the following actions (add prefix 'cel.action.' to get the ID of the action and add prefix 'cel.parameter.' to get the ID of the parameter):

This property class supports the following properties (add prefix 'cel.property.' to get the ID of the property:

Definition at line 96 of file meshsel.h.


Member Function Documentation

virtual void iPcMeshSelect::AddMeshSelectListener iPcMeshSelectListener listener  )  [pure virtual]
 

Add a listener to listen to mouse selection.

These listeners are called right before the behaviour is called.

virtual void iPcMeshSelect::GetDragPlaneNormal csVector3 &  drag_normal,
bool &  camera_space
const [pure virtual]
 

Get the drag normal and camera space flag.

virtual float iPcMeshSelect::GetMaxSelectionDistance  )  const [pure virtual]
 

Get the maximum distance to use for mesh selection.

virtual int iPcMeshSelect::GetMouseButtons  )  const [pure virtual]
 

Get the bit-mask for the supported buttons.

virtual bool iPcMeshSelect::HasDragMode  )  const [pure virtual]
 

Get value of drag mode.

virtual bool iPcMeshSelect::HasFollowAlwaysMode  )  const [pure virtual]
 

Get the value of follow always mode.

virtual bool iPcMeshSelect::HasFollowMode  )  const [pure virtual]
 

Get the value of follow mode.

virtual bool iPcMeshSelect::HasGlobalSelection  )  const [pure virtual]
 

Get value of global/local selection.

virtual bool iPcMeshSelect::HasSenddownEvent  )  const [pure virtual]
 

Get the value of send down events.

virtual bool iPcMeshSelect::HasSendmoveEvent  )  const [pure virtual]
 

Get the value of send move events.

virtual bool iPcMeshSelect::HasSendupEvent  )  const [pure virtual]
 

Get the value of send up events.

virtual void iPcMeshSelect::RemoveMeshSelectListener iPcMeshSelectListener listener  )  [pure virtual]
 

Remove a mesh selection listener.

virtual void iPcMeshSelect::SetCamera iPcCamera camera  )  [pure virtual]
 

Set the camera to use for mesh selection.

virtual void iPcMeshSelect::SetDragMode bool  drag  )  [pure virtual]
 

If true then it is possible to drag the selected object.

Note that drag mode is usually used in combination with follow mode. (default false).

virtual void iPcMeshSelect::SetDragPlaneNormal const csVector3 &  drag_normal,
bool  camera_space
[pure virtual]
 

Set the normal of the plane on which the dragged object will move.

The actual plane itself will be calculated depending on the current position of the object and that given normal. The normal can be given in camera space or in world space. Default is the 0,0,1 normal in camera space which means that the object will drag according to screen coordinates.

virtual void iPcMeshSelect::SetFollowAlwaysMode bool  followalways  )  [pure virtual]
 

If true then also send move messages when the entity is not selected but the mouse is positioned on top of the entity.

Default false.

virtual void iPcMeshSelect::SetFollowMode bool  follow  )  [pure virtual]
 

If true then follow the mouse so that up/down events come through immediatelly when the mouse leaves the object (even if mouse up has not yet happened).

Otherwise mouse up event will arrive only when the mouse is released independent of wether or not the mouse is above the object at release time. Default false.

virtual void iPcMeshSelect::SetGlobalSelection bool  glob  )  [pure virtual]
 

Set global/local selection.

With local selection the Behaviour will only get messages when it's own mesh entity is selected (default). With global selection the Behaviour will get messages for selection of all mesh entities.

virtual void iPcMeshSelect::SetMaxSelectionDistance float  distance  )  [pure virtual]
 

Set the maximum distance to use for mesh selection.

This is the distance in world units from the camera, into the scene.

virtual void iPcMeshSelect::SetMouseButtons int  buttons  )  [pure virtual]
 

Indicate (with a bit-mask) for which buttons this mesh selector will work.

By default this is mouse button one. Use a combination of CEL_MOUSE_... flags.

virtual void iPcMeshSelect::SetSenddownEvent bool  sd  )  [pure virtual]
 

If true then send mouse-down events (message 'selectmesh_down').

Default true.

virtual void iPcMeshSelect::SetSendmoveEvent bool  mov  )  [pure virtual]
 

If true then also send messages on mouse move (only between mouse-down and mouse-up (message 'selectmesh_move').

Default false.

virtual void iPcMeshSelect::SetSendupEvent bool  su  )  [pure virtual]
 

If true then send mouse-up events (message 'selectmesh_up').

Default true.


The documentation for this struct was generated from the following file:
Generated for CEL: Crystal Entity Layer by doxygen 1.4.4