rename on_key to on_navigate

This commit is contained in:
idea4good 2020-06-10 23:36:35 +08:00
parent 0d01238bbc
commit 95e8ad500e
6 changed files with 62 additions and 62 deletions

View File

@ -1376,10 +1376,10 @@ typedef enum
}WND_STATUS; }WND_STATUS;
typedef enum typedef enum
{ {
KEY_FORWARD, NAV_FORWARD,
KEY_BACKWARD, NAV_BACKWARD,
KEY_ENTER NAV_ENTER
}KEY_TYPE; }NAVIGATION_KEY;
typedef enum typedef enum
{ {
TOUCH_DOWN, TOUCH_DOWN,
@ -1661,7 +1661,7 @@ public:
child = child->m_next_sibling; child = child->m_next_sibling;
} }
} }
virtual void on_key(KEY_TYPE key) virtual void on_navigate(NAVIGATION_KEY key)
{ {
c_wnd* priority_wnd = 0; c_wnd* priority_wnd = 0;
c_wnd* tmp_child = m_top_child; c_wnd* tmp_child = m_top_child;
@ -1676,17 +1676,17 @@ public:
} }
if (priority_wnd) if (priority_wnd)
{ {
return priority_wnd->on_key(key); return priority_wnd->on_navigate(key);
} }
if (!is_focus_wnd()) if (!is_focus_wnd())
{ {
return; return;
} }
if (key != KEY_BACKWARD && key != KEY_FORWARD) if (key != NAV_BACKWARD && key != NAV_FORWARD)
{ {
if (m_focus_child) if (m_focus_child)
{ {
m_focus_child->on_key(key); m_focus_child->on_navigate(key);
} }
return; return;
} }
@ -1711,17 +1711,17 @@ public:
return; return;
} }
// Move focus from old wnd to next wnd // Move focus from old wnd to next wnd
c_wnd* next_focus_wnd = (key == KEY_FORWARD) ? old_focus_wnd->m_next_sibling : old_focus_wnd->m_prev_sibling; c_wnd* next_focus_wnd = (key == NAV_FORWARD) ? old_focus_wnd->m_next_sibling : old_focus_wnd->m_prev_sibling;
while (next_focus_wnd && (!next_focus_wnd->is_focus_wnd())) while (next_focus_wnd && (!next_focus_wnd->is_focus_wnd()))
{// Search neighbor of old focus wnd {// Search neighbor of old focus wnd
next_focus_wnd = (key == KEY_FORWARD) ? next_focus_wnd->m_next_sibling : next_focus_wnd->m_prev_sibling; next_focus_wnd = (key == NAV_FORWARD) ? next_focus_wnd->m_next_sibling : next_focus_wnd->m_prev_sibling;
} }
if (!next_focus_wnd) if (!next_focus_wnd)
{// Search whole brother wnd {// Search whole brother wnd
next_focus_wnd = (key == KEY_FORWARD) ? old_focus_wnd->m_parent->m_top_child : old_focus_wnd->m_parent->get_last_child(); next_focus_wnd = (key == NAV_FORWARD) ? old_focus_wnd->m_parent->m_top_child : old_focus_wnd->m_parent->get_last_child();
while (next_focus_wnd && (!next_focus_wnd->is_focus_wnd())) while (next_focus_wnd && (!next_focus_wnd->is_focus_wnd()))
{ {
next_focus_wnd = (key == KEY_FORWARD) ? next_focus_wnd->m_next_sibling : next_focus_wnd->m_prev_sibling; next_focus_wnd = (key == NAV_FORWARD) ? next_focus_wnd->m_next_sibling : next_focus_wnd->m_prev_sibling;
} }
} }
if (next_focus_wnd) if (next_focus_wnd)
@ -1916,19 +1916,19 @@ protected:
notify_parent(GL_BN_CLICKED, 0); notify_parent(GL_BN_CLICKED, 0);
} }
} }
virtual void on_key(KEY_TYPE key) virtual void on_navigate(NAVIGATION_KEY key)
{ {
switch (key) switch (key)
{ {
case KEY_ENTER: case NAV_ENTER:
on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN); on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN);
on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP); on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP);
break; break;
case KEY_FORWARD: case NAV_FORWARD:
case KEY_BACKWARD: case NAV_BACKWARD:
break; break;
} }
return c_wnd::on_key(key); return c_wnd::on_navigate(key);
} }
}; };
#endif #endif
@ -2348,16 +2348,16 @@ protected:
m_status = STATUS_NORMAL; m_status = STATUS_NORMAL;
on_paint(); on_paint();
} }
virtual void on_key(KEY_TYPE key) virtual void on_navigate(NAVIGATION_KEY key)
{ {
switch (key) switch (key)
{ {
case KEY_ENTER: case NAV_ENTER:
(m_status == STATUS_PUSHED) ? s_keyboard.on_key(key) : (on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN), on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP)); (m_status == STATUS_PUSHED) ? s_keyboard.on_navigate(key) : (on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN), on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP));
return; return;
case KEY_BACKWARD: case NAV_BACKWARD:
case KEY_FORWARD: case NAV_FORWARD:
return (m_status == STATUS_PUSHED) ? s_keyboard.on_key(key) : c_wnd::on_key(key); return (m_status == STATUS_PUSHED) ? s_keyboard.on_navigate(key) : c_wnd::on_navigate(key);
} }
} }
virtual void on_touch(int x, int y, TOUCH_ACTION action) virtual void on_touch(int x, int y, TOUCH_ACTION action)
@ -2582,25 +2582,25 @@ protected:
m_status = STATUS_NORMAL; m_status = STATUS_NORMAL;
on_paint(); on_paint();
} }
virtual void on_key(KEY_TYPE key) virtual void on_navigate(NAVIGATION_KEY key)
{ {
switch (key) switch (key)
{ {
case KEY_ENTER: case NAV_ENTER:
on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN); on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN);
on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP); on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP);
return; return;
case KEY_BACKWARD: case NAV_BACKWARD:
if (m_status != STATUS_PUSHED) if (m_status != STATUS_PUSHED)
{ {
return c_wnd::on_key(key); return c_wnd::on_navigate(key);
} }
m_selected_item = (m_selected_item > 0) ? (m_selected_item - 1) : m_selected_item; m_selected_item = (m_selected_item > 0) ? (m_selected_item - 1) : m_selected_item;
return show_list(); return show_list();
case KEY_FORWARD: case NAV_FORWARD:
if (m_status != STATUS_PUSHED) if (m_status != STATUS_PUSHED)
{ {
return c_wnd::on_key(key); return c_wnd::on_navigate(key);
} }
m_selected_item = (m_selected_item < (m_item_total - 1)) ? (m_selected_item + 1) : m_selected_item; m_selected_item = (m_selected_item < (m_item_total - 1)) ? (m_selected_item + 1) : m_selected_item;
return show_list(); return show_list();
@ -2795,11 +2795,11 @@ public:
} }
} }
inline virtual void on_touch(int x, int y, TOUCH_ACTION action); inline virtual void on_touch(int x, int y, TOUCH_ACTION action);
virtual void on_key(KEY_TYPE key) virtual void on_navigate(NAVIGATION_KEY key)
{ {
if (m_slides[m_active_slide_index]) if (m_slides[m_active_slide_index])
{ {
m_slides[m_active_slide_index]->on_key(key); m_slides[m_active_slide_index]->on_navigate(key);
} }
} }
protected: protected:

