Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   Related Pages  

KCursor Class Reference

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

#include <kcursor.h>

List of all members.

Public Methods

 KCursor ()

Static Public Methods

QCursor handCursor ()
QCursor workingCursor ()
QCursor arrowCursor ()
QCursor upArrowCursor ()
QCursor crossCursor ()
QCursor waitCursor ()
QCursor ibeamCursor ()
QCursor sizeVerCursor ()
QCursor sizeHorCursor ()
QCursor sizeBDiagCursor ()
QCursor sizeFDiagCursor ()
QCursor sizeAllCursor ()
QCursor blankCursor ()
QCursor whatsThisCursor ()
void setAutoHideCursor (QWidget *w, bool enable)
void setAutoHideCursor (QWidget *w, bool enable, bool customEventFilter)
void setHideCursorDelay (int ms)
int hideCursorDelay ()
void autoHideEventFilter (QObject *, QEvent *)


Detailed Description

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

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());
 

Author:
Kurt Granroth <granroth@kde.org>

Definition at line 43 of file kcursor.h.


Constructor & Destructor Documentation

KCursor::KCursor  
 

Constructor.

Does not do anything so far.


Member Function Documentation

QCursor KCursor::arrowCursor   [static]
 

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

void KCursor::autoHideEventFilter QObject *   ,
QEvent *   
[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.

QCursor KCursor::blankCursor   [static]
 

Returns a blank or invisible cursor (static function).

QCursor KCursor::crossCursor   [static]
 

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

QCursor KCursor::handCursor   [static]
 

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

int KCursor::hideCursorDelay   [static]
 

Returns:
the current auto-hide delay time.
Default is 5000, i.e. 5 seconds.

QCursor KCursor::ibeamCursor   [static]
 

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

void KCursor::setAutoHideCursor QWidget *    w,
bool    enable,
bool    customEventFilter
[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 KCursor::setAutoHideCursor QWidget *    w,
bool    enable
[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 KCursor::setHideCursorDelay int    ms [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.

QCursor KCursor::sizeAllCursor   [static]
 

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

QCursor KCursor::sizeBDiagCursor   [static]
 

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

QCursor KCursor::sizeFDiagCursor   [static]
 

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

QCursor KCursor::sizeHorCursor   [static]
 

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

QCursor KCursor::sizeVerCursor   [static]
 

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

QCursor KCursor::upArrowCursor   [static]
 

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

QCursor KCursor::waitCursor   [static]
 

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

QCursor KCursor::whatsThisCursor   [static]
 

Returns a WhatsThis cursor (static function).

QCursor KCursor::workingCursor   [static]
 

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


The documentation for this class was generated from the following file:
Generated on Wed Aug 13 23:30:08 2003 for kdelibs by doxygen1.2.18