From 3b7b2ef6b7eaa6767d9aa9e71a300ad104053484 Mon Sep 17 00:00:00 2001 From: kojima Date: Wed, 14 Mar 2001 03:18:16 +0000 Subject: [PATCH] *** empty log message *** --- WINGs/wevent.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/WINGs/wevent.c b/WINGs/wevent.c index 89d4df5c..63d9bb73 100644 --- a/WINGs/wevent.c +++ b/WINGs/wevent.c @@ -38,7 +38,7 @@ typedef struct TimerHandler { struct timeval when; /* when to call the callback */ void *clientData; struct TimerHandler *next; - Bool permanent; + int nextDelay; /* 0 if it's one-shot */ } TimerHandler; @@ -174,7 +174,7 @@ WMAddTimerHandler(int milliseconds, WMCallback *callback, void *cdata) addmillisecs(&handler->when, milliseconds); handler->callback = callback; handler->clientData = cdata; - handler->permanent = False; + handler->nextDelay = 0; enqueueTimerHandler(handler); @@ -188,7 +188,7 @@ WMAddEternalTimerHandler(int milliseconds, WMCallback *callback, void *cdata) TimerHandler *handler = WMAddTimerHandler(milliseconds, callback, cdata); if (handler != NULL) - handler->permanent = True; + handler->nextDelay = milliseconds; return handler; } @@ -205,7 +205,7 @@ WMDeleteTimerWithClientData(void *cdata) tmp = timerHandler; if (tmp->clientData==cdata) { - tmp->permanent = False; + tmp->nextDelay = 0; if (!IS_ZERO(tmp->when)) { timerHandler = tmp->next; wfree(tmp); @@ -214,7 +214,7 @@ WMDeleteTimerWithClientData(void *cdata) while (tmp->next) { if (tmp->next->clientData==cdata) { handler = tmp->next; - handler->permanent = False; + handler->nextDelay = 0; if (IS_ZERO(handler->when)) break; tmp->next = handler->next; @@ -238,7 +238,7 @@ WMDeleteTimerHandler(WMHandlerID handlerID) tmp = timerHandler; - handler->permanent = False; + handler->nextDelay = 0; if (IS_ZERO(handler->when)) return; @@ -400,9 +400,9 @@ checkTimerHandlers() handler = timerHandler; timerHandler = timerHandler->next; - if (handler->permanent) { + if (handler->nextDelay > 0) { rightNow(&handler->when); - addmillisecs(&handler->when, milliseconds); + addmillisecs(&handler->when, handler->nextDelay); enqueueTimerHandler(handler); } else { wfree(handler);