|
|
|
@ -311,7 +311,6 @@ BOOLEAN gmenu_valid_mouse_pos(int *plOffset) |
|
|
|
|
|
|
|
|
|
|
|
BOOL gmenu_left_mouse(BOOL isDown) |
|
|
|
BOOL gmenu_left_mouse(BOOL isDown) |
|
|
|
{ |
|
|
|
{ |
|
|
|
BOOL result; |
|
|
|
|
|
|
|
TMenuItem *pItem; |
|
|
|
TMenuItem *pItem; |
|
|
|
DWORD i, w; |
|
|
|
DWORD i, w; |
|
|
|
int dummy; |
|
|
|
int dummy; |
|
|
|
@ -319,53 +318,45 @@ BOOL gmenu_left_mouse(BOOL isDown) |
|
|
|
if (!isDown) { |
|
|
|
if (!isDown) { |
|
|
|
if (mouseNavigation) { |
|
|
|
if (mouseNavigation) { |
|
|
|
mouseNavigation = FALSE; |
|
|
|
mouseNavigation = FALSE; |
|
|
|
result = TRUE; |
|
|
|
return TRUE; |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
result = FALSE; |
|
|
|
return FALSE; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!sgpCurrentMenu) { |
|
|
|
|
|
|
|
return FALSE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (MouseY >= PANEL_TOP) { |
|
|
|
|
|
|
|
return FALSE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (MouseY - 117 < 0) { |
|
|
|
|
|
|
|
return TRUE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
i = (MouseY - 117) / 45; |
|
|
|
|
|
|
|
if (i >= sgCurrentMenuIdx) { |
|
|
|
|
|
|
|
return TRUE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
pItem = &sgpCurrentMenu[i]; |
|
|
|
|
|
|
|
if (!(sgpCurrentMenu[i].dwFlags & GMENU_ENABLED)) { |
|
|
|
|
|
|
|
return TRUE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
w = gmenu_get_lfont(pItem); |
|
|
|
|
|
|
|
if (MouseX < SCREEN_WIDTH / 2 - w / 2) { |
|
|
|
|
|
|
|
return TRUE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (MouseX > SCREEN_WIDTH / 2 + w / 2) { |
|
|
|
|
|
|
|
return TRUE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
sgpCurrItem = pItem; |
|
|
|
|
|
|
|
PlaySFX(IS_TITLEMOV); |
|
|
|
|
|
|
|
if (pItem->dwFlags & GMENU_SLIDER) { |
|
|
|
|
|
|
|
mouseNavigation = gmenu_valid_mouse_pos(&dummy); |
|
|
|
|
|
|
|
gmenu_on_mouse_move(); |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
|
|
|
|
sgpCurrItem->fnMenu(TRUE); |
|
|
|
if (!sgpCurrentMenu) { |
|
|
|
|
|
|
|
return FALSE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (MouseY >= PANEL_TOP) { |
|
|
|
|
|
|
|
return FALSE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
if (MouseY - 117 >= 0) { |
|
|
|
|
|
|
|
i = (MouseY - 117) / 45; |
|
|
|
|
|
|
|
if (i < sgCurrentMenuIdx) { |
|
|
|
|
|
|
|
pItem = &sgpCurrentMenu[i]; |
|
|
|
|
|
|
|
if ((sgpCurrentMenu[i].dwFlags & GMENU_ENABLED) != 0) { |
|
|
|
|
|
|
|
w = gmenu_get_lfont(pItem); |
|
|
|
|
|
|
|
if (MouseX >= SCREEN_WIDTH / 2 - w / 2) { |
|
|
|
|
|
|
|
if (MouseX <= SCREEN_WIDTH / 2 + w / 2) { |
|
|
|
|
|
|
|
sgpCurrItem = pItem; |
|
|
|
|
|
|
|
PlaySFX(IS_TITLEMOV); |
|
|
|
|
|
|
|
if (pItem->dwFlags & GMENU_SLIDER) { |
|
|
|
|
|
|
|
mouseNavigation = gmenu_valid_mouse_pos(&dummy); |
|
|
|
|
|
|
|
gmenu_on_mouse_move(); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
sgpCurrItem->fnMenu(TRUE); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
result = TRUE; |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
result = TRUE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
result = TRUE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
result = TRUE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
result = TRUE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
result = TRUE; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
return result; |
|
|
|
return TRUE; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void gmenu_enable(TMenuItem *pMenuItem, BOOL enable) |
|
|
|
void gmenu_enable(TMenuItem *pMenuItem, BOOL enable) |
|
|
|
|