struct event ev) {
struct eventResult er;
- switch (ev.event) {
- case EV_FOCUS:
- buttonDrawIt(co, 1, 0);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_UNFOCUS:
- buttonDrawIt(co, 0, 0);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_KEYPRESS:
- if (ev.u.key == ' ' || ev.u.key == '\r') {
- /* look pushed */
- buttonDrawIt(co, 1, 1);
- newtRefresh();
- newtDelay(300000);
+ if (ev.when == EV_NORMAL) {
+ switch (ev.event) {
+ case EV_FOCUS:
buttonDrawIt(co, 1, 0);
- newtRefresh();
- newtDelay(300000);
-
- er.result = ER_EXITFORM;
- } else
- er.result = ER_IGNORED;
- break;
- }
-
- return er;
+ er.result = ER_SWALLOWED;
+ break;
+
+ case EV_UNFOCUS:
+ buttonDrawIt(co, 0, 0);
+ er.result = ER_SWALLOWED;
+ break;
+
+ case EV_KEYPRESS:
+ if (ev.u.key == ' ' || ev.u.key == '\r') {
+ /* look pushed */
+ buttonDrawIt(co, 1, 1);
+ newtRefresh();
+ newtDelay(300000);
+ buttonDrawIt(co, 1, 0);
+ newtRefresh();
+ newtDelay(300000);
+
+ er.result = ER_EXITFORM;
+ } else
+ er.result = ER_IGNORED;
+ break;
+ }
+ } else
+ er.result = ER_IGNORED;
+
+ return er;
}
struct eventResult er;
char * cur;
- switch (ev.event) {
- case EV_FOCUS:
- if (cb->type == LISTITEM)
- makeActive(co);
- else
- cbDrawIt(co, 1);
-
- er.result = ER_SWALLOWED;
- break;
-
- case EV_UNFOCUS:
- cbDrawIt(co, 0);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_KEYPRESS:
- if (ev.u.key == ' ' || ev.u.key == '\r') {
- if (cb->type == RADIO) {
+ if (ev.when == EV_NORMAL) {
+ switch (ev.event) {
+ case EV_FOCUS:
+ if (cb->type == LISTITEM)
makeActive(co);
- } else if (cb->type == CHECK) {
- cur = strchr(cb->seq, *cb->result);
- if (!cur)
- *cb->result = *cb->seq;
- else {
- cur++;
- if (! *cur)
+ else
+ cbDrawIt(co, 1);
+
+ er.result = ER_SWALLOWED;
+ break;
+
+ case EV_UNFOCUS:
+ cbDrawIt(co, 0);
+ er.result = ER_SWALLOWED;
+ break;
+
+ case EV_KEYPRESS:
+ if (ev.u.key == ' ' || ev.u.key == '\r') {
+ if (cb->type == RADIO) {
+ makeActive(co);
+ } else if (cb->type == CHECK) {
+ cur = strchr(cb->seq, *cb->result);
+ if (!cur)
*cb->result = *cb->seq;
- else
- *cb->result = *cur;
+ else {
+ cur++;
+ if (! *cur)
+ *cb->result = *cb->seq;
+ else
+ *cb->result = *cur;
+ }
+ cbDrawIt(co, 1);
+ er.result = ER_SWALLOWED;
+ } else {
+ er.result = ER_IGNORED;
}
- cbDrawIt(co, 1);
- er.result = ER_SWALLOWED;
} else {
er.result = ER_IGNORED;
}
- } else {
- er.result = ER_IGNORED;
}
- }
+ } else
+ er.result = ER_IGNORED;
- return er;
+ return er;
}
static void makeActive(newtComponent co) {
struct entry * en = co->data;
struct eventResult er;
- switch (ev.event) {
- case EV_FOCUS:
- /*SLtt_set_cursor_visibility(0);*/
- newtGotorc(co->top, co->left + (en->cursorPosition - en->firstChar));
- er.result = ER_SWALLOWED;
- break;
-
- case EV_UNFOCUS:
- /*SLtt_set_cursor_visibility(1);*/
- newtGotorc(0, 0);
- er.result = ER_SWALLOWED;
- break;
-
- case EV_KEYPRESS:
- er = entryHandleKey(co, ev.u.key);
- break;
- }
+ if (ev.when == EV_NORMAL) {
+ switch (ev.event) {
+ case EV_FOCUS:
+ /*SLtt_set_cursor_visibility(0);*/
+ newtGotorc(co->top, co->left +
+ (en->cursorPosition - en->firstChar));
+ er.result = ER_SWALLOWED;
+ break;
+
+ case EV_UNFOCUS:
+ /*SLtt_set_cursor_visibility(1);*/
+ newtGotorc(0, 0);
+ er.result = ER_SWALLOWED;
+ break;
+
+ case EV_KEYPRESS:
+ er = entryHandleKey(co, ev.u.key);
+ break;
+ }
+ } else
+ er.result = ER_IGNORED;
return er;
}
} else {
er.result = ER_IGNORED;
}
- }
+ }
entryDraw(co);