class KCursor

A QCursor wrapper allowing "themed" cursors and auto-hiding cursors. More...

Definition#include <kcursor.h>
InheritsQt (qt) [public ]
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Methods

Public Static Methods


Detailed Description

A wrapper around QCursor that allows for "themed" cursors.

Currently, the only themed cursor is a hand shaped cursor.

A typical usage would be


 	setCursor(KCursor::handCursor());

 KCursor ()

KCursor

Constructor.

Does not do anything so far.

QCursor  handCursor ()

handCursor

[static]

Returns the proper hand cursor according to the current GUI style (static function).

QCursor  workingCursor ()

workingCursor

[static]

Returns the proper arrow+hourglass cursor according to the current GUI style (static function).

QCursor  arrowCursor ()

arrowCursor

[static]

Returns the proper arrow cursor according to the current GUI style (static function).

QCursor  upArrowCursor ()

upArrowCursor

[static]

Returns the proper up arrow cursor according to the current GUI style (static function).

QCursor  crossCursor ()

crossCursor

[static]

Returns the proper cross-hair cursor according to the current GUI style (static function).

QCursor  waitCursor ()

waitCursor

[static]

Returns the proper hourglass cursor according to the current GUI style (static function).

QCursor  ibeamCursor ()

ibeamCursor

[static]

Returns the proper text cursor according to the current GUI style (static function).

QCursor  sizeVerCursor ()

sizeVerCursor

[static]

Returns the proper vertical resize cursor according to the current GUI style (static function).

QCursor  sizeHorCursor ()

sizeHorCursor

[static]

Returns the proper horizontal resize cursor according to the current GUI style (static function).

QCursor  sizeBDiagCursor ()

sizeBDiagCursor

[static]

Returns the proper diagonal resize (/) cursor according to the current GUI style (static function).

QCursor  sizeFDiagCursor ()

sizeFDiagCursor

[static]

Returns the proper diagonal resize (\) cursor according to the current GUI style (static function).

QCursor  sizeAllCursor ()

sizeAllCursor

[static]

Returns the proper all-directions resize cursor according to the current GUI style (static function).

QCursor  blankCursor ()

blankCursor

[static]

Returns a blank or invisible cursor (static function).

QCursor  whatsThisCursor ()

whatsThisCursor

[static]

Returns a WhatsThis cursor (static function).

void  setAutoHideCursor ( QWidget *w, bool enable )

setAutoHideCursor

[static]

Sets auto-hiding the cursor for widget w. Enabling it will result in the cursor being hidden when

The cursor will be shown again when the focus is lost or a mouse-event happens.

Side effect: when enabling auto-hide, mouseTracking is enabled for the specified widget, because it's needed to get mouse-move-events. So don't disable mouseTracking for a widget while using auto-hide for it.

When disabling auto-hide, mouseTracking will be disabled, so if you need mouseTracking after disabling auto-hide, you have to reenable mouseTracking.

If you want to use auto-hiding for widgets that don't take focus, e.g. a QCanvasView, then you have to pass all key-events that should trigger auto-hiding to autoHideEventFilter().

void  setAutoHideCursor ( QWidget *w, bool enable, bool customEventFilter )

setAutoHideCursor

[static]

Overloaded method for the case where you have an event-filter installed on the widget you want to enable auto-cursor-hiding.

In this case set customEventFilter to true and call autoHideEventFilter() from the beginning of your eventFilter().

See also: autoHideEventFilter

void  setHideCursorDelay ( int ms )

setHideCursorDelay

[static]

Sets the delay time in milliseconds for auto-hiding. When no keyboard events arrive for that time-frame, the cursor will be hidden.

Default is 5000, i.e. 5 seconds.

int  hideCursorDelay ()

hideCursorDelay

[static]

Default is 5000, i.e. 5 seconds.

Returns: the current auto-hide delay time.

void  autoHideEventFilter ( QObject *, QEvent * )

autoHideEventFilter

[static]

KCursor has to install an eventFilter over the widget you want to auto-hide. If you have an own eventFilter() on that widget and stop some events by returning true, you might break auto-hiding, because KCursor doesn't get those events.

In this case, you need to call setAutoHideCursor( widget, true, true ); to tell KCursor not to install an eventFilter. Then you call this method from the beginning of your eventFilter, for example:


 edit = new KEdit( this, "some edit widget" );
 edit->installEventFilter( this );
 KCursor::setAutoHideCursor( edit, true, true );

 [...]

 bool YourClass::eventFilter( QObject *o, QEvent *e )
 {
     if ( o == edit ) // only that widget where you enabled auto-hide!
         KCursor::autoHideEventFilter( o, e );

     // now you can do your own event-processing
     [...]
 }

Note that you must not call KCursor::autoHideEventFilter() when you didn't enable or after disabling auto-hiding.