View File

@ -31,10 +31,10 @@ typedef enum
typedef enum typedef enum
{ {
KEY_FORWARD, NAV_FORWARD,
KEY_BACKWARD, NAV_BACKWARD,
KEY_ENTER NAV_ENTER
}KEY_TYPE; }NAVIGATION_KEY;
typedef enum typedef enum
{ {
@ -353,7 +353,7 @@ public:
child = child->m_next_sibling; child = child->m_next_sibling;
} }
} }
virtual void on_key(KEY_TYPE key) virtual void on_navigate(NAVIGATION_KEY key)
{ {
c_wnd* priority_wnd = 0; c_wnd* priority_wnd = 0;
c_wnd* tmp_child = m_top_child; c_wnd* tmp_child = m_top_child;
@ -368,18 +368,18 @@ public:
} }
if (priority_wnd) if (priority_wnd)
{ {
return priority_wnd->on_key(key); return priority_wnd->on_navigate(key);
} }
if (!is_focus_wnd()) if (!is_focus_wnd())
{ {
return; return;
} }
if (key != KEY_BACKWARD && key != KEY_FORWARD) if (key != NAV_BACKWARD && key != NAV_FORWARD)
{ {
if (m_focus_child) if (m_focus_child)
{ {
m_focus_child->on_key(key); m_focus_child->on_navigate(key);
} }
return; return;
} }
@ -405,17 +405,17 @@ public:
return; return;
} }
// Move focus from old wnd to next wnd // Move focus from old wnd to next wnd
c_wnd* next_focus_wnd = (key == KEY_FORWARD) ? old_focus_wnd->m_next_sibling : old_focus_wnd->m_prev_sibling; c_wnd* next_focus_wnd = (key == NAV_FORWARD) ? old_focus_wnd->m_next_sibling : old_focus_wnd->m_prev_sibling;
while (next_focus_wnd && (!next_focus_wnd->is_focus_wnd())) while (next_focus_wnd && (!next_focus_wnd->is_focus_wnd()))
{// Search neighbor of old focus wnd {// Search neighbor of old focus wnd
next_focus_wnd = (key == KEY_FORWARD) ? next_focus_wnd->m_next_sibling : next_focus_wnd->m_prev_sibling; next_focus_wnd = (key == NAV_FORWARD) ? next_focus_wnd->m_next_sibling : next_focus_wnd->m_prev_sibling;
} }
if (!next_focus_wnd) if (!next_focus_wnd)
{// Search whole brother wnd {// Search whole brother wnd
next_focus_wnd = (key == KEY_FORWARD) ? old_focus_wnd->m_parent->m_top_child : old_focus_wnd->m_parent->get_last_child(); next_focus_wnd = (key == NAV_FORWARD) ? old_focus_wnd->m_parent->m_top_child : old_focus_wnd->m_parent->get_last_child();
while (next_focus_wnd && (!next_focus_wnd->is_focus_wnd())) while (next_focus_wnd && (!next_focus_wnd->is_focus_wnd()))
{ {
next_focus_wnd = (key == KEY_FORWARD) ? next_focus_wnd->m_next_sibling : next_focus_wnd->m_prev_sibling; next_focus_wnd = (key == NAV_FORWARD) ? next_focus_wnd->m_next_sibling : next_focus_wnd->m_prev_sibling;
} }
} }
if (next_focus_wnd) if (next_focus_wnd)

