|
| SoQtViewerProxy (SoQtRenderArea *renderArea=nullptr) |
| This class implements access to the state of the SoQtMeVis viewer.
|
|
| ~SoQtViewerProxy () override |
| Destructor.
|
|
void | setCursor (int shapeID) override |
| Set cursor of viewer to pre- or user-defined shape, invalid positive values will set cursor to default shape, negative values will do nothing.
|
|
void | setForceCursor (int shapeID) override |
| Enforce setting the cursor, even from mouseOverUpdates.
|
|
int | getCursor () |
| Returns the requested cursor shape.
|
|
bool | hasShape (int shapeID) override |
| Check if this shape has already been defined.
|
|
int | defineCursor (const char *cursorImgFileName, int hotSpotX=-1, int hotSpotY=-1, int id=-1) override |
| Define new cursor shape - successful operation is only guaranteed with PNG-Images with size 32x32, containing only black, white and transparent pixels.
|
|
bool | getCurrentCursorPosition (int &x, int &y) override |
| Get current cursor position relative to the viewing window.
|
|
bool | isInitialRendering () const override |
| returns true if the viewer does the initial rendering after it became visible
|
|
bool | isUserInterationEventInQueue () const override |
| returns if a user interaction event is the the GUI event queue
|
|
double | getDevicePixelRatio () override |
| Returns the ratio between physical pixels and device-independent pixels for the viewer.
|
|
virtual | ~SoViewerProxy () |
| Destructor.
|
|
virtual bool | isHighQualityOffscreenRendering () const |
| returns true if high quality offscreen rendering (e.g. for OffscreenRenderer) is desired
|
|
virtual SoMetaInformationMap * | getMetaInformationMap () |
| returns the current SoMetaInformationMap, which allows storing of the current meta information / render state as key/value pairs.
|
|
|
static bool | forceDefineCursor (int id, const char *cursorImgFileName, int hotSpotX=-1, int hotSpotY=-1) |
| defineCursor simply calls this method, which will overwrite previous shapes
|
|
static void | initializeDefaultCursors () |
| On some platforms it may not be possible to initialize the default cursors at any time, so one may have to call this in advance.
|
|
static QCursor | getCursor (int shapeID) |
| Get the QCursor associated with the given shapeID.
|
|
static QPixmap | getPixmap (int shapeID) |
| Get the QPixmap associated with the given shapeID in 1x resolution.
|
|
static QPixmap | getPixmap2x (int shapeID) |
| Get the QPixmap associated with the given shapeID in 2x resolution.
|
|
static int | getShapeID (const QCursor &cursor) |
| Get the shape ID associated with the given cursor.
|
|
static bool | isSameCursor (const QCursor &a, const QCursor &b) |
| Compare cursor shapes:
|
|
static const char *const * | cursorShapeNames () |
| return list of strings containing cursor shape names; this includes UNDEFINED_CURSOR, so you must add 1 when indexing this array
|
|
static int | getPredefinedCursorCount () |
| get number of predefined cursors from code (instead of requiring a re-compilation of all using libraries when using the value PREDEFINED_CURSOR_COUNT)
|
|
static const ml::EnumValues< cursorShapeEnum > & | getCursorShapeEnumValues () |
| get enum values record for use with ml::TypedEnumField
|
|
static int | getNextFreeShapeID () |
| return the next free id for defining your own cursor shape
|
|
|
SoQtRenderArea * | _renderArea |
| pointer to the actual viewer:
|
|
int | _requestedShape |
| currently requested cursor shape
|
|
bool | _cursorEnforced |
| cursor setting was enforced
|
|
virtual void | resetCursor () |
| reset stored cursor shape (must be called before event handling traversal)
|
|
virtual void | evaluateCursor () |
| evaluate set cursor shape (must be called after event handling traversal)
|
|
virtual bool | actionMayChangeCursor (SoAction *action) |
| Returns if the given action may change the cursor, this is typically the case for SoHandleEvent actions with the exception of the artificial SoLocation2RefreshEvent event.
|
|
static void | resetCursorCB (void *userData, SoAction *action) |
| This callback can be used together with a SoCallback node, userData must be set to the pointer to this (or a derived) proxy.
|
|
static void | evaluateCursorCB (void *userData, SoAction *action) |
| This callback can be used together with a SoCallback node, userData must be set to the pointer to this (or a derived) proxy.
|
|
|
enum | cursorShapeEnum {
UNDEFINED_CURSOR = -1
, DEFAULT_CURSOR = 0
, FORBIDDEN_CURSOR
, POINTING_HAND_CURSOR
,
OPEN_HAND_CURSOR
, CLOSED_HAND_CURSOR
, MOVE_ALL_CURSOR
, MOVE_HORI_CURSOR
,
MOVE_VERT_CURSOR
, MOVE_FDIAG_CURSOR
, MOVE_BDIAG_CURSOR
, MOVE_INOUT_CURSOR
,
ROTATE_X_CURSOR
, ROTATE_Y_CURSOR
, ROTATE_Z_CURSOR
, ROTATE_XY_CURSOR
,
ZOOM_CURSOR
, ZOOM_IN_CURSOR
, ZOOM_OUT_CURSOR
, CROSS_CURSOR
,
CROSS_PLUS_CURSOR
, CROSS_MINUS_CURSOR
, CROSS_MOVE_CURSOR
, CROSS_ROTATE_CURSOR
,
CROSS_RECT_CURSOR
, CROSS_OVAL_CURSOR
, CROSS_VECTOR_CURSOR
, CROSS_FREEFORM_CURSOR
,
CROSS_POINT_CURSOR
, CROSS_LINE_CURSOR
, CROSS_CURVE_CURSOR
, CROSS_POLYLINE_CURSOR
,
CROSS_POLYGON_CURSOR
, CROSS_FILL_CURSOR
, CROSS_LINK_CURSOR
, CROSS_0_CURSOR
,
CROSS_1_CURSOR
, CROSS_2_CURSOR
, CROSS_3_CURSOR
, CROSS_4_CURSOR
,
CROSS_5_CURSOR
, CROSS_6_CURSOR
, CROSS_7_CURSOR
, CROSS_8_CURSOR
,
CROSS_9_CURSOR
, LUT_CURSOR
, LUT_1_CURSOR
, LUT_2_CURSOR
,
LUT_3_CURSOR
, SLICING_CURSOR
, BLANK_CURSOR
, OTHER_CURSOR_0
,
OTHER_CURSOR_1
, OTHER_CURSOR_2
, OTHER_CURSOR_3
, OTHER_CURSOR_4
,
OTHER_CURSOR_5
, OTHER_CURSOR_6
, OTHER_CURSOR_7
, OTHER_CURSOR_8
,
OTHER_CURSOR_9
, OTHER_CURSOR_10
, OTHER_CURSOR_11
, OTHER_CURSOR_12
,
OTHER_CURSOR_13
, OTHER_CURSOR_14
, OTHER_CURSOR_15
, OTHER_CURSOR_16
,
OTHER_CURSOR_17
, OTHER_CURSOR_18
, OTHER_CURSOR_19
, OTHER_CURSOR_20
,
OTHER_CURSOR_21
, OTHER_CURSOR_22
, OTHER_CURSOR_23
, OTHER_CURSOR_24
,
OTHER_CURSOR_25
, OTHER_CURSOR_26
, OTHER_CURSOR_27
, OTHER_CURSOR_28
,
OTHER_CURSOR_29
, OTHER_CURSOR_30
, OTHER_CURSOR_31
, OTHER_CURSOR_32
,
OTHER_CURSOR_33
, OTHER_CURSOR_34
, OTHER_CURSOR_35
, OTHER_CURSOR_36
,
OTHER_CURSOR_37
, OTHER_CURSOR_38
, OTHER_CURSOR_39
, OTHER_CURSOR_40
,
OTHER_CURSOR_41
, OTHER_CURSOR_42
, OTHER_CURSOR_43
, OTHER_CURSOR_44
,
OTHER_CURSOR_45
, OTHER_CURSOR_46
, OTHER_CURSOR_47
, OTHER_CURSOR_48
,
OTHER_CURSOR_49
, OTHER_CURSOR_50
, OTHER_CURSOR_51
, OTHER_CURSOR_52
,
OTHER_CURSOR_53
, OTHER_CURSOR_54
, OTHER_CURSOR_55
, OTHER_CURSOR_56
,
OTHER_CURSOR_57
, OTHER_CURSOR_58
, OTHER_CURSOR_59
, OTHER_CURSOR_60
,
OTHER_CURSOR_61
, OTHER_CURSOR_62
, OTHER_CURSOR_63
, OTHER_CURSOR_64
,
OTHER_CURSOR_65
, OTHER_CURSOR_66
, OTHER_CURSOR_67
, OTHER_CURSOR_68
,
OTHER_CURSOR_69
, PREDEFINED_CURSOR_COUNT
} |
| pre-defined cursor shapes; note that you must adapt the list of names in SoViewerProxy.cpp if you change this list More...
|
|
| SoViewerProxy () |
| Protected constructor. Class must be derived to be adapted to actual viewer.
|
|
Definition at line 28 of file SoQtViewerProxy.h.
int SoQtViewerProxy::defineCursor |
( |
const char * | cursorImgFileName, |
|
|
int | hotSpotX = -1, |
|
|
int | hotSpotY = -1, |
|
|
int | id = -1 ) |
|
overridevirtual |
Define new cursor shape - successful operation is only guaranteed with PNG-Images with size 32x32, containing only black, white and transparent pixels.
If the operation failed, -1 is returned. If id is set, you can change the cursor shape of an already existing cursor (the file name is cached per id, so the actual operation is only performed on the first call).
Reimplemented from SoViewerProxy.