| 
    Laxkit
    0.0.7.1
    
   | 
 
LaxDevice subclass for keyboards. More...

Public Member Functions | |
| virtual int | SetFocus (anXWindow *w, clock_t time, int notifyonly) | 
| virtual unsigned long | QueryModifiers () | 
| virtual int | clearReceiver (EventReceiver *receiver) | 
| Set current_focus to NULL if receiver->object_id==current_focus->object_id.  | |
  Public Member Functions inherited from Laxkit::LaxDevice | |
| virtual const char * | DeviceName () | 
| Default is just to return name.  | |
| virtual const char * | DeviceType () | 
| 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 EventData * | getEvents () | 
| 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 char * | Name (const char *nname) | 
| Name the device.  | |
Public Attributes | |
| LaxMouse * | paired_mouse | 
| anXWindow * | current_focus | 
| clock_t | focus_time | 
  Public Attributes inherited from Laxkit::LaxDevice | |
| int | id | 
| int | subid | 
| XID | xid | 
| char * | name | 
| int | active | 
| int | screen | 
| int | input_head | 
| int | input_group | 
| int | input_source | 
LaxDevice subclass for keyboards.
Remember that keyboard stores time as returned by times(), not Xlib time. If notifyonly, then this has been called in response to an event, not as a request to grab the focus.
Return 0 for focus changed. 1 for not changed, an error occured perhaps.
Reimplemented in Laxkit::CoreXlibKeyboard.
References Laxkit::anObject::dec_count(), and Laxkit::anObject::inc_count().
Referenced by Laxkit::DeviceManager::clearReceiver(), and Laxkit::DeviceManager::SetFocus().