Laxkit  0.0.7.1
Public Member Functions | Public Attributes
Laxkit::LaxMouse Class Reference

LaxDevice subclass for pointers. More...

Inheritance diagram for Laxkit::LaxMouse:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual int clearReceiver (EventReceiver *receiver)
 Clear ttwindow if necessary.
virtual void buttonReleased (int button, anXWindow *ww)
 Resets buttoncount, which helps keep track of double, triple, etc clicks.
virtual void buttonPressed (Time time, int button, unsigned long windowid)
 Update buttoncount, which helps keep track of double, triple, etc clicks.
virtual int setMouseShape (anXWindow *win, int shape)
virtual int grabDevice (anXWindow *win)
virtual int ungrabDevice ()
virtual int getInfo (anXWindow *win, int *screen, anXWindow **child, int *x, int *y, unsigned int *mods, double *pressure, double *tiltx, double *tilty)=0
virtual int Pressure ()
virtual int TiltX ()
virtual int TiltY ()
- Public Member Functions inherited from Laxkit::LaxDevice
virtual const charDeviceName ()
 Default is just to return name.
virtual const charDeviceType ()
 Default just returns NULL.
virtual int GetKey (int k)
 -1 returns number of buttons. Otherwise check status of that button number: return 1=on, 0=off.
virtual int GetButton (int b)
 -1 returns number of buttons. Otherwise check status of that button number: return 1=on, 0=off.
virtual double GetValue (int v, int w)
 -1 returns number of valuators. Otherwise check information of that valuator.
virtual int numFields ()
virtual int getFieldTypeInfo (int f, const char **nme, int *type, int *min, int *max, int *res)
 Retrieve device field info.
virtual int usesX ()
 Return nonzero if the device gets messages through X.
virtual int fd ()
virtual EventDatagetEvents ()
 Return an event stream if any events pending.
virtual int eventFilter (EventData **events_ret, XEvent *xev, anXWindow *target, int &isinput)
 Turn an XEvent into EventData object(s).
virtual int selectForWindow (anXWindow *win, unsigned long)
 Called after anXWindow::xlib_window exists, this sets up anything specific so the window gets related events.
virtual ~LaxDevice ()
 Empty virtual destructor.
virtual const charName (const char *nname)
 Name the device.

Public Attributes

int buttoncount
 The running count of a button being pressed rapidly.
int button_for_count
 Index of button, tracked to update buttoncount.
Time last_button_time
 Time of the last button press of the same type for the same window.
unsigned long buttonwindow
 The object_id of the last window the button was clicked down in.
unsigned long last_leave_window
clock_t ttendlimit
 Clock time that must be passed without movement for there to be a tooltip.
clock_t ttthreshhold
 Clock time after entering to allow movement, before considering tooltips.
anXWindowttwindow
 A window under consideration for a tooltip.
LaxKeyboardpaired_keyboard
- Public Attributes inherited from Laxkit::LaxDevice
int id
int subid
XID xid
charname
int active
int screen
int input_head
int input_group
int input_source

Detailed Description

LaxDevice subclass for pointers.

This class will keep track of how many times a button is pressed rapidly, in the same window. Note that it will keep track of only only one button at a time.


Member Function Documentation

int Laxkit::LaxMouse::grabDevice ( anXWindow win)
virtual

Return 0 for success, 1 for failure.

Reimplemented in Laxkit::CoreXlibPointer.

int Laxkit::LaxMouse::setMouseShape ( anXWindow win,
int  shape 
)
virtual

Return 0 for success, nonzero for error.

Reimplemented in Laxkit::CoreXlibPointer.

int Laxkit::LaxMouse::ungrabDevice ( )
virtual

Return 0 for success, 1 for failure.

Reimplemented in Laxkit::CoreXlibPointer.


Member Data Documentation

int Laxkit::LaxMouse::buttoncount

The running count of a button being pressed rapidly.

If double clicking (clicking under the time in anXApp::dblclk), buttoncount==2, for instance.

If you click ten times and each click is within anXApp::dblclk of the last click, then buttoncount will be 10.

Referenced by buttonPressed(), buttonReleased(), and Laxkit::CoreXlibPointer::eventFilter().


The documentation for this class was generated from the following files:

Mon Feb 17 2014 11:52:59, Laxkit