| 4916 | } |
| 4917 | |
| 4918 | int NetHackQtBind::qt_nh_poskey(int *x, int *y, int *mod) |
| 4919 | { |
| 4920 | if (main) |
| 4921 | main->fadeHighlighting(); |
| 4922 | |
| 4923 | // Process events until a key or map-click arrives. |
| 4924 | // |
| 4925 | while (keybuffer.Empty() && clickbuffer.Empty() |
| 4926 | #ifdef SAFERHANGUP |
| 4927 | && !program_state.done_hup |
| 4928 | #endif |
| 4929 | ) { |
| 4930 | qApp->enter_loop(); |
| 4931 | } |
| 4932 | #ifdef SAFERHANGUP |
| 4933 | if (program_state.done_hup && keybuffer.Empty()) return '\033'; |
| 4934 | #endif |
| 4935 | if (!keybuffer.Empty()) { |
| 4936 | return keybuffer.GetAscii(); |
| 4937 | } else { |
| 4938 | *x=clickbuffer.NextX(); |
| 4939 | *y=clickbuffer.NextY(); |
| 4940 | *mod=clickbuffer.NextMod(); |
| 4941 | clickbuffer.Get(); |
| 4942 | return 0; |
| 4943 | } |
| 4944 | } |
| 4945 | |
| 4946 | void NetHackQtBind::qt_nhbell() |
| 4947 | { |