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(); }
void Interface_GUIWindow::remove_list_item_from_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, pAddonWindow, addon ? addon->ID().c_str() : "unknown"); return; } Interface_GUIGeneral::lock(); pAddonWindow->RemoveItem(list_position); Interface_GUIGeneral::unlock(); }