🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.windows.x
Article #2028

Re: Get Key Event

#2028
From: Shuichi Takazawa
Date: Tue, 22 Sep 1992 15:33
183 lines
8329 bytes
$@$3$s$K$A$O!"$?$+(J$@$6$o!w(Jsony$@$G$9!#;d$N(J
>$@:#!"(JSONY PWS-1630+NEWS-OS 4.1C+mwm$@$G(Jscreen saver$@$r;n$7$K:n$C$F(J
>$@$$$k$s$G$9$,!"(JKeyPress/KeyRelease$@$J$I$N(Jevent$@$,<u$1<h$l$:$K:$$C$F(J
>$@$$$^$9!#$?$@!"0lDj;~4V$r2a$.$k$H2hLL$r0E$/$9$k$@$1(J$@$N$b$N$J$s$G$9$,!#(J
>$@0l@87|L?(Jnews$@$J$I$rFI$s$G$$$k$H(Jmouse$@$K$O?($i$J$$$N$G(J
>$@FMA30E$/$J$C$F$7$^$C$F!"$a$s(J$@$/$i$C$F$^$9!#(J
	($@CfN,(J) 
>$@$3$N$h$&$J(Jprogram$@$G>o$K(Jkey$@$H(Jmouse$@$r4F;k$9$kJ}K!$OL5$$$b$N$G$7$g(J
>$@$&$+!)(J

$@$H$$(J$@$&<ALd$KBP$7$F!"$$$/$D$+(JNews$@$H(Jmail$@$G(Jfollow$@$r$$$?$@$$$?$s$G$9$,!"$J(J
$@$K$7$m!"#X$OAG?M$J$b$N$G;n$7$?$j$9(J$@$k$N$K;~4V$,$+$+$C$F$7$^$C$F!"$^$H$a(J
$@$r(Jpost$@$9$k$N$,CY$/$J$C$F$7$^$$$^$7$?!#$9$$$^$;$s!#<B$O$^$@$&$^$/(J$@$$$C$?(J
$@Lu$G$O$J$$$N$G$9$,!"0l1~$3$3$^$G$K$$$?$@$$$?(Jfollow$@$r$^$H$a$F$*$-$^$9!#(J


$@$^$:!"(Jmail$@$G1v86!J(JEPSON$@!K$5$s$+$i!"(J
>$@0JA0<+J,$b:n@.$7$?$3$H$,$"$k$N$G$9$,!"$=$N$3$H$G$d$O$jG:$_$^$7$?!#(J
>$@7k6I!"B>$N%"%W%j%1(J$@!<%7%g%s$N%U%)!<%+%9$^$G8+$J$1$l$P$J$i$J$$$N$G!"(J
>$@6lFy$N:v$H$7$F!"0J2<$N$h$&$J%W%m%0%i%`$r:n@.$7$^$7$?(J$@!#(J
>$@@h$:!"%-!<F~NO$H!"%^%&%9$N0\F0!J2!$5$l$?$+!K$r8+$k$?$a$K!"Dj4|E*$K(J
>$@%]!<%j%s%0$9$k$h$&$K$7$^$7$?!#(J$@0J2<$,$=$NItJ,$G$9!#(J
------------------------------------------------------------------

void blackOutCB(caddr_t data, XtIntervalId *id)
{
	char    key_vector[32];
	int     i;
	Window	garbage1, garbage2;
	unsigned int mask;

	time(&nowTime);
	if(prevTime != nowTime) {
		timeoutCount++;		/* $@7P2a;~4V$r99(J$@?7$9$k(J */
		prevTime = nowTime;
	}

	/* $@%-!<%\!<%I$r4F;k$9$k(J */
	XQueryKeymap(dpy, key_vector);
	for(i=0; i<32; i++){
		if(key_vector[i] != 0) {
			timeoutCount = 0; 
			break;
		}
	}

	/* $@%^%&%9$r4F;k$9(J$@$k(J */
	XQueryPointer(dpy, DefaultRootWindow(dpy),
				&garbage1, &garbage2,
				&root_x, &root_y, 
				&x, &y, 
				&mask);

	/* $@%-!<$,2!$5$l$?$i;~4V$r%j%;%C%H$9$k(J */
	if(mask != 0) {
		timeoutCount = 0;
	}

	/* $@%^%&%9$,F0$$$?$i;~4V$r%j%;%C%H$9$k(J */
	if(pre_root_x != root_x || pre_root_y != root_y) {
		timeoutCount = 0;
		pre_root_x = root_x;
		pre_root_y = root_y;
	}

	/* $@;~4V$r7P2a$7$?$i%V%i%C%/%"%&(J$@%H$r5/F0$9$k(J */
	if(timeoutCount > defs.blackOut) {
		timeoutCount = 0;
		BlackOut();
	}
	/* $@$3$N4X?t(J$@$r(JBLACKOUT_PORING$@;~4V8e$K:F$S5/F0$9$k(J */
	else {
		blackID = XtAddTimeOut(BLACKOUT_PORING, blackOutCB, NULL);
	}
}


main()
{
     ...................

     pre_root_x = 0;
     pre_root_y = 0;
     timeoutCount = 0;

     time(&prevTime);
     blackID = XtAddTimeOut(BLACKOUT_PORING, blackOutCB, NULL);

     ..................
}

$@$F$J6q9g$G$9!#<h$j$"$($:$3$l$G$A$c$s$HF0$-$^$9!#;29M$K$J$l$P4r$7$$$G$9!#(J


------------------------------------------------------------------

$@$H$$$&$40U8+$r$$$?$@$-$^$7$?!#(Jsample$@$N(Jsource$@$r<B:]$K;n$7$F$_$F$&$^$/$$$C(J
$@$?$s$G$9$,!"$d$O$jDj4|E*$K(Jkey$@$H(Jmouse$@$r8+$K$$$+$J$/$F$O$J$i(J$@$J$$$?$a!"Ii(J
$@2Y$,=E$/$J$C$F$7$^$&$N$,7gE@$G$9!#(J


$@<!$K$d$O$j(Jmail$@$GI{Eg!w6eBg$5$s$+$i!"(J
>XSelectInput$@$r(J$@%k!<%H%&%#%s%I%&$K$7$+$7$F$$$J$$$+$i$G$O$J$$$G$7$g$&$+!#(J
>XQueryTree$@$r$7$F!"%k!<%H$N;R%&%#%s%I%&A4$F$K(JXSelectInput$@$9$l$P$&$^$/9T(J
>$@$/MM$J5$$,$7$^$9!#(J

$@F1MM$KCfLn!w5~Bg%^%$%3%s%/%i%V$5$s$+$i!"(J
>$@#X$G$O!"%-!<(J$@%$%Y%s%H$O(Jfocus$@$N$"$k(Jwindow$@$K$7$+$$$-$^$;$s(J
>$@!J%0%i%V$J$I$NNc30$r=|$/!K$N$G>e$N5-;v$N(Jprogram$@$G$O(J
>$@$^$:(J$@$$$H;W$$$^$9!#(J
>$@!J$?$@$7!"(Jevent$@$NEAGE5,B'$K$h$C$F%-!<%$%Y%s%H$r:)@A$7$F$$$J$$(J
>  window$@$X$N%-!<%$%Y%s(J$@%H$O$H$l$^$9!#!K(J
>
>$@$=$3$G!"(JXQueryTree()$@$r;H$C$FA4$F$N(Jwindow$@$KBP$7$F%-!<%$%Y%s%H$r(J
>$@:)@A$9$k$h$&$K$7$F(J$@!"$5$i$K!"(JCreateNotify$@%$%Y%s%H$J$I$r<u$1$H$C$?$i!"(J
>$@$=$N(Jwindow$@$K$b!"(JXSelectInput()$@$9$k$h$&$K$7$F$_$^$7(J$@$?!#(J
>
>$@$G$b!"B>(Jwindow$@$N(J XSelectInput() $@$O40A4$KDI$&$3$H$O$G$-$J$$$N$G(J
>event$@$NEAGE5,B'$K9*L/$K0MB8$7(J$@$F$$$k(Jprogram$@$G$O!"$^$:$$$3$H$K(J
>$@$J$k$O$:$G$9!#$I$&$9$l$P$$$$$s$@$m$&!)(J

$@$H$$$&$40U8+$H(Jsample$@$N(Jsource$@$r$$$?$@$-$^$7$?!#@596K!$H$7$F$O!"$3$NJ}K!(J
$@$,#1HV$@$H;W$$$^$9$7!"$H$j$"$($:!"$3$NJ}K!$G$$$C$F$_$h$&$H(J$@9M$($F$$$k$N(J
$@$G$9$,!"A05-$NDL$j#X$OAG?M$J$b$s$G$^$@;n$;$F$$$^$;$s!#(Jsample$@$N(Jsource$@$b(J
$@$$$?$@$$$F$^$9$,!"(J$@CfLn$5$s$+$i!"(J

>$@LdBj$O%;%-%e%j%F%#$N$3$H$G!"(J
>xhost $@$d(J xauth $@$r$A$c$s$H@_Dj$7$F$$$J$$$H!"(J
>$@?M$N(J window $@$N%$%Y%s%H$r$J$s$G$b2#<h$j$G$-$F$7$^$$!"(J
>$@$5$i$KA`:n$9$k$3$H$b$G$-$F$7$^$&$N$G$9!#(J
>
>$@$=$l$G!"(J rlogin $@$7$?$j(J su $@$J$s$+$7$F$7$^$&$H!D!D(J
>$@$D$$$G$K(J xdm $@$J$s$+F0$$$F$$$?$i!D!D(J
>$@!J$=$l$H$b!"$"$N(J window $@$O(J$@#X$N$b$N$G$O$J$$$N$+$J!)!K(J

$@$H$$$&%3%a%s%H$r$$$?$@$$$F$$$k$N$G!"$3$NJU$+$iD4$Y$J$/$A$c$$$1$J$$$+$J!"(J
$@$H;W$C$F$$$k$H$3$m$G$9!#(J(source$@$O4m$J$$$H$$$&$3$H$GCfLn$5$s$b(JNews$@$G(J
cancel$@$J$5$C$F$^$9$N$G$3$3$K$O=q$-(J$@$^$;$s!#(J)

$@$=$l$+$i(JNews$@$G(J
> ][  ][  ]$@1J9>(J $@9'5,(J nagae@an.isl.titech.ac.jp
>[__][__][_ $@El9)Bg(J $@A|>pJs9)3X(J$@8&5f;\@_(J $@0B5o1!8&(J
$@$5$s$+$i(J

>$@!t(J Xlib$@$H(JXt$@$,$^$<$3$<$G$9$M(J :-)
(^_^;)$@$3$NJU$K$b;d$NL5CN$5$,(J...

>Screen Saver$@$C$F$N$O!$K\Mh(JServer$@$N;E;v$J$s$8$c$J$$$G$7$g$&$+!%(J
>$@0l$D$N%"%W%j%1!<%7%g%s$,$d$k$h$&$K$O$J$C$F$J(J$@$$$H;W$$$^$9!%(J
>$@!t(J $@$D$^$j!$0l$D$N%"%W%j%1!<%7%g%s$K!$$9$Y$F$N%"%W%j%1!<%7%g%s$N%$%Y%s(J
>$@!t(J $@%H$,DLCN$5$l(J$@$k$H$$$&>u67$O9M$($K$/$$!%%&%#%s%I%&!&%^%M!<%8%c$@$C$F!$(J
>$@!t(J $@$9$Y$F$N%$%Y%s%H$K43>D$G$-$k$o$1$G$O$J$$(J$@!%(J
>
>>$@$N$h$&$K$7$F$_$?$s$G$9$,!"$3$l$@$H(Jmouse cursor$@$,(Jroot window$@>e$K(J
>>$@$"$k$H$-$O(JOK$@$J$s$G$9$,!"(Jxterm$@$J$I$NB>$N(Jwindow$@>e$K$"$k$H$-$O(Jkey
>>event$@$O<u$1<h$k$3$H$,=PMh$^$;$s!#(J(mouse$@$O(JOK$@$G$9$,!#(J)
>
>$@$U$`!%$=(J$@$l$O!$(Jxterm$@$,(JPointerMotionMask$@$rA*Br$7$F$J$$$N$G!$(JRootWindow$@$K(J
>$@EAGE$7$?$N$G$7$g$&$+!%(J
>
>>$@$3$N$h$&$J(Jprogram$@$G>o$K(Jkey$@$H(Jmouse$@$r4F;k$9$kJ}K!$OL5$$$b$N$G$7$g(J
>>$@$&$+!)(J
>
>XSetScreenSaver$@$H$+!$(JXActivateScreenSaver$@$J$I$r;H$C$F!$(JServer$@$K$*$^$+(J
>$@$;$9$k$N$J$i!$$3$s$J$U$&$K%W%m%0%i%`$G$-$k$H;W$$$^$9!%(J
	($@8eN,(J)

$@$H(J$@8@$&$40U8+$r$$$?$@$-$^$7$?!#(Jsaver$@$J$s$F$N$O3N$+$K(Jserver$@$K$^$+$;$k$N(J
$@$,#1HV$@$H;d$b;W$$$^$9!#(J(XSetScreenSaver$@$H$+CN$i$J$+$C$?$s$G$9$,!#(J
(;_;)$@$7$+$7!"(Jdefault$@$N(Jsaver$@$O#X$,$G$k$d$D$+!"$?$@??$C0E$K$J$k$d$D$7(J$@$+(J
$@$J$$$?$a!"$H$$$&$N$,<B$O:#2s$N:n@.F05!$@$C$?$?$a!"$G$-$l$P(Jorignal$@$G:n(J
$@$j$?$+$C$?$N$G$7$?!#(J


$@0J>e$,(J$@;d$N(Jpost$@$KBP$7$F$$$?$@$$$?(Jfollow$@$G$7$?!##X$K$D$$$F$O$^$@ITJY6/$J(J
$@$b$N$G$D$$;W$$IU$$$?(Jprogram$@$,$&$^$/$$(J$@$+$J$+$C$?$N$G$J$s$+$&$^$$<j$,$8(J
$@$D$O$"$k$K0c$$$J$$$J$s$F5$7Z$J5$;}$A$G(Jpost$@$7$?$N$G$9$,!"(Jsaver$@$r%"%W%j(J
$@%1!<%7%g%s$H$7$F:n$k$K$O7k9=5$$r;H$o$J$1$l$P$J$i$J$$$3$H$,$o$+$j$^$7$?!#(J
$@$I$&$b$"$j$,$H$&$4$6$$$^$7$?(J$@!#(J
--
+----------------------------------------------------------------------+
  $@9bBt(J $@=$0l(J( E-mail : takazawa@cam.cpg.sony.co.jp )
  Sony corp. Camera Products Group
Technical Details
Message-ID: <TAKAZAWA.92Sep22153304@ctcc08.cam.cpg.sony.co.jp>
Path: arc1-ca.pugleaf.net!sparky!uunet!sun-barr!sh.wide!wnoc-tyo-news!scslwide!wsgw!headgw!atg2gw!atggw!cpggw!cpgcgw!takazawa
References: <TAKAZAWA.92Sep10112025@ctcc08.cam.cpg.sony.co.jp> <NAGAE.92Sep16174709@karin.an.isl.titech.ac.jp>

Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS
X-Google-Thread: 1667f1,59a37d7a077c2f03
X-Google-Attributes: gid1667f1,public
X-Google-ArrivalTime: 1992-09-21 13:52:08 PST
Path: arc1-ca.pugleaf.net!sparky!uunet!sun-barr!sh.wide!wnoc-tyo-news!scslwide!wsgw!headgw!atg2gw!atggw!cpggw!cpgcgw!takazawa
From: takazawa@cam.cpg.sony.co.jp (Shuichi Takazawa)
Newsgroups: fj.windows.x
Subject: Re: Get Key Event
Message-ID: <TAKAZAWA.92Sep22153304@ctcc08.cam.cpg.sony.co.jp>
Date: 22 Sep 92 15:33:04 GMT
References: <TAKAZAWA.92Sep10112025@ctcc08.cam.cpg.sony.co.jp>
 <NAGAE.92Sep16174709@karin.an.isl.titech.ac.jp>
Sender: news@cam.cpg.sony.co.jp (Usenet News System)
Distribution: fj
Organization: Sony corp. Camera Products Group Atsugi No.2 Japan.
Lines: 183
In-reply-to: nagae@an.isl.titech.ac.jp's message of 16 Sep 92 08:47:09 GMT