diff options
-rw-r--r-- | prtype.c | 22 | ||||
-rw-r--r-- | table11.c | 2 | ||||
-rw-r--r-- | x11.h | 1 |
3 files changed, 24 insertions, 1 deletions
@@ -613,6 +613,28 @@ PrintEVENTFORM(const unsigned char *buf) return 32; } +int +PrintEVENT(const unsigned char *buf) +{ + uint8_t n = IByte(buf); + long e = (long) (n & 0x7f); + struct ValueListEntry *p; + + p = TD[EVENT].ValueList; + while (p != NULL && p->Value != e) + p = p->Next; + + if (p != NULL) + fprintf(stdout, "%s", p->Name); + else + fprintf(stdout, "**INVALID** (%d)", n); + + if (n & 0x80) + fprintf(stdout, "\n%s%20s: %s", Leader, "source", "SendEvent"); + + return 1; +} + /* ************************************************************ */ int @@ -601,7 +601,7 @@ InitEnumeratedTypes(void) DefineEValue(p, 16L, "Length"); DefineEValue(p, 17L, "Implementation"); - p = DefineType(EVENT, ENUMERATED, "EVENT", (PrintProcType) PrintENUMERATED); + p = DefineType(EVENT, BUILTIN, "EVENT", (PrintProcType) PrintEVENT); DefineEValue(p, 2L, "KeyPress"); DefineEValue(p, 3L, "KeyRelease"); DefineEValue(p, 4L, "ButtonPress"); @@ -371,6 +371,7 @@ extern int PrintKEYCODEA(const unsigned char *buf); extern int PrintBUTTON(const unsigned char *buf); extern int PrintBUTTONA(const unsigned char *buf); extern int PrintEVENTFORM(const unsigned char *buf); +extern int PrintEVENT(const unsigned char *buf); extern int PrintENUMERATED(const unsigned char *buf, short length, struct ValueListEntry *ValueList); extern int PrintSET(const unsigned char *buf, short length, |