aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjmarshallnz <jmarshallnz@svn>2010-11-18 01:13:03 +0000
committerjmarshallnz <jmarshallnz@svn>2010-11-18 01:13:03 +0000
commit3902c9ff5cc18b5286c43f8d5a13493bb750b773 (patch)
tree32de79837caf0128a5647aeea23b0678d8545209
parentac98f3d9e402f394adc14fb5614813e41de26444 (diff)
changed: Make OnAssignContent and OnUnassignContent static
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/Dharma@35320 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
-rw-r--r--xbmc/GUIWindowVideoBase.h2
-rw-r--r--xbmc/GUIWindowVideoFiles.cpp33
-rw-r--r--xbmc/GUIWindowVideoFiles.h6
3 files changed, 23 insertions, 18 deletions
diff --git a/xbmc/GUIWindowVideoBase.h b/xbmc/GUIWindowVideoBase.h
index 99565bb7a0..1bd42e9239 100644
--- a/xbmc/GUIWindowVideoBase.h
+++ b/xbmc/GUIWindowVideoBase.h
@@ -71,8 +71,6 @@ protected:
virtual void GetContextButtons(int itemNumber, CContextButtons &buttons);
void GetNonContextButtons(int itemNumber, CContextButtons &buttons);
virtual bool OnContextButton(int itemNumber, CONTEXT_BUTTON button);
- virtual void OnAssignContent(int iItem, int iFound, ADDON::ScraperPtr& scraper, VIDEO::SScanSettings& settings) {};
- virtual void OnUnAssignContent(int iItem) {};
virtual void OnQueueItem(int iItem);
virtual void OnDeleteItem(CFileItemPtr pItem);
virtual void OnDeleteItem(int iItem);
diff --git a/xbmc/GUIWindowVideoFiles.cpp b/xbmc/GUIWindowVideoFiles.cpp
index dadd63eb32..730ea550d4 100644
--- a/xbmc/GUIWindowVideoFiles.cpp
+++ b/xbmc/GUIWindowVideoFiles.cpp
@@ -279,12 +279,15 @@ void CGUIWindowVideoFiles::AddFileToDatabase(const CFileItem* pItem)
}
}
-bool CGUIWindowVideoFiles::OnUnAssignContent(int iItem, int label1, int label2, int label3)
+bool CGUIWindowVideoFiles::OnUnAssignContent(const CStdString &path, int label1, int label2, int label3)
{
bool bCanceled;
+ CVideoDatabase db;
+ db.Open();
if (CGUIDialogYesNo::ShowAndGetInput(label1,label2,label3,20022,bCanceled))
{
- m_database.RemoveContentForPath(m_vecItems->Get(iItem)->m_strPath,m_dlgProgress);
+ db.RemoveContentForPath(path);
+ db.Close();
CUtil::DeleteVideoDatabaseDirectoryCache();
return true;
}
@@ -295,20 +298,22 @@ bool CGUIWindowVideoFiles::OnUnAssignContent(int iItem, int label1, int label2,
ADDON::ScraperPtr info;
SScanSettings settings;
settings.exclude = true;
- m_database.SetScraperForPath(m_vecItems->Get(iItem)->m_strPath,info,settings);
+ db.SetScraperForPath(path,info,settings);
}
}
+ db.Close();
return false;
}
-void CGUIWindowVideoFiles::OnAssignContent(int iItem, int iFound, ADDON::ScraperPtr& info, SScanSettings& settings)
+void CGUIWindowVideoFiles::OnAssignContent(const CStdString &path, int iFound, ADDON::ScraperPtr& info, SScanSettings& settings)
{
- CFileItemPtr item = m_vecItems->Get(iItem);
bool bScan=false;
+ CVideoDatabase db;
+ db.Open();
if (iFound == 0)
{
- info = m_database.GetScraperForPath(item->m_strPath, settings);
+ info = db.GetScraperForPath(path, settings);
}
ADDON::ScraperPtr info2(info);
@@ -317,21 +322,21 @@ void CGUIWindowVideoFiles::OnAssignContent(int iItem, int iFound, ADDON::Scraper
{
if(settings.exclude || !info)
{
- OnUnAssignContent(iItem,20375,20340,20341);
+ OnUnAssignContent(path,20375,20340,20341);
}
else if (info2)
{
- if (OnUnAssignContent(iItem,20442,20443,20444))
+ if (OnUnAssignContent(path,20442,20443,20444))
bScan = true;
}
- m_database.Open();
- m_database.SetScraperForPath(item->m_strPath,info,settings);
- m_database.Close();
+ db.SetScraperForPath(path,info,settings);
if (bScan)
{
- OnScan(item->m_strPath, true);
+ CGUIDialogVideoScan* pDialog = (CGUIDialogVideoScan*)g_windowManager.GetWindow(WINDOW_DIALOG_VIDEO_SCAN);
+ if (pDialog)
+ pDialog->StartScanning(path, true);
}
}
}
@@ -519,7 +524,7 @@ bool CGUIWindowVideoFiles::OnContextButton(int itemNumber, CONTEXT_BUTTON button
//TODO should we search DB for entries from plugins?
if (button == CONTEXT_BUTTON_REMOVE_SOURCE && !item->IsPlugin())
{
- OnUnAssignContent(itemNumber,20375,20340,20341);
+ OnUnAssignContent(item->m_strPath,20375,20340,20341);
}
Update("");
return true;
@@ -536,7 +541,7 @@ bool CGUIWindowVideoFiles::OnContextButton(int itemNumber, CONTEXT_BUTTON button
{
SScanSettings settings;
ADDON::ScraperPtr info = m_database.GetScraperForPath(item->HasVideoInfoTag() ? item->GetVideoInfoTag()->m_strPath : item->m_strPath, settings);
- OnAssignContent(itemNumber,0, info, settings);
+ OnAssignContent(item->m_strPath,0, info, settings);
return true;
}
diff --git a/xbmc/GUIWindowVideoFiles.h b/xbmc/GUIWindowVideoFiles.h
index d35d8d8166..e2032d8fee 100644
--- a/xbmc/GUIWindowVideoFiles.h
+++ b/xbmc/GUIWindowVideoFiles.h
@@ -37,6 +37,10 @@ public:
virtual bool OnAction(const CAction &action);
void GetStackedDirectory(const CStdString &strPath, CFileItemList &items);
+
+ static void OnAssignContent(const CStdString &path, int iFound, ADDON::ScraperPtr& scraper, VIDEO::SScanSettings& settings);
+ static bool OnUnAssignContent(const CStdString &path, int label1, int label2, int label3);
+
protected:
virtual bool GetDirectory(const CStdString &strDirectory, CFileItemList &items);
virtual bool OnPlayMedia(int iItem);
@@ -48,8 +52,6 @@ protected:
virtual CStdString GetStartFolder(const CStdString &dir);
virtual void OnQueueItem(int iItem);
- virtual void OnAssignContent(int iItem, int iFound, ADDON::ScraperPtr& scraper, VIDEO::SScanSettings& settings);
- virtual bool OnUnAssignContent(int iItem, int label1, int label2, int label3);
virtual void LoadPlayList(const CStdString& strFileName);
void PlayFolder(const CFileItem* pItem);