Represents a mouse cursor image. More...
#include <juce_MouseCursor.h>
Public Types | |
enum | StandardCursorType { ParentCursor = 0, NoCursor, NormalCursor, WaitCursor, IBeamCursor, CrosshairCursor, CopyingCursor, PointingHandCursor, DraggingHandCursor, LeftRightResizeCursor, UpDownResizeCursor, UpDownLeftRightResizeCursor, TopEdgeResizeCursor, BottomEdgeResizeCursor, LeftEdgeResizeCursor, RightEdgeResizeCursor, TopLeftCornerResizeCursor, TopRightCornerResizeCursor, BottomLeftCornerResizeCursor, BottomRightCornerResizeCursor, NumStandardCursorTypes } |
The set of available standard mouse cursors. More... | |
Public Member Functions | |
MouseCursor () noexcept | |
Creates the standard arrow cursor. More... | |
MouseCursor (const Image &image, int hotSpotX, int hotSpotY) | |
Creates a custom cursor from an image. More... | |
MouseCursor (const Image &image, int hotSpotX, int hotSpotY, float scaleFactor) | |
Creates a custom cursor from an image. More... | |
MouseCursor (const MouseCursor &) | |
Creates a copy of another cursor object. More... | |
MouseCursor (const ScaledImage &image, Point< int > hotSpot) | |
Creates a custom cursor from an image. More... | |
MouseCursor (MouseCursor &&) noexcept | |
Move constructor. More... | |
MouseCursor (StandardCursorType) | |
Creates one of the standard mouse cursor. More... | |
~MouseCursor () | |
Destructor. More... | |
bool | operator!= (const MouseCursor &) const noexcept |
Checks whether two mouse cursors are the same. More... | |
bool | operator!= (StandardCursorType type) const noexcept |
Checks whether this cursor is of the standard type mentioned. More... | |
MouseCursor & | operator= (const MouseCursor &) |
Copies this cursor from another object. More... | |
MouseCursor & | operator= (MouseCursor &&) noexcept |
Move assignment operator. More... | |
bool | operator== (const MouseCursor &) const noexcept |
Checks whether two mouse cursors are the same. More... | |
bool | operator== (StandardCursorType type) const noexcept |
Checks whether this cursor is of the standard type mentioned. More... | |
Static Public Member Functions | |
static void | hideWaitCursor () |
If showWaitCursor has been called, this will return the mouse to its normal state. More... | |
static void | showWaitCursor () |
Makes the system show its default 'busy' cursor. More... | |
Private Member Functions | |
PlatformSpecificHandle * | getHandle () const noexcept |
void | showInWindow (ComponentPeer *) const |
Private Attributes | |
std::shared_ptr< SharedCursorHandle > | cursorHandle |
Friends | |
class | MouseInputSourceInternal |
Represents a mouse cursor image.
This object can either be used to represent one of the standard mouse cursor shapes, or a custom one generated from an image.
@tags{GUI}
The set of available standard mouse cursors.
|
noexcept |
Creates the standard arrow cursor.
juce::MouseCursor::MouseCursor | ( | StandardCursorType | ) |
Creates one of the standard mouse cursor.
Creates a custom cursor from an image.
image | the image to use for the cursor - if this is bigger than the system can manage, it might get scaled down first, and might also have to be turned to black-and-white if it can't do colour cursors. |
hotSpotX | the x position of the cursor's hotspot within the image |
hotSpotY | the y position of the cursor's hotspot within the image |
juce::MouseCursor::MouseCursor | ( | const Image & | image, |
int | hotSpotX, | ||
int | hotSpotY, | ||
float | scaleFactor | ||
) |
Creates a custom cursor from an image.
image | the image to use for the cursor - if this is bigger than the system can manage, it might get scaled down first, and might also have to be turned to black-and-white if it can't do colour cursors. |
hotSpotX | the x position of the cursor's hotspot within the image |
hotSpotY | the y position of the cursor's hotspot within the image |
scaleFactor | the factor by which this image is larger than the target screen size of the cursor. |
juce::MouseCursor::MouseCursor | ( | const ScaledImage & | image, |
Point< int > | hotSpot | ||
) |
Creates a custom cursor from an image.
image | the image to use for the cursor - if this is bigger than the system can manage, it might get scaled down first, and might also have to be turned to black-and-white if it can't do colour cursors. |
hotSpot | the position of the cursor's hotspot within the image |
juce::MouseCursor::MouseCursor | ( | const MouseCursor & | ) |
Creates a copy of another cursor object.
juce::MouseCursor::~MouseCursor | ( | ) |
Destructor.
|
noexcept |
Move constructor.
|
privatenoexcept |
|
static |
If showWaitCursor has been called, this will return the mouse to its normal state.
This will look at what component is under the mouse, and update the cursor to be the correct one for that component.
|
noexcept |
Checks whether two mouse cursors are the same.
For custom cursors, two cursors created from the same image won't be recognised as the same, only MouseCursor objects that have been copied from the same object.
|
noexcept |
Checks whether this cursor is of the standard type mentioned.
MouseCursor& juce::MouseCursor::operator= | ( | const MouseCursor & | ) |
Copies this cursor from another object.
|
noexcept |
Move assignment operator.
|
noexcept |
Checks whether two mouse cursors are the same.
For custom cursors, two cursors created from the same image won't be recognised as the same, only MouseCursor objects that have been copied from the same object.
|
noexcept |
Checks whether this cursor is of the standard type mentioned.
|
private |
|
static |
Makes the system show its default 'busy' cursor.
This will turn the system cursor to an hourglass or spinning beachball until the next time the mouse is moved, or hideWaitCursor() is called.
This is handy if the message loop is about to block for a couple of seconds while busy and you want to give the user feedback about this.
|
friend |
|
private |