ALERROR CLoginSession::OnCommand (const CString &sCmd, void *pData) // OnCommand // // Handle a command { if (strEquals(sCmd, CMD_ALL_TASKS_DONE)) { StopPerformance(ID_CTRL_WAIT); ShowInitialDlg(); } else if (strEquals(sCmd, CMD_CANCEL)) CmdCancel(); else if (strEquals(sCmd, CMD_REGISTER)) CmdRegister(); else if (strEquals(sCmd, CMD_REGISTER_COMPLETE)) CmdRegisterComplete((CRegisterUserTask *)pData); else if (strEquals(sCmd, CMD_SIGN_IN)) CmdSignIn(); else if (strEquals(sCmd, CMD_SIGN_IN_COMPLETE)) CmdSignInComplete((CSignInUserTask *)pData); else if (strEquals(sCmd, CMD_SWITCH_TO_LOGIN)) { StopPerformance(ID_DLG_REGISTER); const CVisualPalette &VI = m_HI.GetVisuals(); IAnimatron *pDlg; CreateDlgSignIn(VI, &pDlg); m_iCurrent = dlgSignIn; StartPerformance(pDlg, ID_DLG_SIGN_IN, CReanimator::SPR_FLAG_DELETE_WHEN_DONE); } else if (strEquals(sCmd, CMD_SWITCH_TO_REGISTER)) { StopPerformance(ID_DLG_SIGN_IN); const CVisualPalette &VI = m_HI.GetVisuals(); IAnimatron *pDlg; CreateDlgRegister(VI, &pDlg); m_iCurrent = dlgRegister; StartPerformance(pDlg, ID_DLG_REGISTER, CReanimator::SPR_FLAG_DELETE_WHEN_DONE); } else if (strEquals(sCmd, CMD_PASSWORD_RESET)) CmdPasswordReset(); else if (strEquals(sCmd, CMD_TOS)) sysOpenURL(CONSTLIT("http://www.kronosaur.com/legal/TermsofService.html")); return NOERROR; }
void CLoginSession::ShowInitialDlg (void) // ShowInitialDlg // // Shows the first dialog box { const CVisualPalette &VI = m_HI.GetVisuals(); IAnimatron *pDlg; // If we're already signed in then we're done. if (m_Service.HasCapability(ICIService::canGetUserProfile)) CmdCancel(); // Otherwise, if we have a username else if (m_Service.HasCapability(ICIService::cachedUser)) { CreateDlgSignIn(VI, &pDlg); m_iCurrent = dlgSignIn; StartPerformance(pDlg, ID_DLG_SIGN_IN, CReanimator::SPR_FLAG_DELETE_WHEN_DONE); if (!m_Service.GetDefaultUsername().IsBlank()) SetInputFocus(ID_CTRL_PASSWORD); } // Otherwise, register else if (m_Service.HasCapability(ICIService::registerUser)) { CreateDlgRegister(VI, &pDlg); m_iCurrent = dlgRegister; StartPerformance(pDlg, ID_DLG_REGISTER, CReanimator::SPR_FLAG_DELETE_WHEN_DONE); } // Otherwise, cannot sign in else CmdCancel(); }
ALERROR CLoadGameSession::OnCommand (const CString &sCmd, void *pData) // OnCommand // // Handle a command { if (strEquals(sCmd, CMD_CLOSE_SESSION)) CmdCancel(); else if (strEquals(sCmd, CMD_READ_COMPLETE)) CmdReadComplete((CListSaveFilesTask *)pData); else if (strEquals(sCmd, CMD_OK_SESSION)) CmdOK(); return NOERROR; }
ALERROR CChangePasswordSession::OnCommand (const CString &sCmd, void *pData) // OnCommand // // Handle a command { if (strEquals(sCmd, CMD_CANCEL)) CmdCancel(); else if (strEquals(sCmd, CMD_OK)) CmdOK(); else if (strEquals(sCmd, CMD_CHANGE_COMPLETE)) CmdChangeComplete((CChangePasswordTask *)pData); return NOERROR; }
void CLoadGameSession::OnKeyDown (int iVirtKey, DWORD dwKeyData) // OnKeyDown // // KeyDown { switch (iVirtKey) { case VK_ESCAPE: CmdCancel(); break; case VK_RETURN: CmdOK(); break; } }
void CLoginSession::OnKeyDown (int iVirtKey, DWORD dwKeyData) // OnKeyDown // // KeyDown { switch (iVirtKey) { case VK_ESCAPE: CmdCancel(); break; case VK_RETURN: if (m_iCurrent == dlgSignIn) CmdSignIn(); else if (m_iCurrent == dlgRegister) CmdRegister(); break; } }
ALERROR CNewGameSession::OnCommand (const CString &sCmd, void *pData) // OnCommand // // Handle a command { if (strEquals(sCmd, CMD_CLOSE_SESSION)) CmdCancel(); else if (strEquals(sCmd, CMD_OK_SESSION)) CmdOK(); else if (strEquals(sCmd, CMD_NEXT_SHIP_CLASS)) CmdNextShipClass(); else if (strEquals(sCmd, CMD_PREV_SHIP_CLASS)) CmdPrevShipClass(); else if (strEquals(sCmd, CMD_CHANGE_GENOME)) CmdChangeGenome(); else if (strEquals(sCmd, CMD_EDIT_NAME)) CmdEditName(); return NOERROR; }
void CNewGameSession::OnKeyDown (int iVirtKey, DWORD dwKeyData) // OnKeyDown // // KeyDown { switch (iVirtKey) { case VK_RETURN: if (m_bEditingName) CmdEditName(); else CmdOK(); break; case VK_ESCAPE: if (m_bEditingName) CmdEditNameCancel(); else CmdCancel(); break; case VK_LEFT: CmdPrevShipClass(); break; case VK_RIGHT: CmdNextShipClass(); break; default: HandlePageScrollKeyDown(ID_SETTINGS, iVirtKey, dwKeyData); break; } }