本文整理汇总了C++中CPVRDatabase::Delete方法的典型用法代码示例。如果您正苦于以下问题:C++ CPVRDatabase::Delete方法的具体用法?C++ CPVRDatabase::Delete怎么用?C++ CPVRDatabase::Delete使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CPVRDatabase
的用法示例。
在下文中一共展示了CPVRDatabase::Delete方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: DeleteGroup
bool CPVRChannelGroups::DeleteGroup(const CPVRChannelGroup &group)
{
// don't delete internal groups
if (group.IsInternalGroup())
{
CLog::Log(LOGERROR, "PVR - %s - cannot delete internal group '%s'", __FUNCTION__, group.GroupName().c_str());
return false;
}
// delete the group in this container
CSingleLock lock(m_critSection);
for (std::vector<CPVRChannelGroupPtr>::iterator it = m_groups.begin(); it != m_groups.end(); it++)
{
if ((*it)->GroupID() == group.GroupID())
{
// update the selected group in the gui if it's deleted
CPVRChannelGroupPtr selectedGroup = GetSelectedGroup();
if (selectedGroup && *selectedGroup == group)
g_PVRManager.SetPlayingGroup(GetGroupAll());
m_groups.erase(it);
break;
}
}
// delete the group from the database
CPVRDatabase *database = GetPVRDatabase();
return database ? database->Delete(group) : false;
}
示例2: Delete
bool CPVRChannel::Delete(void)
{
bool bReturn = false;
CPVRDatabase *database = GetPVRDatabase();
if (!database)
return bReturn;
/* delete the EPG table */
CEpg *epg = GetEPG();
if (epg)
{
g_EpgContainer.DeleteEpg(*epg, true);
CSingleLock lock(m_critSection);
m_bEPGCreated = false;
}
bReturn = database->Delete(*this);
return bReturn;
}
示例3: Delete
bool CPVRChannel::Delete(void)
{
bool bReturn = false;
CPVRDatabase *database = CPVRManager::Get()->GetTVDatabase();
if (!database || !database->Open())
return bReturn;
/* delete the EPG table */
if (m_EPG)
{
CPVRManager::GetEpg()->DeleteEpg(*m_EPG, true);
m_EPG = NULL;
}
bReturn = database->Delete(*this);
database->Close();
return bReturn;
}
示例4: DeleteGroup
bool CPVRChannelGroups::DeleteGroup(const CPVRChannelGroup &group)
{
bool bReturn = false;
CSingleLock lock(m_critSection);
if (group.IsInternalGroup())
{
CLog::Log(LOGERROR, "CPVRChannelGroups - %s - cannot delete internal group '%s'",
__FUNCTION__, group.GroupName().c_str());
return bReturn;
}
CPVRDatabase *database = GetPVRDatabase();
if (!database)
return bReturn;
/* remove all channels from the group */
database->RemoveChannelsFromGroup(group);
/* delete the group from the database */
bReturn = database->Delete(group);
/* delete the group in this container */
for (unsigned int iGroupPtr = 0; iGroupPtr < size(); iGroupPtr++)
{
if (at(iGroupPtr)->GroupID() == group.GroupID())
{
CPVRChannelGroup *selectedGroup = GetSelectedGroup();
if (selectedGroup && *selectedGroup == group)
g_PVRManager.SetPlayingGroup(GetGroupAll());
delete at(iGroupPtr);
erase(begin() + iGroupPtr);
break;
}
}
return bReturn;
}
示例5: DeleteGroup
bool CPVRChannelGroups::DeleteGroup(const CPVRChannelGroup &group)
{
bool bReturn = false;
if (group.IsInternalGroup())
{
CLog::Log(LOGERROR, "CPVRChannelGroups - %s - cannot delete internal group '%s'",
__FUNCTION__, group.GroupName().c_str());
return bReturn;
}
CPVRDatabase *database = OpenPVRDatabase();
if (!database)
return bReturn;
/* remove all channels from the group */
database->RemoveChannelsFromGroup(group);
/* delete the group from the database */
bReturn = database->Delete(group);
database->Close();
/* delete the group in this container */
for (unsigned int iGroupPtr = 0; iGroupPtr < size(); iGroupPtr++)
{
if (at(iGroupPtr)->GroupID() == group.GroupID())
{
delete at(iGroupPtr);
erase(begin() + iGroupPtr);
break;
}
}
return bReturn;
}
示例6: OnMessage
//.........这里部分代码省略.........
{
CStdString strURL = pItem->GetProperty("StreamURL");
if (CGUIDialogKeyboard::ShowAndGetInput(strURL, g_localizeStrings.Get(19214), false))
pItem->SetProperty("StreamURL", strURL);
return true;
}
CGUIDialogOK::ShowAndGetInput(19033,19038,0,0);
return true;
}
else if (iControl == BUTTON_DELETE_CHANNEL)
{
CFileItemPtr pItem = m_channelItems->Get(m_iSelected);
if (!pItem)
return false;
// prompt user for confirmation of channel record
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->GetPropertyBOOL("Virtual"))
{
CPVRDatabase *database = CPVRManager::Get()->GetTVDatabase();
database->Open();
database->Delete(*pItem->GetPVRChannelInfoTag());
database->Close();
m_channelItems->Remove(m_iSelected);
m_viewControl.SetItems(*m_channelItems);
Renumber();
return true;
}
CGUIDialogOK::ShowAndGetInput(19033,19038,0,0);
}
return true;
}
else if (iControl == BUTTON_NEW_CHANNEL)
{
std::vector<long> clients;
CGUIDialogSelect* pDlgSelect = (CGUIDialogSelect*)g_windowManager.GetWindow(WINDOW_DIALOG_SELECT);
if (!pDlgSelect)
return false;
pDlgSelect->SetHeading(19213); // Select Client
pDlgSelect->Add(g_localizeStrings.Get(19209));
clients.push_back(XBMC_VIRTUAL_CLIENTID);
std::map<long, CStdString> clientMap;
if (CPVRManager::GetClients()->GetClients(&clientMap) > 0)
{
std::map<long,CStdString>::iterator itr;
for (itr = clientMap.begin() ; itr != clientMap.end(); itr++)
{
clients.push_back((*itr).first);
pDlgSelect->Add(clientMap[(*itr).first]);
}