Pages : 1
#1 Le 29/05/2007, à 09:30
- csoler
Cueillir les evenements X
Salut,
J'aimerais coder un truc qui verifie que je ne m'endors pas, i.e qui verifie que je tappe sur mon clavier au moins toutes les 10 mn, et sinon qui popup un message d'alarme (bon, je sais, ca parait bizarre, mais j'en ai besoin).
Quelle interface et architecture vaut-il-mieux utiliser pour ce genre de truc ? Il me semble que j'ai besoin de forker un daemon qui intercepte et retransmet tous les evenements X, mais je veux savoir si je dois mettre les mains dans le cambouis ou si je peux faire ca avec Qt ou Gtk.
Merci
CsoL
Mon projet chou: http://retroshare.sourceforge.net
(Voir aussi la page ubuntu-fr: http://doc.ubuntu-fr.org/retroshare)
Hors ligne
#2 Le 29/05/2007, à 10:14
- ac2n
Re : Cueillir les evenements X
bah je searis toi j'utiliserais plutot xscreensaver ou un truc comme ca. Il doit permettre de lancer une commande lorsqu'il met l'ecran en veille... donc a toi de jouer
LT Value - LTValue
http://www.ltvalue.com
market your value - Relation investisseur
Hors ligne
#3 Le 29/05/2007, à 10:15
- marc31
Re : Cueillir les evenements X
tu peux aussi regarder du coté de la doc Gtk concernant les "events" : http://developer.gnome.org/doc/API/gdk/gdk-events.html
ubuntu-gutsy / ATI RC410 [Radeon Xpress 200] + Nvidia GeForce 7300 SE / wireless RaLink RT2500 / toulouse-ouest / xmpp://marc.quinton@jabber.org
Hors ligne
#4 Le 29/05/2007, à 10:50
- rotototo
Re : Cueillir les evenements X
comme le dit ac2n , scrnsaver peu faire le travail
http://search.cpan.org/src/AWENDT/X11-IdleTime-0.4/IdleTime.pm
#include <time.h>
#include <stdio.h>
#include <unistd.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/extensions/scrnsaver.h>
int GetIdleTime () {
time_t idle_time;
static XScreenSaverInfo *mit_info;
Display *display;
int screen;
mit_info = XScreenSaverAllocInfo();
if((display=XOpenDisplay(NULL)) == NULL) { return(-1); }
screen = DefaultScreen(display);
XScreenSaverQueryInfo(display, RootWindow(display,screen), mit_info);
XFree(mit_info);
XCloseDisplay(display);
idle_time = (mit_info->idle) / 1000;
return idle_time;
}
int main(void){
int i;
while(1){
i=GetIdleTime();
if(i>=6)printf( "Your mouse and keyboard have been idle for %d seconds.\n",i);
}
return 0;
}
#5 Le 29/05/2007, à 11:47
- csoler
Re : Cueillir les evenements X
Cool. C'est pile ce dont j'ai besoin.
Merci !
CsoL
Mon projet chou: http://retroshare.sourceforge.net
(Voir aussi la page ubuntu-fr: http://doc.ubuntu-fr.org/retroshare)
Hors ligne
Pages : 1