#include "GUIDialogFavourites.h"
#include "GUIDialogContextMenu.h"
+#include "GUIDialogFileBrowser.h"
#include "Favourites.h"
#include "guilib/GUIWindowManager.h"
#include "guilib/GUIKeyboardFactory.h"
+#include "filesystem/File.h"
#include "FileItem.h"
#include "guilib/LocalizeStrings.h"
+#include "settings/Settings.h"
+#include "storage/MediaManager.h"
+
+using namespace XFILE;
#define FAVOURITES_LIST 450
}
choices.Add(3, 15015);
choices.Add(4, 118);
+ choices.Add(5, 20019);
int button = CGUIDialogContextMenu::ShowAndGetChoice(choices);
OnDelete(item);
else if (button == 4)
OnRename(item);
+ else if (button == 5)
+ OnSetThumb(item);
}
void CGUIDialogFavourites::OnMoveItem(int item, int amount)
UpdateList();
}
+void CGUIDialogFavourites::OnSetThumb(int item)
+{
+ if (item < 0 || item >= m_favourites->Size())
+ return;
+
+ CFileItemPtr pItem = (*m_favourites)[item];
+
+ CFileItemList items;
+
+ // Current
+ if (pItem->HasThumbnail())
+ {
+ CFileItemPtr current(new CFileItem("thumb://Current", false));
+ current->SetThumbnailImage(pItem->GetThumbnailImage());
+ current->SetLabel(g_localizeStrings.Get(20016));
+ items.Add(current);
+ }
+
+ // None
+ CFileItemPtr none(new CFileItem("thumb://None", false));
+ none->SetIconImage(pItem->GetIconImage());
+ none->SetLabel(g_localizeStrings.Get(20018));
+ items.Add(none);
+
+ CStdString thumb;
+ VECSOURCES sources;
+ g_mediaManager.GetLocalDrives(sources);
+ if (!CGUIDialogFileBrowser::ShowAndGetImage(items, sources, g_localizeStrings.Get(1030), thumb))
+ return;
+
+ (*m_favourites)[item]->SetThumbnailImage(thumb);
+ CFavourites::Save(*m_favourites);
+ UpdateList();
+}
+
void CGUIDialogFavourites::UpdateList()
{
int currentItem = GetSelectedItem();