| 776 | } |
| 777 | |
| 778 | bool interceptkey(int sym) |
| 779 | { |
| 780 | static int lastintercept = SDLK_UNKNOWN; |
| 781 | int len = lastintercept == sym ? events.length() : 0; |
| 782 | SDL_Event event; |
| 783 | while(SDL_PollEvent(&event)) switch(event.type) |
| 784 | { |
| 785 | case SDL_MOUSEMOTION: break; |
| 786 | default: pushevent(event); break; |
| 787 | } |
| 788 | lastintercept = sym; |
| 789 | if(sym != SDLK_UNKNOWN) for(int i = len; i < events.length(); i++) |
| 790 | { |
| 791 | if(events[i].type == SDL_KEYDOWN && events[i].key.keysym.sym == sym) { events.remove(i); return true; } |
| 792 | } |
| 793 | return false; |
| 794 | } |
| 795 | |
| 796 | static void resetmousemotion() |
| 797 | { |
no test coverage detected