Revision: 35218
http://xbmc.svn.sourceforge.net/xbmc/?rev=35218&view=rev
Author: spiff_
Date: 2010-11-08 22:41:02 +0000 (Mon, 08 Nov 2010)
Log Message:
-----------
added: use dedicated icons for the add-on categories
Modified Paths:
--------------
branches/Dharma/xbmc/FileSystem/AddonsDirectory.cpp
branches/Dharma/xbmc/addons/Addon.cpp
branches/Dharma/xbmc/addons/Addon.h
Modified: branches/Dharma/xbmc/FileSystem/AddonsDirectory.cpp
===================================================================
--- branches/Dharma/xbmc/FileSystem/AddonsDirectory.cpp 2010-11-08 22:38:25 UTC (rev 35217)
+++ branches/Dharma/xbmc/FileSystem/AddonsDirectory.cpp 2010-11-08 22:41:02 UTC (rev 35218)
@@ -29,6 +29,7 @@
#include "addons/Repository.h"
#include "addons/PluginSource.h"
#include "StringUtils.h"
+#include "TextureManager.h"
#include "File.h"
using namespace ADDON;
@@ -116,6 +117,9 @@
CFileItemPtr item(new CFileItem(TranslateType((TYPE)i,true)));
item->m_strPath = CUtil::AddFileToFolder(strPath,TranslateType((TYPE)i,false));
item->m_bIsFolder = true;
+ CStdString thumb = GetIcon((TYPE)i);
+ if (!thumb.IsEmpty() && g_TextureManager.HasTexture(thumb))
+ item->SetThumbnailImage(thumb);
items.Add(item);
break;
}
Modified: branches/Dharma/xbmc/addons/Addon.cpp
===================================================================
--- branches/Dharma/xbmc/addons/Addon.cpp 2010-11-08 22:38:25 UTC (rev 35217)
+++ branches/Dharma/xbmc/addons/Addon.cpp 2010-11-08 22:41:02 UTC (rev 35218)
@@ -125,34 +125,35 @@
const char* name;
TYPE type;
int pretty;
+ const char* icon;
} TypeMapping;
static const TypeMapping types[] =
- {{"unknown", ADDON_UNKNOWN, 0 },
- {"xbmc.metadata.scraper.albums", ADDON_SCRAPER_ALBUMS, 24016 },
- {"xbmc.metadata.scraper.artists", ADDON_SCRAPER_ARTISTS, 24017 },
- {"xbmc.metadata.scraper.movies", ADDON_SCRAPER_MOVIES, 24007 },
- {"xbmc.metadata.scraper.musicvideos", ADDON_SCRAPER_MUSICVIDEOS, 24015 },
- {"xbmc.metadata.scraper.tvshows", ADDON_SCRAPER_TVSHOWS, 24014 },
- {"xbmc.metadata.scraper.library", ADDON_SCRAPER_LIBRARY, 0 },
- {"xbmc.ui.screensaver", ADDON_SCREENSAVER, 24008 },
- {"xbmc.player.musicviz", ADDON_VIZ, 24010 },
- {"visualization-library", ADDON_VIZ_LIBRARY, 0 },
- {"xbmc.python.pluginsource", ADDON_PLUGIN, 24005 },
- {"xbmc.python.script", ADDON_SCRIPT, 24009 },
- {"xbmc.python.weather", ADDON_SCRIPT_WEATHER, 24027 },
- {"xbmc.python.subtitles", ADDON_SCRIPT_SUBTITLES, 24012 },
- {"xbmc.python.lyrics", ADDON_SCRIPT_LYRICS, 24013 },
- {"xbmc.python.library", ADDON_SCRIPT_LIBRARY, 24014 },
- {"xbmc.python.module", ADDON_SCRIPT_MODULE, 0 },
- {"xbmc.gui.skin", ADDON_SKIN, 166 },
- {"xbmc.gui.webinterface", ADDON_WEB_INTERFACE, 199 },
- {"xbmc.addon.repository", ADDON_REPOSITORY, 24011 },
- {"pvrclient", ADDON_PVRDLL, 0 },
- {"xbmc.addon.video", ADDON_VIDEO, 1037 },
- {"xbmc.addon.audio", ADDON_AUDIO, 1038 },
- {"xbmc.addon.image", ADDON_IMAGE, 1039 },
- {"xbmc.addon.executable", ADDON_EXECUTABLE, 1043 }};
+ {{"unknown", ADDON_UNKNOWN, 0, "" },
+ {"xbmc.metadata.scraper.albums", ADDON_SCRAPER_ALBUMS, 24016, "DefaultAddonAlbumInfo.png" },
+ {"xbmc.metadata.scraper.artists", ADDON_SCRAPER_ARTISTS, 24017, "DefaultAddonArtistInfo.png" },
+ {"xbmc.metadata.scraper.movies", ADDON_SCRAPER_MOVIES, 24007, "DefaultAddonMovieInfo.png" },
+ {"xbmc.metadata.scraper.musicvideos", ADDON_SCRAPER_MUSICVIDEOS, 24015, "DefaultAddonMusicVideoInfo.png" },
+ {"xbmc.metadata.scraper.tvshows", ADDON_SCRAPER_TVSHOWS, 24014, "DefaultAddonTvInfo.png" },
+ {"xbmc.metadata.scraper.library", ADDON_SCRAPER_LIBRARY, 0, "" },
+ {"xbmc.ui.screensaver", ADDON_SCREENSAVER, 24008, "DefaultAddonScreensaver.png" },
+ {"xbmc.player.musicviz", ADDON_VIZ, 24010, "DefaultAddonVisualization.png" },
+ {"visualization-library", ADDON_VIZ_LIBRARY, 0, "" },
+ {"xbmc.python.pluginsource", ADDON_PLUGIN, 24005, "" },
+ {"xbmc.python.script", ADDON_SCRIPT, 24009, "" },
+ {"xbmc.python.weather", ADDON_SCRIPT_WEATHER, 24027, "DefaultAddonWeather.png" },
+ {"xbmc.python.subtitles", ADDON_SCRIPT_SUBTITLES, 24012, "DefaultAddonSubtitles.png" },
+ {"xbmc.python.lyrics", ADDON_SCRIPT_LYRICS, 24013, "DefaultAddonLyrics.png" },
+ {"xbmc.python.library", ADDON_SCRIPT_LIBRARY, 24014, "" },
+ {"xbmc.python.module", ADDON_SCRIPT_MODULE, 0, "" },
+ {"xbmc.gui.skin", ADDON_SKIN, 166, "DefaultAddonSkin.png" },
+ {"xbmc.gui.webinterface", ADDON_WEB_INTERFACE, 199, "DefaultAddonWebSkin.png" },
+ {"xbmc.addon.repository", ADDON_REPOSITORY, 24011, "DefaultAddonRepository.png" },
+ {"pvrclient", ADDON_PVRDLL, 0, "" },
+ {"xbmc.addon.video", ADDON_VIDEO, 1037, "DefaultAddonVideo.png" },
+ {"xbmc.addon.audio", ADDON_AUDIO, 1038, "DefaultAddonMusic.png" },
+ {"xbmc.addon.image", ADDON_IMAGE, 1039, "DefaultAddonPicture.png" },
+ {"xbmc.addon.executable", ADDON_EXECUTABLE, 1043, "DefaultAddonProgram.png" }};
const CStdString TranslateType(const ADDON::TYPE &type, bool pretty/*=false*/)
{
@@ -181,6 +182,17 @@
return ADDON_UNKNOWN;
}
+const CStdString GetIcon(const ADDON::TYPE& type)
+{
+ for (unsigned int index=0; index < sizeof(types)/sizeof(types[0]); ++index)
+ {
+ const TypeMapping &map = types[index];
+ if (type == map.type)
+ return map.icon;
+ }
+ return "";
+}
+
/**
* AddonVersion
*
Modified: branches/Dharma/xbmc/addons/Addon.h
===================================================================
--- branches/Dharma/xbmc/addons/Addon.h 2010-11-08 22:38:25 UTC (rev 35217)
+++ branches/Dharma/xbmc/addons/Addon.h 2010-11-08 22:41:02 UTC (rev 35218)
@@ -40,6 +40,7 @@
// utils
const CStdString TranslateType(const TYPE &type, bool pretty=false);
+const CStdString GetIcon(const TYPE &type);
const TYPE TranslateType(const CStdString &string);
const CStdString UpdateVideoScraper(const CStdString &scraper);
const CStdString UpdateMusicScraper(const CStdString &scraper);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|