summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/uiinput.cpp
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2017-08-10 18:05:54 +1000
committer Vas Crabb <vas@vastheman.com>2017-08-10 18:05:54 +1000
commitb363e92b5d14d988833242b4ce876bcdfac3cc65 (patch)
treea3b23a966362eb76bcbf6d2afe3120c630093d3d /src/emu/uiinput.cpp
parent7145f33cdf207267a7d0f3a56932e94f154851d0 (diff)
Don't process every character individually when searching - this reduces
lag if you keep typing while a big list is searched. (nw) patch up German translation
Diffstat (limited to 'src/emu/uiinput.cpp')
-rw-r--r--src/emu/uiinput.cpp51
1 files changed, 24 insertions, 27 deletions
diff --git a/src/emu/uiinput.cpp b/src/emu/uiinput.cpp
index 9123a6af526..18fee890eec 100644
--- a/src/emu/uiinput.cpp
+++ b/src/emu/uiinput.cpp
@@ -98,13 +98,13 @@ bool ui_input_manager::push_event(ui_event evt)
/* some pre-processing (this is an icky place to do this stuff!) */
switch (evt.event_type)
{
- case UI_EVENT_MOUSE_MOVE:
+ case ui_event::MOUSE_MOVE:
m_current_mouse_target = evt.target;
m_current_mouse_x = evt.mouse_x;
m_current_mouse_y = evt.mouse_y;
break;
- case UI_EVENT_MOUSE_LEAVE:
+ case ui_event::MOUSE_LEAVE:
if (m_current_mouse_target == evt.target)
{
m_current_mouse_target = nullptr;
@@ -113,11 +113,11 @@ bool ui_input_manager::push_event(ui_event evt)
}
break;
- case UI_EVENT_MOUSE_DOWN:
+ case ui_event::MOUSE_DOWN:
m_current_mouse_down = true;
break;
- case UI_EVENT_MOUSE_UP:
+ case ui_event::MOUSE_UP:
m_current_mouse_down = false;
break;
@@ -142,20 +142,17 @@ bool ui_input_manager::push_event(ui_event evt)
bool ui_input_manager::pop_event(ui_event *evt)
{
- bool result;
-
if (m_events_start != m_events_end)
{
*evt = m_events[m_events_start++];
m_events_start %= ARRAY_LENGTH(m_events);
- result = true;
+ return true;
}
else
{
memset(evt, 0, sizeof(*evt));
- result = false;
+ return false;
}
- return result;
}
@@ -293,8 +290,8 @@ g_profiler.stop();
void ui_input_manager::push_mouse_move_event(render_target* target, s32 x, s32 y)
{
- ui_event event = { UI_EVENT_NONE };
- event.event_type = UI_EVENT_MOUSE_MOVE;
+ ui_event event = { ui_event::NONE };
+ event.event_type = ui_event::MOUSE_MOVE;
event.target = target;
event.mouse_x = x;
event.mouse_y = y;
@@ -308,8 +305,8 @@ void ui_input_manager::push_mouse_move_event(render_target* target, s32 x, s32 y
void ui_input_manager::push_mouse_leave_event(render_target* target)
{
- ui_event event = { UI_EVENT_NONE };
- event.event_type = UI_EVENT_MOUSE_LEAVE;
+ ui_event event = { ui_event::NONE };
+ event.event_type = ui_event::MOUSE_LEAVE;
event.target = target;
push_event(event);
}
@@ -321,8 +318,8 @@ void ui_input_manager::push_mouse_leave_event(render_target* target)
void ui_input_manager::push_mouse_down_event(render_target* target, s32 x, s32 y)
{
- ui_event event = { UI_EVENT_NONE };
- event.event_type = UI_EVENT_MOUSE_DOWN;
+ ui_event event = { ui_event::NONE };
+ event.event_type = ui_event::MOUSE_DOWN;
event.target = target;
event.mouse_x = x;
event.mouse_y = y;
@@ -336,8 +333,8 @@ void ui_input_manager::push_mouse_down_event(render_target* target, s32 x, s32 y
void ui_input_manager::push_mouse_up_event(render_target* target, s32 x, s32 y)
{
- ui_event event = { UI_EVENT_NONE };
- event.event_type = UI_EVENT_MOUSE_UP;
+ ui_event event = { ui_event::NONE };
+ event.event_type = ui_event::MOUSE_UP;
event.target = target;
event.mouse_x = x;
event.mouse_y = y;
@@ -351,8 +348,8 @@ down event to the specified render_target
void ui_input_manager::push_mouse_rdown_event(render_target* target, s32 x, s32 y)
{
- ui_event event = { UI_EVENT_NONE };
- event.event_type = UI_EVENT_MOUSE_RDOWN;
+ ui_event event = { ui_event::NONE };
+ event.event_type = ui_event::MOUSE_RDOWN;
event.target = target;
event.mouse_x = x;
event.mouse_y = y;
@@ -366,8 +363,8 @@ down event to the specified render_target
void ui_input_manager::push_mouse_rup_event(render_target* target, s32 x, s32 y)
{
- ui_event event = { UI_EVENT_NONE };
- event.event_type = UI_EVENT_MOUSE_RUP;
+ ui_event event = { ui_event::NONE };
+ event.event_type = ui_event::MOUSE_RUP;
event.target = target;
event.mouse_x = x;
event.mouse_y = y;
@@ -381,8 +378,8 @@ void ui_input_manager::push_mouse_rup_event(render_target* target, s32 x, s32 y)
-------------------------------------------------*/
void ui_input_manager::push_mouse_double_click_event(render_target* target, s32 x, s32 y)
{
- ui_event event = { UI_EVENT_NONE };
- event.event_type = UI_EVENT_MOUSE_DOUBLE_CLICK;
+ ui_event event = { ui_event::NONE };
+ event.event_type = ui_event::MOUSE_DOUBLE_CLICK;
event.target = target;
event.mouse_x = x;
event.mouse_y = y;
@@ -395,8 +392,8 @@ void ui_input_manager::push_mouse_double_click_event(render_target* target, s32
-------------------------------------------------*/
void ui_input_manager::push_char_event(render_target* target, char32_t ch)
{
- ui_event event = { UI_EVENT_NONE };
- event.event_type = UI_EVENT_CHAR;
+ ui_event event = { ui_event::NONE };
+ event.event_type = ui_event::IME_CHAR;
event.target = target;
event.ch = ch;
push_event(event);
@@ -409,8 +406,8 @@ void ui_input_manager::push_char_event(render_target* target, char32_t ch)
void ui_input_manager::push_mouse_wheel_event(render_target *target, s32 x, s32 y, short delta, int ucNumLines)
{
- ui_event event = { UI_EVENT_NONE };
- event.event_type = UI_EVENT_MOUSE_WHEEL;
+ ui_event event = { ui_event::NONE };
+ event.event_type = ui_event::MOUSE_WHEEL;
event.target = target;
event.mouse_x = x;
event.mouse_y = y;