+5
-12
@@ -133,11 +133,9 @@ curses_message_win_puts(const char *message, boolean recursed)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
#define RESP " \n\033\r" /* space, enter, esc, cr */
|
#define XTRA_RESP "\r"
|
||||||
#define TRANS " \n\033\n" /* translated return value */
|
|
||||||
#else
|
#else
|
||||||
#define RESP " \n\033" /* space, enter, esc */
|
#define XTRA_RESP ""
|
||||||
#define TRANS " \n\033"
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
int
|
int
|
||||||
@@ -147,9 +145,8 @@ curses_block(boolean noscroll)
|
|||||||
{
|
{
|
||||||
int height, width, ret;
|
int height, width, ret;
|
||||||
WINDOW *win = curses_get_nhwin(MESSAGE_WIN);
|
WINDOW *win = curses_get_nhwin(MESSAGE_WIN);
|
||||||
char *resp = RESP;
|
char *resp = " \n\033" XTRA_RESP; /* space, enter, esc */
|
||||||
char *trans = TRANS;
|
|
||||||
char *rp = (char *) 0;
|
|
||||||
curses_get_window_size(MESSAGE_WIN, &height, &width);
|
curses_get_window_size(MESSAGE_WIN, &height, &width);
|
||||||
curses_toggle_color_attr(win, MORECOLOR, NONE, ON);
|
curses_toggle_color_attr(win, MORECOLOR, NONE, ON);
|
||||||
mvwprintw(win, my, mx, iflags.msg_is_alert ? "<TAB!>" : ">>");
|
mvwprintw(win, my, mx, iflags.msg_is_alert ? "<TAB!>" : ">>");
|
||||||
@@ -161,9 +158,7 @@ curses_block(boolean noscroll)
|
|||||||
/* msgtype=stop should require space/enter rather than
|
/* msgtype=stop should require space/enter rather than
|
||||||
* just any key, as we want to prevent YASD from
|
* just any key, as we want to prevent YASD from
|
||||||
* riding direction keys. */
|
* riding direction keys. */
|
||||||
while (!iflags.msg_is_alert &&
|
while (!iflags.msg_is_alert && (ret = wgetch(win)) && !index(resp,(char)ret));
|
||||||
(ret = wgetch(win)) && ((rp = index(resp,(char)ret)) == 0))
|
|
||||||
;
|
|
||||||
if (iflags.msg_is_alert)
|
if (iflags.msg_is_alert)
|
||||||
curses_alert_main_borders(FALSE);
|
curses_alert_main_borders(FALSE);
|
||||||
if (height == 1) {
|
if (height == 1) {
|
||||||
@@ -176,8 +171,6 @@ curses_block(boolean noscroll)
|
|||||||
}
|
}
|
||||||
wrefresh(win);
|
wrefresh(win);
|
||||||
}
|
}
|
||||||
if (rp)
|
|
||||||
ret = trans[(rp - resp)];
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user