Crazy Eddie's GUI System  0.8.4
CEGUI::MouseCursor Class Reference

Class that provides mouse cursor support. More...

+ Inheritance diagram for CEGUI::MouseCursor:
+ Collaboration diagram for CEGUI::MouseCursor:

List of all members.

Public Member Functions

 MouseCursor (void)
 Constructor for MouseCursor objects.
 ~MouseCursor (void)
 Destructor for MouseCursor objects.
void setImage (const String &name)
 Set the current mouse cursor image.
void setImage (const Image *image)
 Set the current mouse cursor image.
const ImagegetImage (void) const
 Get the current mouse cursor image.
void setDefaultImage (const Image *image)
 Set the image to be used as the default mouse cursor.
void setDefaultImage (const String &name)
 Set the image to be used as the default mouse cursor.
const ImagegetDefaultImage () const
 Return the currently set default mouse cursor image.
void draw (void) const
 Makes the cursor draw itself.
void setPosition (const Vector2f &position)
 Set the current mouse cursor position.
void offsetPosition (const Vector2f &offset)
 Offset the mouse cursor position by the deltas specified in offset.
void setConstraintArea (const Rectf *area)
 Set the area that the mouse cursor is constrained to.
void setUnifiedConstraintArea (const URect *area)
 Set the area that the mouse cursor is constrained to.
void hide (void)
 Hides the mouse cursor.
void show (void)
 Shows the mouse cursor.
void setVisible (bool visible)
 Set the visibility of the mouse cursor.
bool isVisible (void) const
 return whether the mouse cursor is visible.
Vector2f getPosition (void) const
 Return the current mouse cursor position as a pixel offset from the top-left corner of the display.
Rectf getConstraintArea (void) const
 return the current constraint area of the mouse cursor.
const URectgetUnifiedConstraintArea (void) const
 return the current constraint area of the mouse cursor.
Vector2f getDisplayIndependantPosition (void) const
 Return the current mouse cursor position as display resolution independant values.
void notifyDisplaySizeChanged (const Sizef &new_size)
 Function used to notify the MouseCursor of changes in the display size.
void setExplicitRenderSize (const Sizef &size)
 Set an explicit size for the mouse cursor image to be drawn at.
const SizefgetExplicitRenderSize () const
 Return the explicit render size currently set. A return size of (0, 0) indicates that the real image size will be used.
void invalidate ()
 Mark the cached geometry as invalid so it will be recached next time the mouse cursor is drawn.

Static Public Member Functions

static void setInitialMousePosition (const Vector2f &position)
 Static function to pre-initialise the mouse cursor position (prior to MouseCursor instantiation).

Static Public Attributes

static const String EventNamespace
 Namespace for global events.
static const String EventImageChanged
static const String EventDefaultImageChanged

Protected Member Functions

virtual void onImageChanged (MouseCursorEventArgs &e)
 Event triggered internally when mouse cursor image is changed.
virtual void onDefaultImageChanged (MouseCursorEventArgs &e)
 Event triggered internally when mouse cursor default image is changed.

Detailed Description

Class that provides mouse cursor support.


Member Function Documentation

void CEGUI::MouseCursor::draw ( void  ) const

Makes the cursor draw itself.

Returns:
Nothing

return the current constraint area of the mouse cursor.

Returns:
Rect object describing the active area that the mouse cursor is constrained to.

Return the currently set default mouse cursor image.

Returns:
Pointer to the current default image used for the mouse cursor. May return 0 if default cursor has not been set, or has intentionally been set to 0 - which results in a blank default cursor.

Return the current mouse cursor position as display resolution independant values.

Returns:
Point object describing the current mouse cursor position as resolution independant values that range from 0.0f to 1.0f, where 0.0f represents the left-most and top-most positions, and 1.0f represents the right-most and bottom-most positions.
const Image* CEGUI::MouseCursor::getImage ( void  ) const [inline]

Get the current mouse cursor image.

Returns:
The current image used to draw mouse cursor.
Vector2f CEGUI::MouseCursor::getPosition ( void  ) const [inline]

Return the current mouse cursor position as a pixel offset from the top-left corner of the display.

Returns:
Point object describing the mouse cursor position in screen pixels.

return the current constraint area of the mouse cursor.

