本文整理汇总了C++中CGUIAddonWindow类的典型用法代码示例。如果您正苦于以下问题:C++ CGUIAddonWindow类的具体用法?C++ CGUIAddonWindow怎么用?C++ CGUIAddonWindow使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了CGUIAddonWindow类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: set_focus_id
//@{
bool Interface_GUIWindow::set_focus_id(void* kodiBase, void* handle, int control_id)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(
LOGERROR,
"Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p') on addon '%s'",
__FUNCTION__, kodiBase, handle, addon ? addon->ID().c_str() : "unknown");
return false;
}
if (!pAddonWindow->GetControl(control_id))
{
CLog::Log(LOGERROR, "Interface_GUIWindow - %s: %s - Control does not exist in window",
__FUNCTION__, addon->Name().c_str());
return false;
}
Interface_GUIGeneral::lock();
CGUIMessage msg(GUI_MSG_SETFOCUS, pAddonWindow->m_windowId, control_id);
pAddonWindow->OnMessage(msg);
Interface_GUIGeneral::unlock();
return true;
}
示例2: remove_list_item
void Interface_GUIWindow::remove_list_item(void* kodiBase, void* handle, void* item)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow || !item)
{
CLog::Log(LOGERROR,
"Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p', "
"item='%p') on addon '%s'",
__FUNCTION__, kodiBase, handle, item, addon ? addon->ID().c_str() : "unknown");
return;
}
CFileItemPtr* pItem(static_cast<CFileItemPtr*>(item));
if (pItem->get() == nullptr)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - empty list item called on addon '%s'",
__FUNCTION__, addon->ID().c_str());
return;
}
Interface_GUIGeneral::lock();
pAddonWindow->RemoveItem(pItem);
Interface_GUIGeneral::unlock();
}
示例3: data
bool Interface_GUIWindow::close(void* kodiBase, void* handle)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (handle='%p') on addon '%s'",
__FUNCTION__, handle, addon ? addon->ID().c_str() : "unknown");
return false;
}
pAddonWindow->PulseActionEvent();
Interface_GUIGeneral::lock();
// if it's a dialog, we have to close it a bit different
if (pAddonWindow->IsDialog())
dynamic_cast<CGUIAddonWindowDialog*>(pAddonWindow)->Show(false);
else
g_windowManager.ActivateWindow(pAddonWindow->m_oldWindowId);
pAddonWindow->m_oldWindowId = 0;
Interface_GUIGeneral::unlock();
return true;
}
示例4: get_list_item
void* Interface_GUIWindow::get_list_item(void* kodiBase, void* handle, int list_position)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p') on addon '%s'",
__FUNCTION__, addon, handle, addon ? addon->ID().c_str() : "unknown");
return nullptr;
}
Interface_GUIGeneral::lock();
CFileItemPtr* pItem(pAddonWindow->GetListItem(list_position));
if (pItem == nullptr || pItem->get() == nullptr)
{
CLog::Log(LOGERROR, "ADDON::Interface_GUIWindow - %s: %s - Index out of range", __FUNCTION__, addon->Name().c_str());
if (pItem)
{
delete pItem;
pItem = nullptr;
}
}
Interface_GUIGeneral::unlock();
return pItem;
}
示例5: data
bool Interface_GUIWindow::do_modal(void* kodiBase, void* handle)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (handle='%p') on addon '%s'",
__FUNCTION__, handle, addon ? addon->ID().c_str() : "unknown");
return false;
}
if (pAddonWindow->GetID() == g_windowManager.GetActiveWindow())
return true;
if (pAddonWindow->m_oldWindowId != pAddonWindow->m_windowId &&
pAddonWindow->m_windowId != g_windowManager.GetActiveWindow())
pAddonWindow->m_oldWindowId = g_windowManager.GetActiveWindow();
Interface_GUIGeneral::lock();
if (pAddonWindow->IsDialog())
dynamic_cast<CGUIAddonWindowDialog*>(pAddonWindow)->Show(true, true);
else
g_windowManager.ActivateWindow(pAddonWindow->GetID());
Interface_GUIGeneral::unlock();
return true;
}
示例6: GetControl
void* Interface_GUIWindow::GetControl(void* kodiBase, void* handle, int control_id, const char* function, CGUIControl::GUICONTROLTYPES type, const std::string& typeName)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p') on addon '%s'",
function, addon, handle, addon ? addon->ID().c_str() : "unknown");
return nullptr;
}
return pAddonWindow->GetAddonControl(control_id, type, typeName);
}
示例7: mark_dirty_region
//@{
void Interface_GUIWindow::mark_dirty_region(void* kodiBase, void* handle)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p') on addon '%s'",
__FUNCTION__, addon, handle, addon ? addon->ID().c_str() : "unknown");
return;
}
Interface_GUIGeneral::lock();
pAddonWindow->MarkDirtyRegion();
Interface_GUIGeneral::unlock();
}
示例8: set_container_content
void Interface_GUIWindow::set_container_content(void* kodiBase, void* handle, const char* value)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow || !value)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p', value='%p') on addon '%s'",
__FUNCTION__, addon, handle, value, addon ? addon->ID().c_str() : "unknown");
return;
}
Interface_GUIGeneral::lock();
pAddonWindow->SetContainerContent(value);
Interface_GUIGeneral::unlock();
}
示例9: set_current_list_position
void Interface_GUIWindow::set_current_list_position(void* kodiBase, void* handle, int list_position)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p') on addon '%s'",
__FUNCTION__, addon, handle, addon ? addon->ID().c_str() : "unknown");
return;
}
Interface_GUIGeneral::lock();
pAddonWindow->SetCurrentListPosition(list_position);
Interface_GUIGeneral::unlock();
}
示例10: do_modal
bool Interface_GUIWindow::do_modal(void* kodiBase, void* handle)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p') on addon '%s'",
__FUNCTION__, addon, handle, addon ? addon->ID().c_str() : "unknown");
return false;
}
if (pAddonWindow->GetID() != g_windowManager.GetActiveWindow())
show(kodiBase, handle);
return true;
}
示例11: set_control_label
void Interface_GUIWindow::set_control_label(void* kodiBase, void* handle, int control_id, const char *label)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow || !label)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p', label='%p') on addon '%s'",
__FUNCTION__, addon, pAddonWindow, label, addon ? addon->ID().c_str() : "unknown");
return;
}
Interface_GUIGeneral::lock();
CGUIMessage msg(GUI_MSG_LABEL_SET, pAddonWindow->m_windowId, control_id);
msg.SetLabel(label);
pAddonWindow->OnMessage(msg);
Interface_GUIGeneral::unlock();
}
示例12: get_current_container_id
int Interface_GUIWindow::get_current_container_id(void* kodiBase, void* handle)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p') on addon '%s'",
__FUNCTION__, addon, handle, addon ? addon->ID().c_str() : "unknown");
return -1;
}
Interface_GUIGeneral::lock();
int id = pAddonWindow->GetCurrentContainerControlId();
Interface_GUIGeneral::unlock();
return id;
}
示例13: get_list_size
int Interface_GUIWindow::get_list_size(void* kodiBase, void* handle)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p') on addon '%s'",
__FUNCTION__, addon, handle, addon ? addon->ID().c_str() : "unknown");
return -1;
}
Interface_GUIGeneral::lock();
int listSize = pAddonWindow->GetListSize();
Interface_GUIGeneral::unlock();
return listSize;
}
示例14: clear_property
void Interface_GUIWindow::clear_property(void* kodiBase, void* handle, const char *key)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow || !key)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p', key='%p') on addon '%s'",
__FUNCTION__, addon, pAddonWindow, key, addon ? addon->ID().c_str() : "unknown");
return;
}
std::string lowerKey = key;
StringUtils::ToLower(lowerKey);
Interface_GUIGeneral::lock();
pAddonWindow->SetProperty(lowerKey, "");
Interface_GUIGeneral::unlock();
}
示例15: get_focus_id
int Interface_GUIWindow::get_focus_id(void* kodiBase, void* handle)
{
CAddonDll* addon = static_cast<CAddonDll*>(kodiBase);
CGUIAddonWindow* pAddonWindow = static_cast<CGUIAddonWindow*>(handle);
if (!addon || !pAddonWindow)
{
CLog::Log(LOGERROR, "Interface_GUIWindow::%s - invalid handler data (kodiBase='%p', handle='%p') on addon '%s'",
__FUNCTION__, addon, pAddonWindow, addon ? addon->ID().c_str() : "unknown");
return -1;
}
Interface_GUIGeneral::lock();
int control_id = pAddonWindow->GetFocusedControlID();
Interface_GUIGeneral::unlock();
if (control_id == -1)
CLog::Log(LOGERROR, "Interface_GUIWindow - %s: %s - No control in this window has focus", __FUNCTION__, addon->Name().c_str());
return control_id;
}