View File

@ -85,19 +85,19 @@ protected:
notify_parent(GL_BN_CLICKED, 0); notify_parent(GL_BN_CLICKED, 0);
} }
} }
virtual void on_key(KEY_TYPE key) virtual void on_navigate(NAVIGATION_KEY key)
{ {
switch (key) switch (key)
{ {
case KEY_ENTER: case NAV_ENTER:
on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN); on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN);
on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP); on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP);
break; break;
case KEY_FORWARD: case NAV_FORWARD:
case KEY_BACKWARD: case NAV_BACKWARD:
break; break;
} }
return c_wnd::on_key(key); return c_wnd::on_navigate(key);
} }
}; };

View File

@ -98,16 +98,16 @@ protected:
m_status = STATUS_NORMAL; m_status = STATUS_NORMAL;
on_paint(); on_paint();
} }
virtual void on_key(KEY_TYPE key) virtual void on_navigate(NAVIGATION_KEY key)
{ {
switch (key) switch (key)
{ {
case KEY_ENTER: case NAV_ENTER:
(m_status == STATUS_PUSHED) ? s_keyboard.on_key(key) : (on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN), on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP)); (m_status == STATUS_PUSHED) ? s_keyboard.on_navigate(key) : (on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN), on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP));
return; return;
case KEY_BACKWARD: case NAV_BACKWARD:
case KEY_FORWARD: case NAV_FORWARD:
return (m_status == STATUS_PUSHED) ? s_keyboard.on_key(key) : c_wnd::on_key(key); return (m_status == STATUS_PUSHED) ? s_keyboard.on_navigate(key) : c_wnd::on_navigate(key);
} }
} }
virtual void on_touch(int x, int y, TOUCH_ACTION action) virtual void on_touch(int x, int y, TOUCH_ACTION action)

View File

@ -117,25 +117,25 @@ protected:
m_status = STATUS_NORMAL; m_status = STATUS_NORMAL;
on_paint(); on_paint();
} }
virtual void on_key(KEY_TYPE key) virtual void on_navigate(NAVIGATION_KEY key)
{ {
switch (key) switch (key)
{ {
case KEY_ENTER: case NAV_ENTER:
on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN); on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_DOWN);
on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP); on_touch(m_wnd_rect.m_left, m_wnd_rect.m_top, TOUCH_UP);
return; return;
case KEY_BACKWARD: case NAV_BACKWARD:
if (m_status != STATUS_PUSHED) if (m_status != STATUS_PUSHED)
{ {
return c_wnd::on_key(key); return c_wnd::on_navigate(key);
} }
m_selected_item = (m_selected_item > 0) ? (m_selected_item - 1) : m_selected_item; m_selected_item = (m_selected_item > 0) ? (m_selected_item - 1) : m_selected_item;
return show_list(); return show_list();
case KEY_FORWARD: case NAV_FORWARD:
if (m_status != STATUS_PUSHED) if (m_status != STATUS_PUSHED)
{ {
return c_wnd::on_key(key); return c_wnd::on_navigate(key);
} }
m_selected_item = (m_selected_item < (m_item_total - 1)) ? (m_selected_item + 1) : m_selected_item; m_selected_item = (m_selected_item < (m_item_total - 1)) ? (m_selected_item + 1) : m_selected_item;
return show_list(); return show_list();

View File

@ -107,11 +107,11 @@ public:
} }
} }
inline virtual void on_touch(int x, int y, TOUCH_ACTION action); inline virtual void on_touch(int x, int y, TOUCH_ACTION action);
virtual void on_key(KEY_TYPE key) virtual void on_navigate(NAVIGATION_KEY key)
{ {
if (m_slides[m_active_slide_index]) if (m_slides[m_active_slide_index])
{ {
m_slides[m_active_slide_index]->on_key(key); m_slides[m_active_slide_index]->on_navigate(key);
} }
} }
protected: protected: