mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-25 16:43:53 +00:00
518 lines
19 KiB
C++
518 lines
19 KiB
C++
#include "../../Minecraft.World/Platform/stdafx.h"
|
|
#include "UI.h"
|
|
#include "UIComponent_Tooltips.h"
|
|
|
|
UIComponent_Tooltips::UIComponent_Tooltips(int iPad, void* initData,
|
|
UILayer* parentLayer)
|
|
: UIScene(iPad, parentLayer) {
|
|
for (int i = 0; i < XUSER_MAX_COUNT; i++) {
|
|
for (int j = 0; j < ACTION_MAX_MENU; j++) {
|
|
m_overrideSFX[i][j] = false;
|
|
}
|
|
}
|
|
// Setup all the Iggy references we need for this scene
|
|
initialiseMovie();
|
|
|
|
#ifdef __PSVITA__
|
|
// initialise vita touch controls with ids
|
|
for (unsigned int i = 0; i < ETouchInput_Count; ++i) {
|
|
m_TouchController[i].init(i);
|
|
}
|
|
#endif
|
|
|
|
#if defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__)
|
|
if (InputManager.IsCircleCrossSwapped()) {
|
|
IggyDataValue result;
|
|
IggyDataValue value[1];
|
|
value[0].type = IGGY_DATATYPE_boolean;
|
|
value[0].boolval = true;
|
|
IggyResult out = IggyPlayerCallMethodRS(getMovie(), &result,
|
|
IggyPlayerRootPath(getMovie()),
|
|
m_funcSetABSwap, 1, value);
|
|
}
|
|
#endif
|
|
}
|
|
|
|
std::wstring UIComponent_Tooltips::getMoviePath() {
|
|
switch (m_parentLayer->getViewport()) {
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_TOP:
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_BOTTOM:
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_LEFT:
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_RIGHT:
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_TOP_LEFT:
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_TOP_RIGHT:
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_BOTTOM_LEFT:
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_BOTTOM_RIGHT:
|
|
m_bSplitscreen = true;
|
|
return L"ToolTipsSplit";
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_FULLSCREEN:
|
|
default:
|
|
m_bSplitscreen = false;
|
|
return L"ToolTips";
|
|
break;
|
|
}
|
|
}
|
|
|
|
F64 UIComponent_Tooltips::getSafeZoneHalfWidth() {
|
|
float width = ui.getScreenWidth();
|
|
|
|
float safeWidth = 0.0f;
|
|
|
|
#ifndef __PSVITA__
|
|
// 85% safezone for tooltips in either SD mode
|
|
if (!RenderManager.IsHiDef()) {
|
|
// 85% safezone
|
|
safeWidth = m_movieWidth * (0.15f / 2);
|
|
} else {
|
|
// 90% safezone
|
|
safeWidth = width * (0.1f / 2);
|
|
}
|
|
#endif
|
|
return safeWidth;
|
|
}
|
|
|
|
void UIComponent_Tooltips::updateSafeZone() {
|
|
// Distance from edge
|
|
F64 safeTop = 0.0;
|
|
F64 safeBottom = 0.0;
|
|
F64 safeLeft = 0.0;
|
|
F64 safeRight = 0.0;
|
|
|
|
switch (m_parentLayer->getViewport()) {
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_TOP:
|
|
safeTop = getSafeZoneHalfHeight();
|
|
safeLeft = getSafeZoneHalfWidth();
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_BOTTOM:
|
|
safeBottom = getSafeZoneHalfHeight();
|
|
safeLeft = getSafeZoneHalfWidth();
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_LEFT:
|
|
safeLeft = getSafeZoneHalfWidth();
|
|
safeBottom = getSafeZoneHalfHeight();
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_RIGHT:
|
|
safeRight = getSafeZoneHalfWidth();
|
|
safeBottom = getSafeZoneHalfHeight();
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_TOP_LEFT:
|
|
safeTop = getSafeZoneHalfHeight();
|
|
safeLeft = getSafeZoneHalfWidth();
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_TOP_RIGHT:
|
|
safeTop = getSafeZoneHalfHeight();
|
|
safeRight = getSafeZoneHalfWidth();
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_BOTTOM_LEFT:
|
|
safeBottom = getSafeZoneHalfHeight();
|
|
safeLeft = getSafeZoneHalfWidth();
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_BOTTOM_RIGHT:
|
|
safeBottom = getSafeZoneHalfHeight();
|
|
safeRight = getSafeZoneHalfWidth();
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_FULLSCREEN:
|
|
default:
|
|
safeTop = getSafeZoneHalfHeight();
|
|
safeBottom = getSafeZoneHalfHeight();
|
|
safeLeft = getSafeZoneHalfWidth();
|
|
safeRight = getSafeZoneHalfWidth();
|
|
break;
|
|
}
|
|
setSafeZone(safeTop, safeBottom, safeLeft, safeRight);
|
|
}
|
|
|
|
void UIComponent_Tooltips::tick() {
|
|
UIScene::tick();
|
|
|
|
// set the opacity of the tooltip items
|
|
unsigned char ucAlpha = app.GetGameSettings(ProfileManager.GetPrimaryPad(),
|
|
eGameSetting_InterfaceOpacity);
|
|
float fVal;
|
|
|
|
if (ucAlpha < 80) {
|
|
// if we are in a menu, set the minimum opacity for tooltips to 15%
|
|
if (ui.GetMenuDisplayed(m_iPad) && (ucAlpha < 15)) {
|
|
ucAlpha = 15;
|
|
}
|
|
|
|
// check if we have the timer running for the opacity
|
|
unsigned int uiOpacityTimer = app.GetOpacityTimer(m_iPad);
|
|
if (uiOpacityTimer != 0) {
|
|
if (uiOpacityTimer < 10) {
|
|
float fStep = (80.0f - (float)ucAlpha) / 10.0f;
|
|
fVal =
|
|
0.01f * (80.0f - ((10.0f - (float)uiOpacityTimer) * fStep));
|
|
} else {
|
|
fVal = 0.01f * 80.0f;
|
|
}
|
|
} else {
|
|
fVal = 0.01f * (float)ucAlpha;
|
|
}
|
|
} else {
|
|
// if we are in a menu, set the minimum opacity for tooltips to 15%
|
|
if (ui.GetMenuDisplayed(m_iPad) && (ucAlpha < 15)) {
|
|
ucAlpha = 15;
|
|
}
|
|
fVal = 0.01f * (float)ucAlpha;
|
|
}
|
|
setOpacity(fVal);
|
|
|
|
bool layoutChanges = false;
|
|
for (int i = 0; i < eToolTipNumButtons; i++) {
|
|
if (!ui.IsReloadingSkin() && m_tooltipValues[i].show &&
|
|
m_tooltipValues[i].label.needsUpdating()) {
|
|
layoutChanges = true;
|
|
_SetTooltip(i, m_tooltipValues[i].label, m_tooltipValues[i].show,
|
|
true);
|
|
m_tooltipValues[i].label.setUpdated();
|
|
}
|
|
}
|
|
if (layoutChanges) _Relayout();
|
|
}
|
|
|
|
void UIComponent_Tooltips::render(S32 width, S32 height,
|
|
C4JRender::eViewportType viewport) {
|
|
if ((ProfileManager.GetLockedProfile() != -1) &&
|
|
!ui.GetMenuDisplayed(m_iPad) &&
|
|
(app.GetGameSettings(m_iPad, eGameSetting_Tooltips) == 0 ||
|
|
app.GetGameSettings(m_iPad, eGameSetting_DisplayHUD) == 0)) {
|
|
return;
|
|
}
|
|
|
|
if (m_bSplitscreen) {
|
|
S32 xPos = 0;
|
|
S32 yPos = 0;
|
|
switch (viewport) {
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_BOTTOM:
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_BOTTOM_LEFT:
|
|
yPos = (S32)(ui.getScreenHeight() / 2);
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_RIGHT:
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_TOP_RIGHT:
|
|
xPos = (S32)(ui.getScreenWidth() / 2);
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_BOTTOM_RIGHT:
|
|
xPos = (S32)(ui.getScreenWidth() / 2);
|
|
yPos = (S32)(ui.getScreenHeight() / 2);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
ui.setupRenderPosition(xPos, yPos);
|
|
|
|
S32 tileXStart = 0;
|
|
S32 tileYStart = 0;
|
|
S32 tileWidth = width;
|
|
S32 tileHeight = height;
|
|
|
|
switch (viewport) {
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_LEFT:
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_RIGHT:
|
|
tileHeight = (S32)(ui.getScreenHeight());
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_TOP:
|
|
tileWidth = (S32)(ui.getScreenWidth());
|
|
tileYStart = (S32)(m_movieHeight / 2);
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_SPLIT_BOTTOM:
|
|
tileWidth = (S32)(ui.getScreenWidth());
|
|
tileYStart = (S32)(m_movieHeight / 2);
|
|
break;
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_TOP_LEFT:
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_TOP_RIGHT:
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_BOTTOM_LEFT:
|
|
case C4JRender::VIEWPORT_TYPE_QUADRANT_BOTTOM_RIGHT:
|
|
tileYStart = (S32)(m_movieHeight / 2);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
IggyPlayerSetDisplaySize(getMovie(), m_movieWidth, m_movieHeight);
|
|
|
|
IggyPlayerDrawTilesStart(getMovie());
|
|
|
|
m_renderWidth = tileWidth;
|
|
m_renderHeight = tileHeight;
|
|
IggyPlayerDrawTile(getMovie(), tileXStart, tileYStart,
|
|
tileXStart + tileWidth, tileYStart + tileHeight, 0);
|
|
IggyPlayerDrawTilesEnd(getMovie());
|
|
} else {
|
|
UIScene::render(width, height, viewport);
|
|
}
|
|
}
|
|
|
|
void UIComponent_Tooltips::SetTooltipText(unsigned int tooltip, int iTextID) {
|
|
if (_SetTooltip(tooltip, iTextID)) _Relayout();
|
|
}
|
|
|
|
void UIComponent_Tooltips::SetEnableTooltips(bool bVal) {}
|
|
|
|
void UIComponent_Tooltips::ShowTooltip(unsigned int tooltip, bool show) {
|
|
if (show != m_tooltipValues[tooltip].show) {
|
|
_SetTooltip(tooltip, L"", show);
|
|
_Relayout();
|
|
}
|
|
}
|
|
|
|
void UIComponent_Tooltips::SetTooltips(int iA, int iB, int iX, int iY, int iLT,
|
|
int iRT, int iLB, int iRB, int iLS,
|
|
int iRS, int iBack, bool forceUpdate) {
|
|
bool needsRelayout = false;
|
|
needsRelayout = _SetTooltip(eToolTipButtonA, iA) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonB, iB) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonX, iX) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonY, iY) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonLT, iLT) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonRT, iRT) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonLB, iLB) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonRB, iRB) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonLS, iLS) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonRS, iRS) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonRS, iRS) || needsRelayout;
|
|
needsRelayout = _SetTooltip(eToolTipButtonBack, iBack) || needsRelayout;
|
|
if (needsRelayout) _Relayout();
|
|
}
|
|
|
|
void UIComponent_Tooltips::EnableTooltip(unsigned int tooltip, bool enable) {}
|
|
|
|
bool UIComponent_Tooltips::_SetTooltip(unsigned int iToolTip, int iTextID) {
|
|
bool changed = false;
|
|
if (iTextID != m_tooltipValues[iToolTip].iString ||
|
|
(iTextID > -1 && !m_tooltipValues[iToolTip].show)) {
|
|
m_tooltipValues[iToolTip].iString = iTextID;
|
|
changed = true;
|
|
if (iTextID > -1)
|
|
_SetTooltip(iToolTip, iTextID, true);
|
|
else if (iTextID == -2)
|
|
_SetTooltip(iToolTip, L"", true);
|
|
else
|
|
_SetTooltip(iToolTip, L"", false);
|
|
}
|
|
return changed;
|
|
}
|
|
|
|
void UIComponent_Tooltips::_SetTooltip(unsigned int iToolTipId, UIString label,
|
|
bool show, bool force) {
|
|
if (!force && !show && !m_tooltipValues[iToolTipId].show) {
|
|
return;
|
|
}
|
|
m_tooltipValues[iToolTipId].show = show;
|
|
m_tooltipValues[iToolTipId].label = label;
|
|
|
|
IggyDataValue result;
|
|
IggyDataValue value[3];
|
|
value[0].type = IGGY_DATATYPE_number;
|
|
value[0].number = iToolTipId;
|
|
|
|
const std::u16string convLabel = wstring_to_u16string(label.getString());
|
|
|
|
value[1].type = IGGY_DATATYPE_string_UTF16;
|
|
IggyStringUTF16 stringVal;
|
|
|
|
stringVal.string = convLabel.c_str();
|
|
stringVal.length = convLabel.length();
|
|
value[1].string16 = stringVal;
|
|
|
|
value[2].type = IGGY_DATATYPE_boolean;
|
|
value[2].boolval = show;
|
|
IggyResult out = IggyPlayerCallMethodRS(getMovie(), &result,
|
|
IggyPlayerRootPath(getMovie()),
|
|
m_funcSetTooltip, 3, value);
|
|
|
|
// app.DebugPrintf("Actual tooltip update!\n");
|
|
}
|
|
|
|
void UIComponent_Tooltips::_Relayout() {
|
|
IggyDataValue result;
|
|
IggyResult out = IggyPlayerCallMethodRS(getMovie(), &result,
|
|
IggyPlayerRootPath(getMovie()),
|
|
m_funcUpdateLayout, 0, NULL);
|
|
|
|
#ifdef __PSVITA__
|
|
// rebuild touchboxes
|
|
ui.TouchBoxRebuild(this);
|
|
#endif
|
|
}
|
|
|
|
#ifdef __PSVITA__
|
|
void UIComponent_Tooltips::handleTouchInput(unsigned int iPad, S32 x, S32 y,
|
|
int iId, bool bPressed,
|
|
bool bRepeat, bool bReleased) {
|
|
// app.DebugPrintf("ToolTip Touch ID = %i\n", iId);
|
|
bool handled = false;
|
|
|
|
// 4J - TomK no tooltips no touch!
|
|
if ((!ui.GetMenuDisplayed(ProfileManager.GetPrimaryPad())) &&
|
|
(app.GetGameSettings(ProfileManager.GetPrimaryPad(),
|
|
eGameSetting_Tooltips) == 0))
|
|
return;
|
|
|
|
// perform action on release
|
|
if (bReleased) {
|
|
switch (iId) {
|
|
case ETouchInput_Touch_A:
|
|
app.DebugPrintf("ToolTip Map Touch to _PSV_JOY_BUTTON_X\n",
|
|
iId);
|
|
if (InputManager.IsCircleCrossSwapped())
|
|
InputManager.MapTouchInput(iPad, _PSV_JOY_BUTTON_O);
|
|
else
|
|
InputManager.MapTouchInput(iPad, _PSV_JOY_BUTTON_X);
|
|
break;
|
|
case ETouchInput_Touch_B:
|
|
app.DebugPrintf("ToolTip Map Touch to _PSV_JOY_BUTTON_O\n",
|
|
iId);
|
|
if (InputManager.IsCircleCrossSwapped())
|
|
InputManager.MapTouchInput(iPad, _PSV_JOY_BUTTON_X);
|
|
else
|
|
InputManager.MapTouchInput(iPad, _PSV_JOY_BUTTON_O);
|
|
break;
|
|
case ETouchInput_Touch_X:
|
|
app.DebugPrintf("ToolTip Map Touch to _PSV_JOY_BUTTON_SQUARE\n",
|
|
iId);
|
|
InputManager.MapTouchInput(iPad, _PSV_JOY_BUTTON_SQUARE);
|
|
break;
|
|
case ETouchInput_Touch_Y:
|
|
app.DebugPrintf(
|
|
"ToolTip Map Touch to _PSV_JOY_BUTTON_TRIANGLE\n", iId);
|
|
InputManager.MapTouchInput(iPad, _PSV_JOY_BUTTON_TRIANGLE);
|
|
break;
|
|
case ETouchInput_Touch_LT:
|
|
/* not in use on vita */
|
|
app.DebugPrintf("ToolTip no action\n", iId);
|
|
break;
|
|
case ETouchInput_Touch_RightTrigger:
|
|
app.DebugPrintf("ToolTip no action\n", iId);
|
|
/* no action */
|
|
break;
|
|
case ETouchInput_Touch_LeftBumper:
|
|
app.DebugPrintf("ToolTip Map Touch to _PSV_JOY_BUTTON_L1\n",
|
|
iId);
|
|
InputManager.MapTouchInput(iPad, _PSV_JOY_BUTTON_L1);
|
|
break;
|
|
case ETouchInput_Touch_RightBumper:
|
|
app.DebugPrintf("ToolTip Map Touch to _PSV_JOY_BUTTON_R1\n",
|
|
iId);
|
|
InputManager.MapTouchInput(iPad, _PSV_JOY_BUTTON_R1);
|
|
break;
|
|
case ETouchInput_Touch_LeftStick:
|
|
app.DebugPrintf("ToolTip no action\n", iId);
|
|
/* no action */
|
|
break;
|
|
case ETouchInput_Touch_RightStick:
|
|
app.DebugPrintf(
|
|
"ToolTip Map Touch to _PSV_JOY_BUTTON_DPAD_DOWN\n", iId);
|
|
InputManager.MapTouchInput(iPad, _PSV_JOY_BUTTON_DPAD_DOWN);
|
|
break;
|
|
case ETouchInput_Touch_Select:
|
|
app.DebugPrintf("ToolTip Map Touch to _PSV_JOY_BUTTON_SELECT\n",
|
|
iId);
|
|
InputManager.MapTouchInput(iPad, _PSV_JOY_BUTTON_SELECT);
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
#endif
|
|
|
|
void UIComponent_Tooltips::handleReload() {
|
|
app.DebugPrintf("UIComponent_Tooltips::handleReload\n");
|
|
|
|
#if defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__)
|
|
if (InputManager.IsCircleCrossSwapped()) {
|
|
IggyDataValue result;
|
|
IggyDataValue value[1];
|
|
value[0].type = IGGY_DATATYPE_boolean;
|
|
value[0].boolval = true;
|
|
IggyResult out = IggyPlayerCallMethodRS(getMovie(), &result,
|
|
IggyPlayerRootPath(getMovie()),
|
|
m_funcSetABSwap, 1, value);
|
|
}
|
|
#endif
|
|
|
|
for (unsigned int i = 0; i < eToolTipNumButtons; ++i) {
|
|
_SetTooltip(i, m_tooltipValues[i].iString, m_tooltipValues[i].show,
|
|
true);
|
|
}
|
|
_Relayout();
|
|
}
|
|
|
|
void UIComponent_Tooltips::handleInput(int iPad, int key, bool repeat,
|
|
bool pressed, bool released,
|
|
bool& handled) {
|
|
if ((0 <= iPad) && (iPad <= 3) && m_overrideSFX[iPad][key]) {
|
|
// don't play a sound for this action
|
|
switch (key) {
|
|
case ACTION_MENU_A:
|
|
case ACTION_MENU_OK:
|
|
case ACTION_MENU_PAGEUP:
|
|
case ACTION_MENU_PAGEDOWN:
|
|
case ACTION_MENU_X:
|
|
case ACTION_MENU_Y:
|
|
case ACTION_MENU_B:
|
|
case ACTION_MENU_CANCEL:
|
|
case ACTION_MENU_LEFT_SCROLL:
|
|
case ACTION_MENU_RIGHT_SCROLL:
|
|
case ACTION_MENU_LEFT:
|
|
case ACTION_MENU_RIGHT:
|
|
case ACTION_MENU_UP:
|
|
case ACTION_MENU_DOWN:
|
|
sendInputToMovie(key, repeat, pressed, released);
|
|
break;
|
|
}
|
|
} else {
|
|
switch (key) {
|
|
case ACTION_MENU_OK:
|
|
case ACTION_MENU_CANCEL:
|
|
// 4J-PB - We get both A and OK, and B and Cancel, so only play
|
|
// a sound on one of them.
|
|
sendInputToMovie(key, repeat, pressed, released);
|
|
break;
|
|
case ACTION_MENU_A:
|
|
case ACTION_MENU_X:
|
|
case ACTION_MENU_Y:
|
|
// 4J-PB - play a Press sound
|
|
// CD - Removed, causes a sound on all presses
|
|
/*if(pressed)
|
|
{
|
|
ui.PlayUISFX(eSFX_Press);
|
|
}*/
|
|
sendInputToMovie(key, repeat, pressed, released);
|
|
break;
|
|
|
|
case ACTION_MENU_B:
|
|
// 4J-PB - play a Press sound
|
|
// CD - Removed, causes a sound on all presses
|
|
/*if(pressed)
|
|
{
|
|
ui.PlayUISFX(eSFX_Back);
|
|
}*/
|
|
sendInputToMovie(key, repeat, pressed, released);
|
|
break;
|
|
|
|
case ACTION_MENU_LEFT_SCROLL:
|
|
case ACTION_MENU_RIGHT_SCROLL:
|
|
// CD - Removed, causes a sound on all presses
|
|
/*if(pressed)
|
|
{
|
|
ui.PlayUISFX(eSFX_Scroll);
|
|
}*/
|
|
sendInputToMovie(key, repeat, pressed, released);
|
|
break;
|
|
case ACTION_MENU_PAGEUP:
|
|
case ACTION_MENU_PAGEDOWN:
|
|
case ACTION_MENU_LEFT:
|
|
case ACTION_MENU_RIGHT:
|
|
case ACTION_MENU_UP:
|
|
case ACTION_MENU_DOWN:
|
|
sendInputToMovie(key, repeat, pressed, released);
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
void UIComponent_Tooltips::overrideSFX(int iPad, int key, bool bVal) {
|
|
m_overrideSFX[iPad][key] = bVal;
|
|
}
|