本文整理汇总了C++中CGUIDialogYesNo::DoModal方法的典型用法代码示例。如果您正苦于以下问题:C++ CGUIDialogYesNo::DoModal方法的具体用法?C++ CGUIDialogYesNo::DoModal怎么用?C++ CGUIDialogYesNo::DoModal使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CGUIDialogYesNo
的用法示例。
在下文中一共展示了CGUIDialogYesNo::DoModal方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: DeleteItem
bool CFileUtils::DeleteItem(const CFileItemPtr &item, bool force)
{
if (!item || item->IsParentFolder())
return false;
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!force && pDialog)
{
pDialog->SetHeading(122);
pDialog->SetLine(0, 125);
pDialog->SetLine(1, URIUtils::GetFileName(item->m_strPath));
pDialog->SetLine(2, "");
pDialog->DoModal();
if (!pDialog->IsConfirmed()) return false;
}
// Create a temporary item list containing the file/folder for deletion
CFileItemPtr pItemTemp(new CFileItem(*item));
pItemTemp->Select(true);
CFileItemList items;
items.Add(pItemTemp);
// grab the real filemanager window, set up the progress bar,
// and process the delete action
CFileOperationJob op(CFileOperationJob::ActionDelete, items, "");
return op.DoWork();
}
示例2: OnContextButtonUpdateEpg
bool CGUIWindowPVRChannels::OnContextButtonUpdateEpg(CFileItem *item, CONTEXT_BUTTON button)
{
bool bReturn = false;
if (button == CONTEXT_BUTTON_UPDATE_EPG)
{
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return bReturn;
CPVRChannelPtr channel(item->GetPVRChannelInfoTag());
pDialog->SetHeading(19251);
pDialog->SetLine(0, g_localizeStrings.Get(19252));
pDialog->SetLine(1, channel->ChannelName());
pDialog->SetLine(2, "");
pDialog->DoModal();
if (!pDialog->IsConfirmed())
return bReturn;
bReturn = UpdateEpgForChannel(item);
std::string strMessage = StringUtils::Format("%s: '%s'", g_localizeStrings.Get(bReturn ? 19253 : 19254).c_str(), channel->ChannelName().c_str());
CGUIDialogKaiToast::QueueNotification(bReturn ? CGUIDialogKaiToast::Info : CGUIDialogKaiToast::Error,
g_localizeStrings.Get(19166),
strMessage);
}
return bReturn;
}
示例3: ActionButtonDeleteGroup
bool CGUIDialogPVRGroupManager::ActionButtonDeleteGroup(CGUIMessage &message)
{
bool bReturn = false;
unsigned int iControl = message.GetSenderId();
if (iControl == BUTTON_DELGROUP)
{
if (!m_selectedGroup)
return bReturn;
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return bReturn;
pDialog->SetHeading(117);
pDialog->SetLine(0, "");
pDialog->SetLine(1, m_selectedGroup->GroupName());
pDialog->SetLine(2, "");
pDialog->DoModal();
if (pDialog->IsConfirmed())
{
if (((CPVRChannelGroups *) g_PVRChannelGroups->Get(m_bIsRadio))->DeleteGroup(*m_selectedGroup))
Update();
}
bReturn = true;
}
return bReturn;
}
示例4: ActionCancelTimer
bool CGUIDialogPVRGuideInfo::ActionCancelTimer(CFileItemPtr timer)
{
bool bReturn = false;
if (!timer || !timer->HasPVRTimerInfoTag())
{
return bReturn;
}
// prompt user for confirmation of timer deletion
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (pDialog)
{
pDialog->SetHeading(265);
pDialog->SetLine(0, "");
pDialog->SetLine(1, timer->GetPVRTimerInfoTag()->m_strTitle);
pDialog->SetLine(2, "");
pDialog->DoModal();
if (pDialog->IsConfirmed())
{
Close();
bReturn = CPVRTimers::DeleteTimer(*timer);
}
}
return bReturn;
}
示例5: ActionDeleteRecording
bool CGUIWindowPVRCommon::ActionDeleteRecording(CFileItem *item)
{
bool bReturn = false;
/* check if the recording tag is valid */
CPVRRecording *recTag = (CPVRRecording *) item->GetPVRRecordingInfoTag();
if (!recTag || recTag->m_strRecordingId.IsEmpty())
return bReturn;
/* show a confirmation dialog */
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return bReturn;
pDialog->SetHeading(122);
pDialog->SetLine(0, 19043);
pDialog->SetLine(1, "");
pDialog->SetLine(2, recTag->m_strTitle);
pDialog->DoModal();
/* prompt for the user's confirmation */
if (!pDialog->IsConfirmed())
return bReturn;
/* delete the recording */
if (g_PVRRecordings->DeleteRecording(*item))
{
g_PVRManager.TriggerRecordingsUpdate();
bReturn = true;
}
return bReturn;
}
示例6: OnContextButtonHide
bool CGUIWindowPVRChannels::OnContextButtonHide(CFileItem *item, CONTEXT_BUTTON button)
{
bool bReturn = false;
if (button == CONTEXT_BUTTON_HIDE)
{
CPVRChannel *channel = item->GetPVRChannelInfoTag();
if (!channel || channel->IsRadio() != m_bRadio)
return bReturn;
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return bReturn;
pDialog->SetHeading(19039);
pDialog->SetLine(0, "");
pDialog->SetLine(1, channel->ChannelName());
pDialog->SetLine(2, "");
pDialog->DoModal();
if (!pDialog->IsConfirmed())
return bReturn;
g_PVRManager.GetPlayingGroup(m_bRadio)->RemoveFromGroup(*channel);
UpdateData();
bReturn = true;
}
return bReturn;
}
示例7: ActionDeleteRecording
bool CGUIWindowPVRBase::ActionDeleteRecording(CFileItem *item)
{
bool bReturn = false;
/* check if the recording tag is valid */
CPVRRecording *recTag = (CPVRRecording *) item->GetPVRRecordingInfoTag();
if (!recTag || recTag->m_strRecordingId.empty())
return bReturn;
/* show a confirmation dialog */
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return bReturn;
pDialog->SetHeading(122); // Confirm delete
pDialog->SetLine(0, item->m_bIsFolder ? 19113 : 19112); // Are you sure?
pDialog->SetLine(1, "");
pDialog->SetLine(2, item->GetLabel());
pDialog->SetChoice(1, 117); // Delete
/* prompt for the user's confirmation */
pDialog->DoModal();
if (!pDialog->IsConfirmed())
return bReturn;
/* delete the recording */
if (g_PVRRecordings->Delete(*item))
{
g_PVRManager.TriggerRecordingsUpdate();
bReturn = true;
}
return bReturn;
}
示例8: OnClickButtonDeleteChannel
bool CGUIDialogPVRChannelManager::OnClickButtonDeleteChannel(CGUIMessage &message)
{
CFileItemPtr pItem = m_channelItems->Get(m_iSelected);
if (!pItem)
return false;
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return true;
pDialog->SetHeading(19211);
pDialog->SetLine(0, "");
pDialog->SetLine(1, 750);
pDialog->SetLine(2, "");
pDialog->DoModal();
if (pDialog->IsConfirmed())
{
if (pItem->GetProperty("Virtual").asBoolean())
{
pItem->GetPVRChannelInfoTag()->SetVirtual(true);
m_channelItems->Remove(m_iSelected);
m_viewControl.SetItems(*m_channelItems);
Renumber();
return true;
}
CGUIDialogOK::ShowAndGetInput(19033,19038,0,0);
}
return true;
}
示例9: OnClickButtonRadioTV
bool CGUIDialogPVRChannelManager::OnClickButtonRadioTV(CGUIMessage &message)
{
if (m_bContainsChanges)
{
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return true;
pDialog->SetHeading(20052);
pDialog->SetLine(0, "");
pDialog->SetLine(1, 19212);
pDialog->SetLine(2, 20103);
pDialog->DoModal();
if (pDialog->IsConfirmed())
SaveList();
}
m_iSelected = 0;
m_bMovingMode = false;
m_bContainsChanges = false;
m_bIsRadio = !m_bIsRadio;
SetProperty("IsRadio", m_bIsRadio ? "true" : "");
Update();
SetData(m_iSelected);
return true;
}
示例10: ActionDeleteRecording
bool CGUIWindowPVRCommon::ActionDeleteRecording(CFileItem *item)
{
bool bReturn = false;
/* check if the recording tag is valid */
CPVRRecordingInfoTag *recTag = (CPVRRecordingInfoTag *) item->GetPVRRecordingInfoTag();
if (!recTag || recTag->ClientIndex() < 0)
return bReturn;
/* show a confirmation dialog */
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return bReturn;
pDialog->SetHeading(122);
pDialog->SetLine(0, 19043);
pDialog->SetLine(1, "");
pDialog->SetLine(2, recTag->Title());
pDialog->DoModal();
/* prompt for the user's confirmation */
if (!pDialog->IsConfirmed())
return bReturn;
/* delete the recording */
if (CPVRRecordings::DeleteRecording(*item))
{
CPVRManager::GetRecordings()->Update(true);
UpdateData();
bReturn = true;
}
return bReturn;
}
示例11: ActionDeleteTimer
bool CGUIWindowPVRCommon::ActionDeleteTimer(CFileItem *item)
{
bool bReturn = false;
/* check if the timer tag is valid */
CPVRTimerInfoTag *timerTag = item->GetPVRTimerInfoTag();
if (!timerTag || timerTag->ClientIndex() < 0)
return bReturn;
/* show a confirmation dialog */
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return false;
pDialog->SetHeading(122);
pDialog->SetLine(0, 19040);
pDialog->SetLine(1, "");
pDialog->SetLine(2, timerTag->Title());
pDialog->DoModal();
/* prompt for the user's confirmation */
if (!pDialog->IsConfirmed())
return bReturn;
/* delete the timer */
if (CPVRManager::GetTimers()->DeleteTimer(*item))
{
UpdateData();
bReturn = true;
}
return bReturn;
}
示例12: ActionDeleteChannel
bool CGUIWindowPVRCommon::ActionDeleteChannel(CFileItem *item)
{
CPVRChannel *channel = item->GetPVRChannelInfoTag();
/* check if the channel tag is valid */
if (!channel || channel->ChannelNumber() <= 0)
return false;
/* show a confirmation dialog */
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*) g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return false;
pDialog->SetHeading(19039);
pDialog->SetLine(0, "");
pDialog->SetLine(1, channel->ChannelName());
pDialog->SetLine(2, "");
pDialog->DoModal();
/* prompt for the user's confirmation */
if (!pDialog->IsConfirmed())
return false;
g_PVRChannelGroups->GetGroupAll(channel->IsRadio())->RemoveFromGroup(*channel);
UpdateData();
return true;
}
示例13: OnContextButtonDelete
bool CGUIWindowPVRRecordings::OnContextButtonDelete(CFileItem *item, CONTEXT_BUTTON button)
{
bool bReturn = false;
if (button == CONTEXT_BUTTON_DELETE)
{
bReturn = false;
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return bReturn;
pDialog->SetHeading(122);
pDialog->SetLine(0, 19043);
pDialog->SetLine(1, "");
pDialog->SetLine(2, item->GetPVRRecordingInfoTag()->m_strTitle);
pDialog->DoModal();
if (!pDialog->IsConfirmed())
return bReturn;
bReturn = g_PVRRecordings->DeleteRecording(*item);
}
return bReturn;
}
示例14: HideChannel
bool CPVRChannels::HideChannel(CPVRChannel *channel, bool bShowDialog /* = true */)
{
if (!channel)
return false;
/* check if there are active timers on this channel if we are hiding it */
if (!channel->IsHidden() && PVRTimers.ChannelHasTimers(*channel))
{
if (bShowDialog)
{
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)g_windowManager.GetWindow(WINDOW_DIALOG_YES_NO);
if (!pDialog)
return false;
pDialog->SetHeading(19098);
pDialog->SetLine(0, 19099);
pDialog->SetLine(1, "");
pDialog->SetLine(2, 19100);
pDialog->DoModal();
if (!pDialog->IsConfirmed())
return false;
}
/* delete the timers */
PVRTimers.DeleteTimersOnChannel(*channel, true);
}
/* check if this channel is currently playing if we are hiding it */
if (!channel->IsHidden() &&
(g_PVRManager.IsPlayingTV() || g_PVRManager.IsPlayingRadio()) &&
(g_PVRManager.GetCurrentPlayingItem()->GetPVRChannelInfoTag() == channel))
{
CGUIDialogOK::ShowAndGetInput(19098,19101,0,19102);
return false;
}
/* switch the hidden flag */
channel->SetHidden(!channel->IsHidden());
/* update the hidden channel counter */
if (channel->IsHidden())
++m_iHiddenChannels;
else
--m_iHiddenChannels;
/* update the database entry */
channel->Persist();
/* move the channel to the end of the list */
MoveChannel(channel->ChannelNumber(), size());
return true;
}
示例15: ExecuteXBE
void CAutorun::ExecuteXBE(const CStdString &xbeFile)
{
#ifdef HAS_XBOX_HARDWARE
int iRegion;
if (g_guiSettings.GetBool("myprograms.gameautoregion"))
{
CXBE xbe;
iRegion = xbe.ExtractGameRegion(xbeFile);
if (iRegion < 1 || iRegion > 7)
iRegion = 0;
iRegion = xbe.FilterRegion(iRegion);
}
else
iRegion = 0;
#ifdef HAS_TRAINER
CProgramDatabase database;
database.Open();
DWORD dwTitleId = CUtil::GetXbeID(xbeFile);
CStdString strTrainer = database.GetActiveTrainer(dwTitleId);
if (strTrainer != "")
{
bool bContinue=false;
if (CKaiClient::GetInstance()->IsEngineConnected())
{
CGUIDialogYesNo* pDialog = (CGUIDialogYesNo*)m_gWindowManager.GetWindow(WINDOW_DIALOG_YES_NO);
pDialog->SetHeading(714);
pDialog->SetLine(0,"Use trainer or KAI?");
pDialog->SetLine(1, "Yes for trainer");
pDialog->SetLine(2, "No for KAI");
pDialog->DoModal();
if (pDialog->IsConfirmed())
{
while (CKaiClient::GetInstance()->GetCurrentVector().size() > 1)
CKaiClient::GetInstance()->ExitVector();
}
else
bContinue = true;
}
if (!bContinue)
{
CTrainer trainer;
if (trainer.Load(strTrainer))
{
database.GetTrainerOptions(strTrainer,dwTitleId,trainer.GetOptions(),trainer.GetNumberOfOptions());
CUtil::InstallTrainer(trainer);
}
}
}
database.Close();
#endif
CUtil::RunXBE(xbeFile.c_str(), NULL,F_VIDEO(iRegion));
#endif
}