#include <wx/uiaction.h>
wxUIActionSimulator is a class used to simulate user interface actions such as a mouse click or a key press.
Common usage for this class would be to provide playback and record (aka macro recording) functionality for users, or to drive unit tests by simulating user sessions.
See the wxUIActionSimulator Sample for an example of using this class.
Public Member Functions | |
wxUIActionSimulator () | |
Default constructor. More... | |
bool | MouseMove (long x, long y) |
Move the mouse to the specified coordinates. More... | |
bool | MouseMove (const wxPoint &point) |
Move the mouse to the specified coordinates. More... | |
bool | MouseDown (int button=wxMOUSE_BTN_LEFT) |
Press a mouse button. More... | |
bool | MouseUp (int button=wxMOUSE_BTN_LEFT) |
Release a mouse button. More... | |
bool | MouseClick (int button=wxMOUSE_BTN_LEFT) |
Click a mouse button. More... | |
bool | MouseDblClick (int button=wxMOUSE_BTN_LEFT) |
Double-click a mouse button. More... | |
bool | MouseDragDrop (long x1, long y1, long x2, long y2, int button=wxMOUSE_BTN_LEFT) |
Perform a drag and drop operation. More... | |
bool | KeyDown (int keycode, int modifiers=wxMOD_NONE) |
Press a key. More... | |
bool | KeyUp (int keycode, int modifiers=wxMOD_NONE) |
Release a key. More... | |
bool | Char (int keycode, int modifiers=wxMOD_NONE) |
Press and release a key. More... | |
bool | Select (const wxString &text) |
Simulate selection of an item with the given text. More... | |
bool | Text (const char *text) |
Emulate typing in the keys representing the given string. More... | |
wxUIActionSimulator::wxUIActionSimulator | ( | ) |
Default constructor.
bool wxUIActionSimulator::Char | ( | int | keycode, |
int | modifiers = wxMOD_NONE |
||
) |
Press and release a key.
keycode | Key to operate on, as an integer. It is interpreted as a wxKeyCode. |
modifiers | A combination of wxKeyModifier flags to be pressed with the given keycode. |
bool wxUIActionSimulator::KeyDown | ( | int | keycode, |
int | modifiers = wxMOD_NONE |
||
) |
Press a key.
If you are using modifiers then it needs to be paired with an identical KeyUp or the modifiers will not be released (MSW and macOS).
keycode | Key to operate on, as an integer. It is interpreted as a wxKeyCode. |
modifiers | A combination of wxKeyModifier flags to be pressed with the given keycode. |
bool wxUIActionSimulator::KeyUp | ( | int | keycode, |
int | modifiers = wxMOD_NONE |
||
) |
Release a key.
keycode | Key to operate on, as an integer. It is interpreted as a wxKeyCode. |
modifiers | A combination of wxKeyModifier flags to be pressed with the given keycode. |
bool wxUIActionSimulator::MouseClick | ( | int | button = wxMOUSE_BTN_LEFT | ) |
Click a mouse button.
button | Button to press. See wxUIActionSimulator::MouseDown for a list of valid constants. |
bool wxUIActionSimulator::MouseDblClick | ( | int | button = wxMOUSE_BTN_LEFT | ) |
Double-click a mouse button.
button | Button to press. See wxUIActionSimulator::MouseDown for a list of valid constants. |
bool wxUIActionSimulator::MouseDown | ( | int | button = wxMOUSE_BTN_LEFT | ) |
Press a mouse button.
button | Button to press. Valid constants are wxMOUSE_BTN_LEFT , wxMOUSE_BTN_MIDDLE , and wxMOUSE_BTN_RIGHT . |
bool wxUIActionSimulator::MouseDragDrop | ( | long | x1, |
long | y1, | ||
long | x2, | ||
long | y2, | ||
int | button = wxMOUSE_BTN_LEFT |
||
) |
Perform a drag and drop operation.
x1 | x start coordinate, in screen coordinates. |
y1 | y start coordinate, in screen coordinates. |
x2 | x destination coordinate, in screen coordinates. |
y2 | y destination coordinate, in screen coordinates. |
button | Button to press. See wxUIActionSimulator::MouseDown for a list of valid constants. |
bool wxUIActionSimulator::MouseMove | ( | const wxPoint & | point | ) |
Move the mouse to the specified coordinates.
point | Point to move to, in screen coordinates. |
bool wxUIActionSimulator::MouseMove | ( | long | x, |
long | y | ||
) |
Move the mouse to the specified coordinates.
x | x coordinate to move to, in screen coordinates. |
y | y coordinate to move to, in screen coordinates. |
bool wxUIActionSimulator::MouseUp | ( | int | button = wxMOUSE_BTN_LEFT | ) |
Release a mouse button.
button | Button to press. See wxUIActionSimulator::MouseDown for a list of valid constants. |
bool wxUIActionSimulator::Select | ( | const wxString & | text | ) |
Simulate selection of an item with the given text.
This method selects an item in the currently focused wxChoice, wxComboBox, wxListBox and similar controls. It does it by simulating keyboard events, so the behaviour should be the same as if the item was really selected by the user.
Notice that the implementation of this method uses wxYield() and so events can be dispatched from it.
text | The text of the item to select. |
bool wxUIActionSimulator::Text | ( | const char * | text | ) |
Emulate typing in the keys representing the given string.
Currently only the ASCII letters are universally supported. Digits and punctuation characters can be used with the standard QWERTY (US) keyboard layout but may not work with other layouts.
text | The string, containing only US ASCII characters, to type. |