I just finished the set of features Pascal called meta-input. Or at least I think I have, I'll have to let Pascal or Philippe be the judge of that :) - Driver Messages This is my solution to allow cursor blanking, backlight control, sleep mode, and more from clients and from other drivers. Input drivers or video drivers can define handlers for these messages, and send them with the drivermessage() function. They can be called client-side with pgDriverMessage(). If a loaded driver implements PGDM_SOUNDFX, keyclicks and mouse clicks can be enabled in the config file. - Inactivity Timer PicoGUI now keeps track of the amount of time it has had no user input. The client can access this timer with pgGetInactive() and pgSetInactive(). The driver can call similar functions in the server, defined in pgserver/timer.h. Accessing the inactivity timer from the client-side is demonstrated by the new screensaver demo. The server itself (in gcore/timer.c) can trigger driver messages based on this timer. Currently cursor blanking, backlight auto-off, and sleep mode are implemented. README.configfile documents the new options to set these timeouts. - Keyboard Control Tab, shift-tab, and the arrow keys can be used to move between widgets according to geometric proximity. The spacebar can be used to activate the hilighted button. Escape closes the topmost popup menu. As always, keys like escape, enter, Y, and N are mapped to message dialog buttons. Applications can set their own key mappings with PG_WP_HOTKEY. When the display is rotated, the arrow keys are rotated also. With a few exceptions, PicoGUI can be used entirely via the keyboard. - Dynamic Input Drivers Loading drivers from a shared library has not been implemented yet, but drivers that are compiled in can be loaded and unloaded at runtime. As always, the load_inlib(), unload_inlib(), and find_inputdriver() functions could be used within one input or video driver to load another input driver. I added the client-side function pgLoadDriver() that loads an input driver and returns a handle to it. Contexts or pgDelete can be used to unload the driver. -- To the systems programmer, users and applications serve only to provide a test load. _______________________________________________ Pgui-devel mailing list [EMAIL PROTECTED] http://lists.sourceforge.net/lists/listinfo/pgui-devel