Returns:
URect object describing the active area that the mouse cursor is constrained to.
void CEGUI::MouseCursor::hide ( void  ) [inline]

Hides the mouse cursor.

Returns:
Nothing.
bool CEGUI::MouseCursor::isVisible ( void  ) const [inline]

return whether the mouse cursor is visible.

Returns:
true if the mouse cursor is visible, false if the mouse cursor is hidden.

Function used to notify the MouseCursor of changes in the display size.

You normally would not call this directly; rather you would call the function System::notifyDisplaySizeChanged and that will then call this function for you.

Parameters:
new_sizeSize object describing the new display size in pixels.
void CEGUI::MouseCursor::offsetPosition ( const Vector2f offset)

Offset the mouse cursor position by the deltas specified in offset.

Parameters:
offsetPoint object which describes the amount to move the cursor in each axis.
Returns:
Nothing.

Set the area that the mouse cursor is constrained to.

Parameters:
areaPointer to a Rect object that describes the area of the display that the mouse is allowed to occupy. The given area will be clipped to the current Renderer screen area - it is never possible for the mouse to leave this area. If this parameter is NULL, the constraint is set to the size of the current Renderer screen area.
Returns:
Nothing.
void CEGUI::MouseCursor::setDefaultImage ( const Image image)

Set the image to be used as the default mouse cursor.

Parameters:
imagePointer to an image object that is to be used as the default mouse cursor. To have no cursor rendered by default, you can specify 0 here.

Set the image to be used as the default mouse cursor.

Parameters:
nameString object that contains the name of the Image that is to be used.
Exceptions:
UnknownObjectExceptionthrown if no Image named name exists.

Set an explicit size for the mouse cursor image to be drawn at.

This will override the size that is usually obtained directly from the mouse cursor image and will stay in effect across changes to the mouse cursor image.

Setting this size to (0, 0) will revert back to using the size as obtained from the Image itself.

Parameters:
sizeReference to a Size object that describes the size at which the cursor image should be drawn in pixels.
void CEGUI::MouseCursor::setImage ( const String name)

Set the current mouse cursor image.

Parameters:
nameString object holding the name of the desired Image.
Returns:
Nothing.
Exceptions:
UnknownObjectExceptionthrown if Image name is not known.
static void CEGUI::MouseCursor::setInitialMousePosition ( const Vector2f position) [static]

Static function to pre-initialise the mouse cursor position (prior to MouseCursor instantiation).

Calling this function prior to instantiating MouseCursor will prevent the mouse having it's position set to the middle of the initial view. Calling this function after the MouseCursor is instantiated will have no effect.

Parameters:
positionReference to a point object describing the initial pixel position to be used for the mouse cursor.
void CEGUI::MouseCursor::setPosition ( const Vector2f position)

Set the current mouse cursor position.

Parameters:
positionPoint object describing the new location for the mouse. This will be clipped to within the renderer screen area.

Set the area that the mouse cursor is constrained to.

Parameters:
areaPointer to a URect object that describes the area of the display that the mouse is allowed to occupy. The given area will be clipped to the current Renderer screen area - it is never possible for the mouse to leave this area. If this parameter is NULL, the constraint is set to the size of the current Renderer screen area.
Returns:
Nothing.
void CEGUI::MouseCursor::setVisible ( bool  visible) [inline]

Set the visibility of the mouse cursor.

Parameters:
visible'true' to show the mouse cursor, 'false' to hide it.
Returns:
Nothing.
void CEGUI::MouseCursor::show ( void  ) [inline]

Shows the mouse cursor.

Returns:
Nothing.

Member Data Documentation

Name of Event fired when the Image to be used as a default mouse cursor image is changed. Handlers are passed a const MouseCursorEventArgs reference with MouseCursorEventArgs::mouseCursor set to the MouseCursor that has had it's default image changed, and MouseCursorEventArgs::image set to the Image that is now set as the default (may be 0).

Name of Event fired when the mouse cursor image is changed. Handlers are passed a const MouseCursorEventArgs reference with MouseCursorEventArgs::mouseCursor set to the MouseCursor that has had it's image changed, and MouseCursorEventArgs::image set to the Image that is now set for the MouseCursor (may be 0).

 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends