#endif
// only the InitDirectories* for the current platform should return true
- // putting this before the first log entries saves another ifdef for g_settings.m_logFolder
+ // putting this before the first log entries saves another ifdef for g_advancedSettings.m_logFolder
bool inited = InitDirectoriesLinux();
if (!inited)
inited = InitDirectoriesOSX();
CopyUserDataIfNeeded("special://masterprofile/", "favourites.xml");
CopyUserDataIfNeeded("special://masterprofile/", "Lircmap.xml");
- if (!CLog::Init(CSpecialProtocol::TranslatePath(g_settings.m_logFolder).c_str()))
+ if (!CLog::Init(CSpecialProtocol::TranslatePath(g_advancedSettings.m_logFolder).c_str()))
{
fprintf(stderr,"Could not init logging classes. Permission errors on ~/.xbmc (%s)\n",
- CSpecialProtocol::TranslatePath(g_settings.m_logFolder).c_str());
+ CSpecialProtocol::TranslatePath(g_advancedSettings.m_logFolder).c_str());
return false;
}
CStdString executable = CUtil::ResolveExecutablePath();
CLog::Log(LOGNOTICE, "The executable running is: %s", executable.c_str());
CLog::Log(LOGNOTICE, "Local hostname: %s", m_network->GetHostName().c_str());
- CLog::Log(LOGNOTICE, "Log File is located: %sxbmc.log", g_settings.m_logFolder.c_str());
+ CLog::Log(LOGNOTICE, "Log File is located: %sxbmc.log", g_advancedSettings.m_logFolder.c_str());
CLog::Log(LOGNOTICE, "-----------------------------------------------------------------------");
CStdString strExecutablePath;
for (int i=0;i<items.Size();++i)
CFile::Cache(items[i]->GetPath(),"special://masterprofile/"+URIUtils::GetFileName(items[i]->GetPath()));
}
- g_settings.m_logFolder = "special://masterprofile/";
+ g_advancedSettings.m_logFolder = "special://masterprofile/";
}
#ifdef HAS_XRANDR
CSpecialProtocol::SetTempPath(strTempPath);
URIUtils::AddSlashAtEnd(strTempPath);
- g_settings.m_logFolder = strTempPath;
+ g_advancedSettings.m_logFolder = strTempPath;
CreateUserDirs();
else
{
URIUtils::AddSlashAtEnd(xbmcPath);
- g_settings.m_logFolder = xbmcPath;
+ g_advancedSettings.m_logFolder = xbmcPath;
CSpecialProtocol::SetXBMCBinPath(xbmcBinPath);
CSpecialProtocol::SetXBMCPath(xbmcPath);
CreateUserDirs();
URIUtils::AddSlashAtEnd(strTempPath);
- g_settings.m_logFolder = strTempPath;
+ g_advancedSettings.m_logFolder = strTempPath;
}
return true;
strTempPath = userHome + "/Library/Logs";
#endif
URIUtils::AddSlashAtEnd(strTempPath);
- g_settings.m_logFolder = strTempPath;
+ g_advancedSettings.m_logFolder = strTempPath;
CreateUserDirs();
}
else
{
URIUtils::AddSlashAtEnd(xbmcPath);
- g_settings.m_logFolder = xbmcPath;
+ g_advancedSettings.m_logFolder = xbmcPath;
CSpecialProtocol::SetXBMCBinPath(xbmcPath);
CSpecialProtocol::SetXBMCPath(xbmcPath);
CSpecialProtocol::SetTempPath(strTempPath);
URIUtils::AddSlashAtEnd(strTempPath);
- g_settings.m_logFolder = strTempPath;
+ g_advancedSettings.m_logFolder = strTempPath;
}
return true;
CStdString strWin32UserFolder = CWIN32Util::GetProfilePath();
- g_settings.m_logFolder = strWin32UserFolder;
+ g_advancedSettings.m_logFolder = strWin32UserFolder;
CSpecialProtocol::SetHomePath(strWin32UserFolder);
CSpecialProtocol::SetMasterProfilePath(URIUtils::AddFileToFolder(strWin32UserFolder, "userdata"));
CSpecialProtocol::SetTempPath(URIUtils::AddFileToFolder(strWin32UserFolder,"cache"));
#include "utils/Variant.h"
#include "guilib/GUIWindowManager.h"
#include "guilib/Key.h"
-#include "settings/Settings.h"
+#include "settings/AdvancedSettings.h"
#include "settings/GUISettings.h"
#include "FileItem.h"
#include "guilib/GUIDialog.h"
else
URIUtils::CreateArchivePath(strPath, "rar", pMsg->strParam.c_str(), "");
- CUtil::GetRecursiveListing(strPath, items, g_settings.m_pictureExtensions);
+ CUtil::GetRecursiveListing(strPath, items, g_advancedSettings.m_pictureExtensions);
if (items.Size() > 0)
{
pSlideShow->Reset();
CFileItemList items;
CStdString strPath = pMsg->strParam;
- CStdString extensions = g_settings.m_pictureExtensions;
+ CStdString extensions = g_advancedSettings.m_pictureExtensions;
if (pMsg->dwParam1)
extensions += "|.tbn";
CUtil::GetRecursiveListing(strPath, items, extensions);
#include "URL.h"
#include "settings/GUISettings.h"
#include "settings/AdvancedSettings.h"
-#include "settings/Settings.h"
#include "utils/RegExp.h"
#include "utils/log.h"
#include "utils/Variant.h"
extension.ToLower();
- return (g_settings.m_videoExtensions.Find(extension) != -1);
+ return (g_advancedSettings.m_videoExtensions.Find(extension) != -1);
}
bool CFileItem::IsEPG() const
strExtension.ToLower();
strExtension += '|';
- return (g_settings.m_discStubExtensions + '|').Find(strExtension) != -1;
+ return (g_advancedSettings.m_discStubExtensions + '|').Find(strExtension) != -1;
}
bool CFileItem::IsAudio() const
extension.ToLower();
- return (g_settings.m_musicExtensions.Find(extension) != -1);
+ return (g_advancedSettings.m_musicExtensions.Find(extension) != -1);
}
bool CFileItem::IsKaraoke() const
else
{ // try replacing the extension with one of our allowed ones.
CStdStringArray extensions;
- StringUtils::SplitString(g_settings.m_musicExtensions, "|", extensions);
+ StringUtils::SplitString(g_advancedSettings.m_musicExtensions, "|", extensions);
for (unsigned int i = 0; i < extensions.size(); i++)
{
strMediaFile = URIUtils::ReplaceExtension(pItem->GetPath(), extensions[i]);
if (bMatch)
{
CFileItemList items;
- CDirectory::GetDirectory(item->GetPath(),items,g_settings.m_videoExtensions);
+ CDirectory::GetDirectory(item->GetPath(),items,g_advancedSettings.m_videoExtensions);
// optimized to only traverse listing once by checking for filecount
// and recording last file item for later use
int nFiles = 0;
return "";
CFileItemList items;
- CDirectory::GetDirectory(strDir, items, g_settings.m_pictureExtensions, DIR_FLAG_NO_FILE_DIRS | DIR_FLAG_READ_CACHE | DIR_FLAG_NO_FILE_INFO);
+ CDirectory::GetDirectory(strDir, items, g_advancedSettings.m_pictureExtensions, DIR_FLAG_NO_FILE_DIRS | DIR_FLAG_READ_CACHE | DIR_FLAG_NO_FILE_INFO);
if (IsOpticalMediaFile())
{ // grab from the optical media parent folder as well
CFileItemList moreItems;
- CDirectory::GetDirectory(GetLocalMetadataPath(), moreItems, g_settings.m_pictureExtensions, DIR_FLAG_NO_FILE_DIRS | DIR_FLAG_READ_CACHE | DIR_FLAG_NO_FILE_INFO);
+ CDirectory::GetDirectory(GetLocalMetadataPath(), moreItems, g_advancedSettings.m_pictureExtensions, DIR_FLAG_NO_FILE_DIRS | DIR_FLAG_READ_CACHE | DIR_FLAG_NO_FILE_INFO);
items.Append(moreItems);
}
CStdString strDir;
URIUtils::GetDirectory(strFile, strDir);
CFileItemList items;
- CDirectory::GetDirectory(strDir, items, g_settings.m_videoExtensions, DIR_FLAG_READ_CACHE | DIR_FLAG_NO_FILE_INFO);
+ CDirectory::GetDirectory(strDir, items, g_advancedSettings.m_videoExtensions, DIR_FLAG_READ_CACHE | DIR_FLAG_NO_FILE_INFO);
URIUtils::RemoveExtension(strFile);
strFile += "-trailer";
CStdString strFile3 = URIUtils::AddFileToFolder(strDir, "movie-trailer");
return false;
extension.ToLower();
- if (g_settings.m_pictureExtensions.Find(extension) != -1)
+ if (g_advancedSettings.m_pictureExtensions.Find(extension) != -1)
return true;
if (extension == ".tbn" || extension == ".dds")
#include "ApplicationMessenger.h"
#include "guilib/GUIKeyboardFactory.h"
#include "FileItem.h"
-#include "settings/Settings.h"
+#include "settings/AdvancedSettings.h"
#include "settings/MediaSourceSettings.h"
#include "GUIInfoManager.h"
#include "GUIUserMessages.h"
{
strMask = setting->Attribute("mask");
// convert mask qualifiers
- strMask.Replace("$AUDIO", g_settings.m_musicExtensions);
- strMask.Replace("$VIDEO", g_settings.m_videoExtensions);
- strMask.Replace("$IMAGE", g_settings.m_pictureExtensions);
+ strMask.Replace("$AUDIO", g_advancedSettings.m_musicExtensions);
+ strMask.Replace("$VIDEO", g_advancedSettings.m_videoExtensions);
+ strMask.Replace("$IMAGE", g_advancedSettings.m_pictureExtensions);
#if defined(_WIN32_WINNT)
strMask.Replace("$EXECUTABLE", ".exe|.bat|.cmd|.py");
#else
else
{
if (strcmpi(type, "video") == 0)
- strMask = g_settings.m_videoExtensions;
+ strMask = g_advancedSettings.m_videoExtensions;
else if (strcmpi(type, "audio") == 0)
- strMask = g_settings.m_musicExtensions;
+ strMask = g_advancedSettings.m_musicExtensions;
else if (strcmpi(type, "executable") == 0)
#if defined(_WIN32_WINNT)
strMask = ".exe|.bat|.cmd|.py";
#include "URL.h"
#include "settings/AdvancedSettings.h"
#include "settings/GUISettings.h"
-#include "settings/Settings.h"
#include "File.h"
#include <vector>
if (m_userAgent.length() > 0)
g_curlInterface.easy_setopt(h, CURLOPT_USERAGENT, m_userAgent.c_str());
else /* set some default agent as shoutcast doesn't return proper stuff otherwise */
- g_curlInterface.easy_setopt(h, CURLOPT_USERAGENT, g_settings.m_userAgent.c_str());
+ g_curlInterface.easy_setopt(h, CURLOPT_USERAGENT, g_advancedSettings.m_userAgent.c_str());
if (m_useOldHttpVersion)
g_curlInterface.easy_setopt(h, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
#include "RSSDirectory.h"
#include "FileItem.h"
#include "CurlFile.h"
-#include "settings/Settings.h"
#include "settings/AdvancedSettings.h"
#include "utils/URIUtils.h"
#include "utils/XBMCTinyXML.h"
extension.ToLower();
- if (g_settings.m_videoExtensions.Find(extension) != -1)
+ if (g_advancedSettings.m_videoExtensions.Find(extension) != -1)
return true;
- if (g_settings.m_musicExtensions.Find(extension) != -1)
+ if (g_advancedSettings.m_musicExtensions.Find(extension) != -1)
return true;
- if (g_settings.m_pictureExtensions.Find(extension) != -1)
+ if (g_advancedSettings.m_pictureExtensions.Find(extension) != -1)
return true;
return false;
extension.ToLower();
- if (g_settings.m_pictureExtensions.Find(extension) != -1)
+ if (g_advancedSettings.m_pictureExtensions.Find(extension) != -1)
return true;
return false;
#include "SpecialProtocol.h"
#include "URL.h"
#include "Util.h"
+#include "guilib/GraphicContext.h"
#include "profiles/ProfilesManager.h"
+#include "settings/AdvancedSettings.h"
#include "settings/GUISettings.h"
-#include "settings/Settings.h"
#include "utils/log.h"
#include "utils/URIUtils.h"
else if (RootDir.Equals("skin"))
URIUtils::AddFileToFolder(g_graphicsContext.GetMediaDir(), FileName, translatedPath);
else if (RootDir.Equals("logpath"))
- URIUtils::AddFileToFolder(g_settings.m_logFolder, FileName, translatedPath);
+ URIUtils::AddFileToFolder(g_advancedSettings.m_logFolder, FileName, translatedPath);
// from here on, we have our "real" special paths
#include "utils/URIUtils.h"
#include "utils/JobManager.h"
#include "FileItem.h"
-#include "settings/Settings.h"
+#include "settings/AdvancedSettings.h"
#include "Key.h"
#include "TextureCache.h"
#include "WindowIDs.h"
URIUtils::AddSlashAtEnd(realPath);
CFileItemList items;
- CDirectory::GetDirectory(realPath, items, g_settings.m_pictureExtensions + "|.tbn|.dds", DIR_FLAG_NO_FILE_DIRS | DIR_FLAG_NO_FILE_INFO);
+ CDirectory::GetDirectory(realPath, items, g_advancedSettings.m_pictureExtensions + "|.tbn|.dds", DIR_FLAG_NO_FILE_DIRS | DIR_FLAG_NO_FILE_INFO);
for (int i=0; i < items.Size(); i++)
{
CFileItem* pItem = items[i].get();
if (item.m_bIsFolder)
{
CFileItemList items;
- CDirectory::GetDirectory(item.GetPath(),items,g_settings.m_videoExtensions);
+ CDirectory::GetDirectory(item.GetPath(),items,g_advancedSettings.m_videoExtensions);
int playlist = PLAYLIST_MUSIC;
for (int i = 0; i < items.Size(); i++)
{
#include "FileOperations.h"
#include "VideoLibrary.h"
#include "AudioLibrary.h"
-#include "settings/Settings.h"
#include "MediaSource.h"
#include "filesystem/Directory.h"
#include "filesystem/File.h"
if (media.Equals("video"))
{
regexps = g_advancedSettings.m_videoExcludeFromListingRegExps;
- extensions = g_settings.m_videoExtensions;
+ extensions = g_advancedSettings.m_videoExtensions;
}
else if (media.Equals("music"))
{
regexps = g_advancedSettings.m_audioExcludeFromListingRegExps;
- extensions = g_settings.m_musicExtensions;
+ extensions = g_advancedSettings.m_musicExtensions;
}
else if (media.Equals("pictures"))
{
regexps = g_advancedSettings.m_pictureExcludeFromListingRegExps;
- extensions = g_settings.m_pictureExtensions;
+ extensions = g_advancedSettings.m_pictureExtensions;
}
if (CDirectory::GetDirectory(strPath, items, extensions))
if (media.Equals("video"))
{
regexps = g_advancedSettings.m_videoExcludeFromListingRegExps;
- extensions = g_settings.m_videoExtensions;
+ extensions = g_advancedSettings.m_videoExtensions;
}
else if (media.Equals("music"))
{
regexps = g_advancedSettings.m_audioExcludeFromListingRegExps;
- extensions = g_settings.m_musicExtensions;
+ extensions = g_advancedSettings.m_musicExtensions;
}
else if (media.Equals("pictures"))
{
regexps = g_advancedSettings.m_pictureExcludeFromListingRegExps;
- extensions = g_settings.m_pictureExtensions;
+ extensions = g_advancedSettings.m_pictureExtensions;
}
CDirectory directory;
#include "XTimeUtils.h"
#endif
#include "guilib/LocalizeStrings.h"
+#include "settings/AdvancedSettings.h"
#include "settings/GUISettings.h"
#include "GUIInfoManager.h"
#include "guilib/GUIAudioManager.h"
#include "utils/Crc32.h"
#include "FileItem.h"
#include "LangInfo.h"
-#include "settings/Settings.h"
#include "guilib/TextureManager.h"
#include "Util.h"
#include "URL.h"
TRACE;
String result;
if (strcmpi(mediaType, "video") == 0)
- result = g_settings.m_videoExtensions;
+ result = g_advancedSettings.m_videoExtensions;
else if (strcmpi(mediaType, "music") == 0)
- result = g_settings.m_musicExtensions;
+ result = g_advancedSettings.m_musicExtensions;
else if (strcmpi(mediaType, "picture") == 0)
- result = g_settings.m_pictureExtensions;
+ result = g_advancedSettings.m_pictureExtensions;
// TODO:
// else
#include "settings/GUISettings.h"
#include "settings/AdvancedSettings.h"
#include "settings/MediaSourceSettings.h"
-#include "settings/Settings.h"
#include "FileItem.h"
#include "guilib/WindowIDs.h"
#include "Util.h"
CStdString CGUIViewStateWindowMusic::GetExtensions()
{
- return g_settings.m_musicExtensions;
+ return g_advancedSettings.m_musicExtensions;
}
VECSOURCES& CGUIViewStateWindowMusic::GetSources()
#include "filesystem/Directory.h"
#include "settings/AdvancedSettings.h"
#include "settings/GUISettings.h"
-#include "settings/Settings.h"
#include "FileItem.h"
#include "guilib/LocalizeStrings.h"
#include "utils/StringUtils.h"
// load subfolder
CFileItemList items;
- CDirectory::GetDirectory(strDirectory, items, g_settings.m_musicExtensions + "|.jpg|.tbn|.lrc|.cdg");
+ CDirectory::GetDirectory(strDirectory, items, g_advancedSettings.m_musicExtensions + "|.jpg|.tbn|.lrc|.cdg");
// sort and get the path hash. Note that we don't filter .cue sheet items here as we want
// to detect changes in the .cue sheet as well. The .cue sheet items only need filtering
// load subfolder
CFileItemList items;
// CLog::Log(LOGDEBUG, __FUNCTION__" - processing dir: %s", strPath.c_str());
- CDirectory::GetDirectory(strPath, items, g_settings.m_musicExtensions, DIR_FLAG_NO_FILE_DIRS);
+ CDirectory::GetDirectory(strPath, items, g_advancedSettings.m_musicExtensions, DIR_FLAG_NO_FILE_DIRS);
if (m_bStop)
return 0;
#include "filesystem/VideoDatabaseDirectory.h"
#include "guilib/WindowIDs.h"
#include "music/tags/MusicInfoTag.h"
-#include "settings/Settings.h"
+#include "settings/AdvancedSettings.h"
#include "settings/GUISettings.h"
#include "utils/log.h"
#include "utils/md5.h"
// this is the only way to hide unplayable items in the 'files'
// view as we cannot tell what context (eg music vs video) the
// request came from
- string supported = g_settings.m_pictureExtensions + "|"
- + g_settings.m_videoExtensions + "|"
- + g_settings.m_musicExtensions + "|"
- + g_settings.m_discStubExtensions;
+ string supported = g_advancedSettings.m_pictureExtensions + "|"
+ + g_advancedSettings.m_videoExtensions + "|"
+ + g_advancedSettings.m_musicExtensions + "|"
+ + g_advancedSettings.m_discStubExtensions;
CDirectory::GetDirectory((const char*)parent_id, items, supported);
DefaultSortItems(items);
}
#include "view/ViewState.h"
#include "settings/GUISettings.h"
#include "settings/AdvancedSettings.h"
-#include "settings/Settings.h"
#include "settings/MediaSourceSettings.h"
#include "filesystem/Directory.h"
#include "filesystem/PluginDirectory.h"
CStdString CGUIViewStateWindowPictures::GetExtensions()
{
if (g_guiSettings.GetBool("pictures.showvideos"))
- return g_settings.m_pictureExtensions+"|"+g_settings.m_videoExtensions;
+ return g_advancedSettings.m_pictureExtensions+"|"+g_advancedSettings.m_videoExtensions;
- return g_settings.m_pictureExtensions;
+ return g_advancedSettings.m_pictureExtensions;
}
VECSOURCES& CGUIViewStateWindowPictures::GetSources()
#include "GUIDialogPictureInfo.h"
#include "GUIUserMessages.h"
#include "guilib/GUIWindowManager.h"
+#include "settings/AdvancedSettings.h"
#include "settings/DisplaySettings.h"
-#include "settings/Settings.h"
#include "settings/GUISettings.h"
#include "FileItem.h"
#include "guilib/Texture.h"
// fetch directory and sort accordingly
CFileItemList items;
- if (!CDirectory::GetDirectory(strPath, items, m_strExtensions.IsEmpty()?g_settings.m_pictureExtensions:m_strExtensions,DIR_FLAG_NO_FILE_DIRS,true))
+ if (!CDirectory::GetDirectory(strPath, items, m_strExtensions.IsEmpty()?g_advancedSettings.m_pictureExtensions:m_strExtensions,DIR_FLAG_NO_FILE_DIRS,true))
return;
items.Sort(method, order);
#include "GUIUserMessages.h"
#include "settings/GUISettings.h"
#include "utils/URIUtils.h"
-#include "settings/Settings.h"
#include "settings/AdvancedSettings.h"
#include "video/VideoThumbLoader.h"
CFileItemList items;
- CDirectory::GetDirectory(strPath, items, g_settings.m_pictureExtensions, DIR_FLAG_NO_FILE_DIRS);
+ CDirectory::GetDirectory(strPath, items, g_advancedSettings.m_pictureExtensions, DIR_FLAG_NO_FILE_DIRS);
// create the folder thumb by choosing 4 random thumbs within the folder and putting
// them into one thumb.
{
if (pItem->IsCBZ() || pItem->IsCBR())
{
- CDirectory::GetDirectory(strPath, items, g_settings.m_pictureExtensions, DIR_FLAG_NO_FILE_DIRS);
+ CDirectory::GetDirectory(strPath, items, g_advancedSettings.m_pictureExtensions, DIR_FLAG_NO_FILE_DIRS);
for (int i=0;i<items.Size();++i)
{
CFileItemPtr item = items[i];
#include "LangInfo.h"
#include "profiles/ProfilesManager.h"
#include "settings/GUISettings.h"
-#include "settings/Settings.h"
#include "utils/StringUtils.h"
#include "utils/SystemInfo.h"
#include "utils/URIUtils.h"
// load advanced settings
Load();
- // Add the list of disc stub extensions (if any) to the list of video extensions
- if (!g_settings.m_discStubExtensions.IsEmpty())
- g_settings.m_videoExtensions += "|" + g_settings.m_discStubExtensions;
-
// default players?
CLog::Log(LOGNOTICE, "Default DVD Player: %s", m_videoDefaultDVDPlayer.c_str());
CLog::Log(LOGNOTICE, "Default Video Player: %s", m_videoDefaultPlayer.c_str());
m_databaseMusic.Reset();
m_databaseVideo.Reset();
+ m_pictureExtensions = ".png|.jpg|.jpeg|.bmp|.gif|.ico|.tif|.tiff|.tga|.pcx|.cbz|.zip|.cbr|.rar|.m3u|.dng|.nef|.cr2|.crw|.orf|.arw|.erf|.3fr|.dcr|.x3f|.mef|.raf|.mrw|.pef|.sr2|.rss";
+ m_musicExtensions = ".nsv|.m4a|.flac|.aac|.strm|.pls|.rm|.rma|.mpa|.wav|.wma|.ogg|.mp3|.mp2|.m3u|.mod|.amf|.669|.dmf|.dsm|.far|.gdm|.imf|.it|.m15|.med|.okt|.s3m|.stm|.sfx|.ult|.uni|.xm|.sid|.ac3|.dts|.cue|.aif|.aiff|.wpl|.ape|.mac|.mpc|.mp+|.mpp|.shn|.zip|.rar|.wv|.nsf|.spc|.gym|.adx|.dsp|.adp|.ymf|.ast|.afc|.hps|.xsp|.xwav|.waa|.wvs|.wam|.gcm|.idsp|.mpdsp|.mss|.spt|.rsd|.mid|.kar|.sap|.cmc|.cmr|.dmc|.mpt|.mpd|.rmt|.tmc|.tm8|.tm2|.oga|.url|.pxml|.tta|.rss|.cm3|.cms|.dlt|.brstm|.wtv|.mka";
+ m_videoExtensions = ".m4v|.3g2|.3gp|.nsv|.tp|.ts|.ty|.strm|.pls|.rm|.rmvb|.m3u|.m3u8|.ifo|.mov|.qt|.divx|.xvid|.bivx|.vob|.nrg|.img|.iso|.pva|.wmv|.asf|.asx|.ogm|.m2v|.avi|.bin|.dat|.mpg|.mpeg|.mp4|.mkv|.avc|.vp3|.svq3|.nuv|.viv|.dv|.fli|.flv|.rar|.001|.wpl|.zip|.vdr|.dvr-ms|.xsp|.mts|.m2t|.m2ts|.evo|.ogv|.sdp|.avs|.rec|.url|.pxml|.vc1|.h264|.rcv|.rss|.mpls|.webm|.bdmv|.wtv";
+ m_discStubExtensions = ".disc";
+ // internal music extensions
+ m_musicExtensions += "|.sidstream|.oggstream|.nsfstream|.asapstream|.cdda";
+ // internal video extensions
+ m_videoExtensions += "|.pvr";
+
m_logLevelHint = m_logLevel = LOG_LEVEL_NORMAL;
+
+ #if defined(TARGET_DARWIN)
+ CStdString logDir = getenv("HOME");
+ logDir += "/Library/Logs/";
+ m_logFolder = logDir;
+ #else
+ m_logFolder = "special://home/"; // log file location
+ #endif
+
+ m_userAgent = g_sysinfo.GetUserAgent();
}
bool CAdvancedSettings::Load()
// picture extensions
TiXmlElement* pExts = pRootElement->FirstChildElement("pictureextensions");
if (pExts)
- GetCustomExtensions(pExts,g_settings.m_pictureExtensions);
+ GetCustomExtensions(pExts, m_pictureExtensions);
// music extensions
pExts = pRootElement->FirstChildElement("musicextensions");
if (pExts)
- GetCustomExtensions(pExts,g_settings.m_musicExtensions);
+ GetCustomExtensions(pExts, m_musicExtensions);
// video extensions
pExts = pRootElement->FirstChildElement("videoextensions");
if (pExts)
- GetCustomExtensions(pExts,g_settings.m_videoExtensions);
+ GetCustomExtensions(pExts, m_videoExtensions);
// stub extensions
pExts = pRootElement->FirstChildElement("discstubextensions");
if (pExts)
- GetCustomExtensions(pExts,g_settings.m_discStubExtensions);
+ GetCustomExtensions(pExts, m_discStubExtensions);
+
+ // Add the list of disc stub extensions (if any) to the list of video extensions
+ if (!m_discStubExtensions.IsEmpty())
+ m_videoExtensions += "|" + m_discStubExtensions;
m_vecTokens.clear();
CLangInfo::LoadTokens(pRootElement->FirstChild("sorttokens"),m_vecTokens);
// TODO: Should cache path be given in terms of our predefined paths??
// Are we even going to have predefined paths??
- CSettings::GetPath(pRootElement, "cachepath", m_cachePath);
+ CStdString tmp;
+ if (XMLUtils::GetPath(pRootElement, "cachepath", tmp))
+ m_cachePath = tmp;
URIUtils::AddSlashAtEnd(m_cachePath);
g_LangCodeExpander.LoadUserCodes(pRootElement->FirstChildElement("languagecodes"));
m_audioExcludeFromScanRegExps.clear();
m_audioExcludeFromListingRegExps.clear();
m_pictureExcludeFromListingRegExps.clear();
+
+ m_pictureExtensions.clear();
+ m_musicExtensions.clear();
+ m_videoExtensions.clear();
+ m_discStubExtensions.clear();
+
+ m_logFolder.clear();
+ m_userAgent.clear();
}
void CAdvancedSettings::GetCustomTVRegexps(TiXmlElement *pRootElement, SETTINGS_TVSHOWLIST& settings)
void CAdvancedSettings::GetCustomExtensions(TiXmlElement *pRootElement, CStdString& extensions)
{
CStdString extraExtensions;
- CSettings::GetString(pRootElement,"add",extraExtensions,"");
- if (extraExtensions != "")
+ if (XMLUtils::GetString(pRootElement, "add", extraExtensions) && !extraExtensions.empty())
extensions += "|" + extraExtensions;
- CSettings::GetString(pRootElement,"remove",extraExtensions,"");
- if (extraExtensions != "")
+ if (XMLUtils::GetString(pRootElement, "remove", extraExtensions) && !extraExtensions.empty())
{
CStdStringArray exts;
StringUtils::SplitString(extraExtensions,"|",exts);
bool m_initialized;
void SetDebugMode(bool debug);
+
+ // runtime settings which cannot be set from advancedsettings.xml
+ CStdString m_pictureExtensions;
+ CStdString m_musicExtensions;
+ CStdString m_videoExtensions;
+ CStdString m_discStubExtensions;
+
+ CStdString m_logFolder;
+
+ CStdString m_userAgent;
};
XBMC_GLOBAL(CAdvancedSettings,g_advancedSettings);
#include "settings/GUISettings.h"
#include "threads/SingleLock.h"
#include "utils/log.h"
-#include "utils/SystemInfo.h"
#include "utils/XMLUtils.h"
using namespace std;
m_fVolumeLevel = 1.0f;
m_bMute = false;
- m_pictureExtensions = ".png|.jpg|.jpeg|.bmp|.gif|.ico|.tif|.tiff|.tga|.pcx|.cbz|.zip|.cbr|.rar|.m3u|.dng|.nef|.cr2|.crw|.orf|.arw|.erf|.3fr|.dcr|.x3f|.mef|.raf|.mrw|.pef|.sr2|.rss";
- m_musicExtensions = ".nsv|.m4a|.flac|.aac|.strm|.pls|.rm|.rma|.mpa|.wav|.wma|.ogg|.mp3|.mp2|.m3u|.mod|.amf|.669|.dmf|.dsm|.far|.gdm|.imf|.it|.m15|.med|.okt|.s3m|.stm|.sfx|.ult|.uni|.xm|.sid|.ac3|.dts|.cue|.aif|.aiff|.wpl|.ape|.mac|.mpc|.mp+|.mpp|.shn|.zip|.rar|.wv|.nsf|.spc|.gym|.adx|.dsp|.adp|.ymf|.ast|.afc|.hps|.xsp|.xwav|.waa|.wvs|.wam|.gcm|.idsp|.mpdsp|.mss|.spt|.rsd|.mid|.kar|.sap|.cmc|.cmr|.dmc|.mpt|.mpd|.rmt|.tmc|.tm8|.tm2|.oga|.url|.pxml|.tta|.rss|.cm3|.cms|.dlt|.brstm|.wtv|.mka";
- m_videoExtensions = ".m4v|.3g2|.3gp|.nsv|.tp|.ts|.ty|.strm|.pls|.rm|.rmvb|.m3u|.m3u8|.ifo|.mov|.qt|.divx|.xvid|.bivx|.vob|.nrg|.img|.iso|.pva|.wmv|.asf|.asx|.ogm|.m2v|.avi|.bin|.dat|.mpg|.mpeg|.mp4|.mkv|.avc|.vp3|.svq3|.nuv|.viv|.dv|.fli|.flv|.rar|.001|.wpl|.zip|.vdr|.dvr-ms|.xsp|.mts|.m2t|.m2ts|.evo|.ogv|.sdp|.avs|.rec|.url|.pxml|.vc1|.h264|.rcv|.rss|.mpls|.webm|.bdmv|.wtv";
- m_discStubExtensions = ".disc";
- // internal music extensions
- m_musicExtensions += "|.sidstream|.oggstream|.nsfstream|.asapstream|.cdda";
- // internal video extensions
- m_videoExtensions += "|.pvr";
-
- #if defined(TARGET_DARWIN)
- CStdString logDir = getenv("HOME");
- logDir += "/Library/Logs/";
- m_logFolder = logDir;
- #else
- m_logFolder = "special://home/"; // log file location
- #endif
-
iAdditionalSubtitleDirectoryChecked = 0;
m_iMyMusicStartWindow = WINDOW_MUSIC_FILES;
m_iVideoStartWindow = WINDOW_VIDEO_FILES;
m_iSystemTimeTotalUp = 0;
- m_userAgent = g_sysinfo.GetUserAgent();
-
m_musicNeedsUpdate = 0;
m_videoNeedsUpdate = 0;
}
Clear();
}
-
void CSettings::Save() const
{
if (!SaveSettings(CProfilesManager::Get().GetSettingsFile()))
void CSettings::Clear()
{
- m_pictureExtensions.clear();
- m_musicExtensions.clear();
- m_videoExtensions.clear();
- m_discStubExtensions.clear();
-
- m_logFolder.clear();
- m_userAgent.clear();
-
m_defaultMusicLibSource.clear();
OnSettingsCleared();
void Clear();
- CStdString m_pictureExtensions;
- CStdString m_musicExtensions;
- CStdString m_videoExtensions;
- CStdString m_discStubExtensions;
-
- CStdString m_logFolder;
-
bool m_bMyMusicSongInfoInVis;
bool m_bMyMusicSongThumbInVis;
bool m_bMyMusicPlaylistRepeat;
bool m_bMute;
int m_iSystemTimeTotalUp; // Uptime in minutes!
- CStdString m_userAgent;
-
CStdString m_defaultMusicLibSource;
int m_musicNeedsUpdate; ///< if a database update means an update is required (set to the version number of the db)
#if defined(TARGET_DARWIN)
#include "osx/CocoaInterface.h"
#endif
-#include "settings/Settings.h"
+#include "settings/AdvancedSettings.h"
#include "guilib/LocalizeStrings.h"
#include "guilib/GUIRSSControl.h"
#include "utils/TimeUtils.h"
m_strColors[iFeed] = "";
CCurlFile http;
- http.SetUserAgent(g_settings.m_userAgent);
+ http.SetUserAgent(g_advancedSettings.m_userAgent);
http.SetTimeout(2);
CStdString strXML;
CStdString strUrl = m_vecUrls[iFeed];
#include "filesystem/SpecialProtocol.h"
#include "filesystem/StackDirectory.h"
#include "network/DNSNameCache.h"
-#include "settings/Settings.h"
#include "settings/AdvancedSettings.h"
#include "URL.h"
#include "StringUtils.h"
strExtension += "|";
CStdString strFileMask;
- strFileMask = g_settings.m_pictureExtensions;
- strFileMask += "|" + g_settings.m_musicExtensions;
- strFileMask += "|" + g_settings.m_videoExtensions;
+ strFileMask = g_advancedSettings.m_pictureExtensions;
+ strFileMask += "|" + g_advancedSettings.m_musicExtensions;
+ strFileMask += "|" + g_advancedSettings.m_videoExtensions;
#if defined(TARGET_DARWIN)
strFileMask += "|.py|.xml|.milk|.xpr|.xbt|.cdg|.app|.applescript|.workflow";
#else
CSingleLock waitLock(critSec);
if (!m_file)
{
- // g_settings.m_logFolder is initialized in the CSettings constructor
+ // g_advancedSettings.m_logFolder is initialized in the CSettings constructor
// and changed in CApplication::Create()
CStdString strLogFile, strLogFileOld;
CStdString CGUIViewStateWindowVideo::GetExtensions()
{
- return g_settings.m_videoExtensions;
+ return g_advancedSettings.m_videoExtensions;
}
int CGUIViewStateWindowVideo::GetPlaylist()
#include "interfaces/AnnouncementManager.h"
#include "settings/AdvancedSettings.h"
#include "settings/GUISettings.h"
-#include "settings/Settings.h"
#include "utils/StringUtils.h"
#include "guilib/LocalizeStrings.h"
#include "guilib/GUIWindowManager.h"
}
if (!bSkip)
{ // need to fetch the folder
- CDirectory::GetDirectory(strDirectory, items, g_settings.m_videoExtensions);
+ CDirectory::GetDirectory(strDirectory, items, g_advancedSettings.m_videoExtensions);
items.Stack();
// compute hash
GetPathHash(items, hash);
if (foundDirectly && !settings.parent_name_root)
{
- CDirectory::GetDirectory(strDirectory, items, g_settings.m_videoExtensions);
+ CDirectory::GetDirectory(strDirectory, items, g_advancedSettings.m_videoExtensions);
items.SetPath(strDirectory);
GetPathHash(items, hash);
bSkip = true;
if (item->m_bIsFolder)
{
- CUtil::GetRecursiveListing(item->GetPath(), items, g_settings.m_videoExtensions, true);
+ CUtil::GetRecursiveListing(item->GetPath(), items, g_advancedSettings.m_videoExtensions, true);
CStdString hash, dbHash;
int numFilesInFolder = GetPathHash(items, hash);
if (item.m_bIsFolder && scraper && scraper->Content() != CONTENT_TVSHOWS)
{
CFileItemList items;
- CDirectory::GetDirectory(item.GetPath(), items, g_settings.m_videoExtensions);
+ CDirectory::GetDirectory(item.GetPath(), items, g_advancedSettings.m_videoExtensions);
items.Stack();
// check for media files
#include "GUIWindowDebugInfo.h"
#include "input/MouseStat.h"
#include "settings/AdvancedSettings.h"
-#include "settings/Settings.h"
#include "addons/Skin.h"
#include "utils/CPUInfo.h"
#include "utils/log.h"
CStdString profiling = CGUIControlProfiler::IsRunning() ? " (profiling)" : "";
CStdString strCores = g_cpuInfo.GetCoresUsageString();
#if !defined(_LINUX)
- info.Format("LOG: %sxbmc.log\nMEM: %"PRIu64"/%"PRIu64" KB - FPS: %2.1f fps\nCPU: %s%s", g_settings.m_logFolder.c_str(),
+ info.Format("LOG: %sxbmc.log\nMEM: %"PRIu64"/%"PRIu64" KB - FPS: %2.1f fps\nCPU: %s%s", g_advancedSettings.m_logFolder.c_str(),
stat.ullAvailPhys/1024, stat.ullTotalPhys/1024, g_infoManager.GetFPS(), strCores.c_str(), profiling.c_str());
#else
double dCPU = m_resourceCounter.GetCPUUsage();
- info.Format("LOG: %sxbmc.log\nMEM: %"PRIu64"/%"PRIu64" KB - FPS: %2.1f fps\nCPU: %s (CPU-XBMC %4.2f%%%s)", g_settings.m_logFolder.c_str(),
+ info.Format("LOG: %sxbmc.log\nMEM: %"PRIu64"/%"PRIu64" KB - FPS: %2.1f fps\nCPU: %s (CPU-XBMC %4.2f%%%s)", g_advancedSettings.m_logFolder.c_str(),
stat.ullAvailPhys/1024, stat.ullTotalPhys/1024, g_infoManager.GetFPS(), strCores.c_str(), dCPU, profiling.c_str());
#endif
}