---
name: "SoQtCursor"
section: "3"
platform: "linux"
package: "libsoqt-dev-common"
version: "1.6.0~e8310f-3"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/SoQtCursor"
---

# SoQtCursor(3)

The SoQtCursor class is used to set cursors for GUI components. The class provides both a set of pre-defined cursor shapes, aswell as the option to use custom bitmap graphics.

## NAME

SoQtCursor - The **SoQtCursor** class is used to set cursors for GUI components.

The class provides both a set of pre-defined cursor shapes, aswell as the option to use custom bitmap graphics.

## SYNOPSIS

### Classes

class **CustomCursor**\
 *The* **SoQtCursor::CustomCursor** *class is used to specify bitmap data for* **SoQtCursor** *custom cursors.*

### Public Types

enum **Shape** { **CUSTOM\_BITMAP** = -1, **DEFAULT** = 0, **BUSY**, **CROSSHAIR**, **UPARROW** }\

### Public Member Functions

**SoQtCursor** (void)\
 **SoQtCursor** (const **Shape** shape)\
 **SoQtCursor** (const **CustomCursor** \*cc)\
 **SoQtCursor** (const **SoQtCursor** &cursor)\
 **~SoQtCursor** ()\
 **SoQtCursor** & **operator=** (const **SoQtCursor** &c)\
 **Shape** **getShape** (void) const \
 void **setShape** (const **Shape** shape)\
 const **CustomCursor** & **getCustomCursor** (void) const \

### Static Public Member Functions

static void **initClass** (void)\
 static const **SoQtCursor** & **getZoomCursor** (void)\
 static const **SoQtCursor** & **getPanCursor** (void)\
 static const **SoQtCursor** & **getRotateCursor** (void)\
 static const **SoQtCursor** & **getBlankCursor** (void)\

## Detailed Description

The **SoQtCursor** class is used to set cursors for GUI components.

The class provides both a set of pre-defined cursor shapes, aswell as the option to use custom bitmap graphics.

Instances of this class is usually made for passing in to the **SoQtComponent::setComponentCursor()** and **SoQtComponent::setWidgetCursor()** methods.

## Member Enumeration Documentation

### enum SoQtCursor::Shape

For enumerating built-in shape types, that can be used without having to specify cursor graphics. These are mapped to pre-defined cursor shapes from the underlying toolkit.

**Enumerator**

- *CUSTOM\_BITMAP*

  *Cursor is specified with our own bitmap graphics. The bitmap data must be passed into the constructor.*

- *DEFAULT*

  *Using the native Window system's default cursor.*

- *BUSY*

  *A busy cursor.*

- *CROSSHAIR*

  *Two thin lines in a cross.*

- *UPARROW*

  *Thick, upward-pointing arrow.*

## Constructor & Destructor Documentation

### SoQtCursor::SoQtCursor (void)

*Default constructor. Creates a default cursor.*

*References DEFAULT.*

### SoQtCursor::SoQtCursor (const Shape shape)

*Constructor with Shape argument, for setting up the cursor with a pre-defined shape from the underlying native toolkit.*

*References CUSTOM\_BITMAP.*

### SoQtCursor::SoQtCursor (const CustomCursor \* ccarg)

*Constructs a new custom bitmap cursor from cc.*

*Note that only a shallow copy will be made of the* **CustomCursor** *bitmap and mask references, so don't deallocate the memory they use until the* **SoQtCursor** *has been destructed.*

*As for the format of the cursor bitmap data, see documentation of* **SoQtCursor::CustomCursor***.*

*References CUSTOM\_BITMAP.*

### SoQtCursor::SoQtCursor (const SoQtCursor & cursor)

*Constructor.*

### SoQtCursor::~SoQtCursor ()

*Destructor*

## Member Function Documentation

### SoQtCursor & SoQtCursor::operator= (const SoQtCursor & c)

*Equal operator.*

### SoQtCursor::Shape SoQtCursor::getShape (void) const

*Returns the shape type.*

*If the cursor has been set by the application programmer to a bitmap cursor,* **SoQtCursor::CUSTOM\_BITMAP** *is returned.*

*Referenced by SoQtComponent::setWidgetCursor().*

### void SoQtCursor::setShape (const Shape shapearg)

*Sets the cursor to a predefined shape.*

### const SoQtCursor::CustomCursor & SoQtCursor::getCustomCursor (void) const

*Returns a reference to the current custom bitmap cursor.*

*Do not call this method unless* **SoQtCursor::getShape()** *returns* **SoQtCursor::CUSTOM\_BITMAP***.*

*Referenced by SoQtComponent::setWidgetCursor().*

### const SoQtCursor & SoQtCursor::getZoomCursor (void)` [static]`

*Returns a 'zoom' indicator cursor.*

*Referenced by SoQtExaminerViewer::setViewing().*

### const SoQtCursor & SoQtCursor::getPanCursor (void)` [static]`

*Returns a cursor with 'pan' graphics (ie for translation in the camera normal plane).*

*Referenced by SoQtPlaneViewer::afterRealizeHook(), and SoQtExaminerViewer::setViewing().*

### const SoQtCursor & SoQtCursor::getRotateCursor (void)` [static]`

*Returns a 'rotate' indicator cursor.*

*Referenced by SoQtPlaneViewer::afterRealizeHook(), and SoQtExaminerViewer::setViewing().*

### const SoQtCursor & SoQtCursor::getBlankCursor (void)` [static]`

*Because all toolkits don't easily support setting up a blank cursor from pre-defined shapes or API functions, we also provide a simple completely transparent cursor.*

*Referenced by SoQtPlaneViewer::afterRealizeHook(), and SoQtExaminerViewer::setViewing().*

## Author

*Generated automatically by Doxygen for SoQt from the source code.*
