implement "--More--" for Qt

Support MSGTYPE=stop by having qt_display_nhwindow(WIN_MESSAGE,TRUE)
issue a tty-style --More-- prompt.  For popup_dialog Off, the prompt
gets appended to the most recent message; for popup_dialog On, it is
issued via a popup and not displayed in the message window.

It accepts <space>, ^J, ^M, and ^[ (ESC) to dismiss.  There's no way
to dismiss it with the mouse (for !popup_dialog) which might need
some fix....

Several adventures along the way.  The '^C-in-parent-terminal triggers
infinite loop repeatedly complaining about "event loop already running"'
is now a one-shot complaint.  It isn't fixed but the severity of
having it happen is greatly reduced.
This commit is contained in:
PatR
2020-10-01 03:16:14 -07:00
parent 92902fd128
commit 2e90c1ebd4
7 changed files with 193 additions and 55 deletions

View File

@@ -25,7 +25,7 @@ bool NetHackQtKeyBuffer::Full() const { return (in+1)%maxkey==out; }
void NetHackQtKeyBuffer::Put(int k, int a, uint kbstate)
{
//raw_printf("k:%3d a:%3d s:0x%08x", k, a, kbstate);
//raw_printf("k:%3d a:'%s' s:0x%08x", k, visctrl((char) a), kbstate);
if ( Full() ) return; // Safety
key[in] = k;
ascii[in] = a;