// \brief Show numeric keypad and verify user input against strToVerify. // \param strToVerify Value to compare against user input. // \param dlgHeading String shown on dialog title. // \param bVerifyInput If set as true we verify the users input versus strToVerify. // \return the result of the check (success, failed, or canceled by user). InputVerificationResult CGUIDialogNumeric::ShowAndVerifyInput(std::string& strToVerify, const std::string& dlgHeading, bool bVerifyInput) { // Prompt user for password input CGUIDialogNumeric *pDialog = CServiceBroker::GetGUI()->GetWindowManager().GetWindow<CGUIDialogNumeric>(WINDOW_DIALOG_NUMERIC); pDialog->SetHeading(dlgHeading); std::string strInput; if (!bVerifyInput) strInput = strToVerify; pDialog->SetMode(INPUT_PASSWORD, strInput); pDialog->Open(); strInput = pDialog->GetOutputString(); if (!pDialog->IsConfirmed() || pDialog->IsCanceled()) { // user canceled out strToVerify = ""; return InputVerificationResult::CANCELED; } const std::string md5pword2 = CDigest::Calculate(CDigest::Type::MD5, strInput); if (!bVerifyInput) { strToVerify = md5pword2; return InputVerificationResult::SUCCESS; } return StringUtils::EqualsNoCase(strToVerify, md5pword2) ? InputVerificationResult::SUCCESS : InputVerificationResult::FAILED; }
bool CGUIDialogNumeric::ShowAndGetIPAddress(CStdString &IPAddress, const CStdString &heading) { CGUIDialogNumeric *pDialog = (CGUIDialogNumeric *)g_windowManager.GetWindow(WINDOW_DIALOG_NUMERIC); if (!pDialog || !IPAddress) return false; pDialog->SetMode(INPUT_IP_ADDRESS, (void *)&IPAddress); pDialog->SetHeading(heading); pDialog->DoModal(); if (!pDialog->IsConfirmed() || pDialog->IsCanceled()) return false; pDialog->GetOutput(&IPAddress); return true; }
bool CGUIDialogNumeric::ShowAndGetDate(SYSTEMTIME &date, const CStdString &heading) { CGUIDialogNumeric *pDialog = (CGUIDialogNumeric *)g_windowManager.GetWindow(WINDOW_DIALOG_NUMERIC); if (!pDialog) return false; pDialog->SetMode(INPUT_DATE, (void *)&date); pDialog->SetHeading(heading); pDialog->DoModal(); if (!pDialog->IsConfirmed() || pDialog->IsCanceled()) return false; pDialog->GetOutput(&date); return true; }
bool CGUIDialogNumeric::ShowAndGetTime(SYSTEMTIME &time, const std::string &heading) { CGUIDialogNumeric *pDialog = (CGUIDialogNumeric *)g_windowManager.GetWindow(WINDOW_DIALOG_NUMERIC); if (!pDialog) return false; pDialog->SetMode(INPUT_TIME, (void *)&time); pDialog->SetHeading(heading); pDialog->Open(); if (!pDialog->IsConfirmed() || pDialog->IsCanceled()) return false; pDialog->GetOutput(&time); return true; }
bool CGUIDialogNumeric::ShowAndGetIPAddress(std::string &IPAddress, const std::string &heading) { CGUIDialogNumeric *pDialog = CServiceBroker::GetGUI()->GetWindowManager().GetWindow<CGUIDialogNumeric>(WINDOW_DIALOG_NUMERIC); if (!pDialog) return false; pDialog->SetMode(INPUT_IP_ADDRESS, IPAddress); pDialog->SetHeading(heading); pDialog->Open(); if (!pDialog->IsConfirmed() || pDialog->IsCanceled()) return false; IPAddress = pDialog->GetOutputString(); return true; }
bool CGUIDialogNumeric::ShowAndGetDate(SYSTEMTIME &date, const std::string &heading) { CGUIDialogNumeric *pDialog = CServiceBroker::GetGUI()->GetWindowManager().GetWindow<CGUIDialogNumeric>(WINDOW_DIALOG_NUMERIC); if (!pDialog) return false; pDialog->SetMode(INPUT_DATE, date); pDialog->SetHeading(heading); pDialog->Open(); if (!pDialog->IsConfirmed() || pDialog->IsCanceled()) return false; date = pDialog->GetOutput(); return true; }
bool CGUIDialogNumeric::ShowAndGetNumber(CStdString& strInput, const CStdString &strHeading, unsigned int iAutoCloseTimeoutMs /* = 0 */) { // Prompt user for password input CGUIDialogNumeric *pDialog = (CGUIDialogNumeric *)g_windowManager.GetWindow(WINDOW_DIALOG_NUMERIC); pDialog->SetHeading( strHeading ); pDialog->SetMode(INPUT_NUMBER, (void *)&strInput); if (iAutoCloseTimeoutMs) pDialog->SetAutoClose(iAutoCloseTimeoutMs); pDialog->DoModal(); if (!pDialog->IsAutoClosed() && (!pDialog->IsConfirmed() || pDialog->IsCanceled())) return false; pDialog->GetOutput(&strInput); return true; }
bool CGUIDialogNumeric::ShowAndGetNumber(std::string& strInput, const std::string &strHeading, unsigned int iAutoCloseTimeoutMs /* = 0 */) { // Prompt user for password input CGUIDialogNumeric *pDialog = CServiceBroker::GetGUI()->GetWindowManager().GetWindow<CGUIDialogNumeric>(WINDOW_DIALOG_NUMERIC); pDialog->SetHeading( strHeading ); pDialog->SetMode(INPUT_NUMBER, strInput); if (iAutoCloseTimeoutMs) pDialog->SetAutoClose(iAutoCloseTimeoutMs); pDialog->Open(); if (!pDialog->IsAutoClosed() && (!pDialog->IsConfirmed() || pDialog->IsCanceled())) return false; strInput = pDialog->GetOutputString(); return true; }
bool CGUIDialogNumeric::ShowAndGetSeconds(CStdString &timeString, const CStdString &heading) { CGUIDialogNumeric *pDialog = (CGUIDialogNumeric *)g_windowManager.GetWindow(WINDOW_DIALOG_NUMERIC); if (!pDialog) return false; int seconds = StringUtils::TimeStringToSeconds(timeString); SYSTEMTIME time = {0}; time.wHour = seconds / 3600; time.wMinute = (seconds - time.wHour * 3600) / 60; time.wSecond = seconds - time.wHour * 3600 - time.wMinute * 60; pDialog->SetMode(INPUT_TIME_SECONDS, (void *)&time); pDialog->SetHeading(heading); pDialog->DoModal(); if (!pDialog->IsConfirmed() || pDialog->IsCanceled()) return false; pDialog->GetOutput(&time); seconds = time.wHour * 3600 + time.wMinute * 60 + time.wSecond; timeString = StringUtils::SecondsToTimeString(seconds); return true; }
bool CGUIDialogNumeric::ShowAndGetSeconds(std::string &timeString, const std::string &heading) { CGUIDialogNumeric *pDialog = CServiceBroker::GetGUI()->GetWindowManager().GetWindow<CGUIDialogNumeric>(WINDOW_DIALOG_NUMERIC); if (!pDialog) return false; int seconds = StringUtils::TimeStringToSeconds(timeString); SYSTEMTIME time = {0}; time.wHour = seconds / 3600; time.wMinute = (seconds - time.wHour * 3600) / 60; time.wSecond = seconds - time.wHour * 3600 - time.wMinute * 60; pDialog->SetMode(INPUT_TIME_SECONDS, time); pDialog->SetHeading(heading); pDialog->Open(); if (!pDialog->IsConfirmed() || pDialog->IsCanceled()) return false; time = pDialog->GetOutput(); seconds = time.wHour * 3600 + time.wMinute * 60 + time.wSecond; timeString = StringUtils::SecondsToTimeString(seconds); return true; }
// \brief Show numeric keypad and verify user input against strToVerify. // \param strToVerify Value to compare against user input. // \param dlgHeading String shown on dialog title. // \param bVerifyInput If set as true we verify the users input versus strToVerify. // \return true if successful display and user input. false if unsuccessful display, no user input, or canceled editing. bool CGUIDialogNumeric::ShowAndVerifyInput(CStdString& strToVerify, const CStdString& dlgHeading, bool bVerifyInput) { // Prompt user for password input CGUIDialogNumeric *pDialog = (CGUIDialogNumeric *)g_windowManager.GetWindow(WINDOW_DIALOG_NUMERIC); pDialog->SetHeading( dlgHeading ); CStdString strInput = ""; if (!bVerifyInput) strInput = strToVerify; pDialog->SetMode(INPUT_PASSWORD, (void *)&strInput); pDialog->DoModal(); pDialog->GetOutput(&strInput); if (!pDialog->IsConfirmed() || pDialog->IsCanceled()) { // user canceled out strToVerify =""; return false; } CStdString md5pword2; XBMC::XBMC_MD5 md5state; md5state.append(strInput); md5state.getDigest(md5pword2); if (!bVerifyInput) { strToVerify = md5pword2; StringUtils::ToLower(strToVerify); return true; } if (strToVerify.Equals(md5pword2)) return true; // entered correct password // incorrect password return false; }
// \brief Show numeric keypad and verify user input against strToVerify. // \param strToVerify Value to compare against user input. // \param dlgHeading String shown on dialog title. // \param bVerifyInput If set as true we verify the users input versus strToVerify. // \return true if successful display and user input. false if unsuccessful display, no user input, or canceled editing. bool CGUIDialogNumeric::ShowAndVerifyInput(std::string& strToVerify, const std::string& dlgHeading, bool bVerifyInput) { // Prompt user for password input CGUIDialogNumeric *pDialog = (CGUIDialogNumeric *)g_windowManager.GetWindow(WINDOW_DIALOG_NUMERIC); pDialog->SetHeading( dlgHeading ); std::string strInput; if (!bVerifyInput) strInput = strToVerify; pDialog->SetMode(INPUT_PASSWORD, (void *)&strInput); pDialog->Open(); pDialog->GetOutput(&strInput); if (!pDialog->IsConfirmed() || pDialog->IsCanceled()) { // user canceled out strToVerify =""; return false; } std::string md5pword2 = XBMC::XBMC_MD5::GetMD5(strInput); if (!bVerifyInput) { strToVerify = md5pword2; StringUtils::ToLower(strToVerify); return true; } if (StringUtils::EqualsNoCase(strToVerify, md5pword2)) return true; // entered correct password // incorrect password return false; }