mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-06 14:27:16 +00:00
(svn r2074) MouseLoop -> InputLoop(), factor out a real mouse-specific MouseLoop from the new InitLoop() (more in the spirit of HandleKeypress()).
This commit is contained in:
parent
d4b3469e2f
commit
f89984642e
2
ttd.c
2
ttd.c
@ -1163,7 +1163,7 @@ void GameLoop(void)
|
||||
if (!_pause || _cheats.build_in_pause.value)
|
||||
MoveAllTextEffects();
|
||||
|
||||
MouseLoop();
|
||||
InputLoop();
|
||||
|
||||
if (_game_mode != GM_MENU)
|
||||
MusicLoop();
|
||||
|
61
window.c
61
window.c
@ -1284,37 +1284,11 @@ static void HandleKeypress(uint32 key)
|
||||
extern void UpdateTileSelection(void);
|
||||
extern bool VpHandlePlaceSizingDrag(void);
|
||||
|
||||
void MouseLoop(void)
|
||||
static void MouseLoop(int click, int mousewheel)
|
||||
{
|
||||
int x,y;
|
||||
Window *w;
|
||||
ViewPort *vp;
|
||||
int click;
|
||||
int mousewheel;
|
||||
|
||||
_current_player = _local_player;
|
||||
|
||||
// Handle pressed keys
|
||||
if (_pressed_key) {
|
||||
uint32 key = _pressed_key; _pressed_key = 0;
|
||||
HandleKeypress(key);
|
||||
}
|
||||
|
||||
// Mouse event?
|
||||
click = 0;
|
||||
if (_left_button_down && !_left_button_clicked) {
|
||||
_left_button_clicked = true;
|
||||
click = 1;
|
||||
} else if (_right_button_clicked) {
|
||||
_right_button_clicked = false;
|
||||
click = 2;
|
||||
}
|
||||
|
||||
mousewheel = 0;
|
||||
if (_cursor.wheel) {
|
||||
mousewheel = _cursor.wheel;
|
||||
_cursor.wheel = 0;
|
||||
}
|
||||
|
||||
DecreaseWindowCounters();
|
||||
HandlePlacePresize();
|
||||
@ -1410,6 +1384,39 @@ void MouseLoop(void)
|
||||
}
|
||||
}
|
||||
|
||||
void InputLoop(void)
|
||||
{
|
||||
int click;
|
||||
int mousewheel;
|
||||
|
||||
_current_player = _local_player;
|
||||
|
||||
// Handle pressed keys
|
||||
if (_pressed_key) {
|
||||
uint32 key = _pressed_key; _pressed_key = 0;
|
||||
HandleKeypress(key);
|
||||
}
|
||||
|
||||
// Mouse event?
|
||||
click = 0;
|
||||
if (_left_button_down && !_left_button_clicked) {
|
||||
_left_button_clicked = true;
|
||||
click = 1;
|
||||
} else if (_right_button_clicked) {
|
||||
_right_button_clicked = false;
|
||||
click = 2;
|
||||
}
|
||||
|
||||
mousewheel = 0;
|
||||
if (_cursor.wheel) {
|
||||
mousewheel = _cursor.wheel;
|
||||
_cursor.wheel = 0;
|
||||
}
|
||||
|
||||
MouseLoop(click, mousewheel);
|
||||
}
|
||||
|
||||
|
||||
static int _we4_timer;
|
||||
|
||||
extern uint32 _pixels_redrawn;
|
||||
|
Loading…
Reference in New Issue
Block a user