本文整理汇总了C++中CGUIDialogOK::Open方法的典型用法代码示例。如果您正苦于以下问题:C++ CGUIDialogOK::Open方法的具体用法?C++ CGUIDialogOK::Open怎么用?C++ CGUIDialogOK::Open使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CGUIDialogOK
的用法示例。
在下文中一共展示了CGUIDialogOK::Open方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ShowErrorDialog
void CVideoInfoDownloader::ShowErrorDialog(const ADDON::CScraperError &sce)
{
if (!sce.Title().empty())
{
CGUIDialogOK *pdlg = (CGUIDialogOK *)g_windowManager.GetWindow(WINDOW_DIALOG_OK);
pdlg->SetHeading(CVariant{sce.Title()});
pdlg->SetLine(0, CVariant{sce.Message()});
pdlg->Open();
}
}
示例2: ShowAndGetInput
// \brief Show CGUIDialogOK dialog, then wait for user to dismiss it.
bool CGUIDialogOK::ShowAndGetInput(CVariant heading, CVariant text)
{
CGUIDialogOK *dialog = (CGUIDialogOK *)g_windowManager.GetWindow(WINDOW_DIALOG_OK);
if (!dialog)
return false;
dialog->SetHeading(heading);
dialog->SetText(text);
dialog->Open();
return dialog->IsConfirmed();
}
示例3: ShowAndGetInput
// \brief Show CGUIDialogOK dialog, then wait for user to dismiss it.
void CGUIDialogOK::ShowAndGetInput(CVariant heading, CVariant line0, CVariant line1, CVariant line2)
{
CGUIDialogOK *dialog = (CGUIDialogOK *)g_windowManager.GetWindow(WINDOW_DIALOG_OK);
if (!dialog)
return;
dialog->SetHeading(heading);
dialog->SetLine(0, line0);
dialog->SetLine(1, line1);
dialog->SetLine(2, line2);
dialog->Open();
}
示例4: ShowAndGetInput
// \brief Show CGUIDialogOK dialog, then wait for user to dismiss it.
bool CGUIDialogOK::ShowAndGetInput(CVariant heading, CVariant line0, CVariant line1, CVariant line2)
{
CGUIDialogOK *dialog = g_windowManager.GetWindow<CGUIDialogOK>(WINDOW_DIALOG_OK);
if (!dialog)
return false;
dialog->SetHeading(heading);
dialog->SetLine(0, line0);
dialog->SetLine(1, line1);
dialog->SetLine(2, line2);
dialog->Open();
return dialog->IsConfirmed();
}
示例5: Process
void CAddonStatusHandler::Process()
{
CSingleLock lock(m_critSection);
std::string heading = StringUtils::Format("%s: %s", TranslateType(m_addon->Type(), true).c_str(), m_addon->Name().c_str());
/* Request to restart the AddOn and data structures need updated */
if (m_status == ADDON_STATUS_NEED_RESTART)
{
CGUIDialogOK* pDialog = (CGUIDialogOK*)g_windowManager.GetWindow(WINDOW_DIALOG_OK);
if (!pDialog) return;
pDialog->SetHeading(CVariant{heading});
pDialog->SetLine(1, CVariant{24074});
pDialog->Open();
CAddonMgr::GetInstance().GetCallbackForType(m_addon->Type())->RequestRestart(m_addon, true);
}
/* Some required settings are missing/invalid */
else if ((m_status == ADDON_STATUS_NEED_SETTINGS) || (m_status == ADDON_STATUS_NEED_SAVEDSETTINGS))
{
CGUIDialogYesNo* pDialogYesNo = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialogYesNo) return;
pDialogYesNo->SetHeading(CVariant{heading});
pDialogYesNo->SetLine(1, CVariant{24070});
pDialogYesNo->SetLine(2, CVariant{24072});
pDialogYesNo->SetLine(3, CVariant{m_message});
pDialogYesNo->Open();
if (!pDialogYesNo->IsConfirmed()) return;
if (!m_addon->HasSettings())
return;
if (CGUIDialogAddonSettings::ShowAndGetInput(m_addon))
{
//! @todo Doesn't dialogaddonsettings save these automatically? It should do this.
m_addon->SaveSettings();
CAddonMgr::GetInstance().GetCallbackForType(m_addon->Type())->RequestRestart(m_addon, true);
}
}
}
示例6: ok
bool Dialog::ok(const String& heading, const String& line1,
const String& line2,
const String& line3)
{
DelayedCallGuard dcguard(languageHook);
CGUIDialogOK* pDialog = (CGUIDialogOK*)g_windowManager.GetWindow(WINDOW_DIALOG_OK);
if (pDialog == NULL)
throw WindowException("Error: Window is NULL, this is not possible :-)");
if (!heading.empty())
pDialog->SetHeading(CVariant{heading});
if (!line1.empty())
pDialog->SetLine(0, CVariant{line1});
if (!line2.empty())
pDialog->SetLine(1, CVariant{line2});
if (!line3.empty())
pDialog->SetLine(2, CVariant{line3});
pDialog->Open();
return pDialog->IsConfirmed();
}
示例7: LoadDll
bool CAddonDll::LoadDll()
{
if (m_pDll)
return true;
std::string strFileName;
std::string strAltFileName;
if (!m_bIsChild)
{
strFileName = LibPath();
}
else
{
std::string libPath = LibPath();
if (!XFILE::CFile::Exists(libPath))
{
std::string temp = CSpecialProtocol::TranslatePath("special://xbmc/");
std::string tempbin = CSpecialProtocol::TranslatePath("special://xbmcbin/");
libPath.erase(0, temp.size());
libPath = tempbin + libPath;
if (!XFILE::CFile::Exists(libPath))
{
CLog::Log(LOGERROR, "ADDON: Could not locate %s", m_props.libname.c_str());
return false;
}
}
std::stringstream childcount;
childcount << GetChildCount();
std::string extension = URIUtils::GetExtension(libPath);
strFileName = "special://temp/" + ID() + "-" + childcount.str() + extension;
XFILE::CFile::Copy(libPath, strFileName);
m_parentLib = libPath;
CLog::Log(LOGNOTICE, "ADDON: Loaded virtual child addon %s", strFileName.c_str());
}
/* Check if lib being loaded exists, else check in XBMC binary location */
#if defined(TARGET_ANDROID)
// Android libs MUST live in this path, else multi-arch will break.
// The usual soname requirements apply. no subdirs, and filename is ^lib.*\.so$
if (!XFILE::CFile::Exists(strFileName))
{
std::string tempbin = getenv("XBMC_ANDROID_LIBS");
strFileName = tempbin + "/" + m_props.libname;
}
#endif
if (!XFILE::CFile::Exists(strFileName))
{
std::string altbin = CSpecialProtocol::TranslatePath("special://xbmcaltbinaddons/");
if (!altbin.empty())
{
strAltFileName = altbin + m_props.libname;
if (!XFILE::CFile::Exists(strAltFileName))
{
std::string temp = CSpecialProtocol::TranslatePath("special://xbmc/addons/");
strAltFileName = strFileName;
strAltFileName.erase(0, temp.size());
strAltFileName = altbin + strAltFileName;
}
CLog::Log(LOGDEBUG, "ADDON: Trying to load %s", strAltFileName.c_str());
}
if (XFILE::CFile::Exists(strAltFileName))
strFileName = strAltFileName;
else
{
std::string temp = CSpecialProtocol::TranslatePath("special://xbmc/");
std::string tempbin = CSpecialProtocol::TranslatePath("special://xbmcbin/");
strFileName.erase(0, temp.size());
strFileName = tempbin + strFileName;
if (!XFILE::CFile::Exists(strFileName))
{
CLog::Log(LOGERROR, "ADDON: Could not locate %s", m_props.libname.c_str());
return false;
}
}
}
/* Load the Dll */
m_pDll = new DllAddon;
m_pDll->SetFile(strFileName);
m_pDll->EnableDelayedUnload(false);
if (!m_pDll->Load())
{
delete m_pDll;
m_pDll = NULL;
CGUIDialogOK* pDialog = g_windowManager.GetWindow<CGUIDialogOK>(WINDOW_DIALOG_OK);
if (pDialog)
{
std::string heading = StringUtils::Format("%s: %s", TranslateType(Type(), true).c_str(), Name().c_str());
pDialog->SetHeading(CVariant{heading});
pDialog->SetLine(1, CVariant{24070});
pDialog->SetLine(2, CVariant{24071});
pDialog->SetLine(2, CVariant{"Can't load shared library"});
pDialog->Open();
}
//.........这里部分代码省略.........