<setting id="lookandfeel.rssedit" type="string" label="21450" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<dependencies>
<dependency type="enable" setting="lookandfeel.enablerssfeeds">true</dependency>
</dependencies>
<level>0</level>
<default>screensaver.xbmc.builtin.dim</default>
<addontype>xbmc.ui.screensaver</addontype>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<updates>
<update type="change" />
</updates>
<setting id="subtitles.custompath" type="path" label="21366" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
<heading>657</heading>
<constraints>
+ <allowempty>true</allowempty>
<writable>false</writable>
<sources>
<source>videos</source>
<setting id="pvrmenu.iconpath" type="path" label="19018" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
<heading>657</heading>
<constraints>
+ <allowempty>true</allowempty>
<writable>false</writable>
</constraints>
<control type="button" format="path" />
<setting id="pvrpowermanagement.setwakeupcmd" type="string" label="19245" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<control type="edit" format="string" />
</setting>
<setting id="pvrpowermanagement.prewakeup" type="integer" label="19246" help="">
<setting id="pvrparental.pin" type="string" label="19261" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<dependencies>
<dependency type="enable" setting="pvrparental.enabled">true</dependency>
</dependencies>
<level>0</level>
<default>visualization.glspectrum</default>
<addontype>xbmc.player.musicviz</addontype>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
</setting>
</group>
</category>
<setting id="musicfiles.nowplayingtrackformat" type="string" label="13307" help="">
<level>4</level>
<default></default>
- <allowempty>true</allowempty>
<heading>16016</heading>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<control type="edit" format="string" />
</setting>
<setting id="musicfiles.nowplayingtrackformatright" type="string" label="13387" help="">
<level>4</level>
<default></default>
- <allowempty>true</allowempty>
<heading>16016</heading>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<control type="edit" format="string" />
</setting>
<setting id="musicfiles.librarytrackformat" type="string" label="13307" help="">
<level>4</level>
<default></default>
- <allowempty>true</allowempty>
<heading>16016</heading>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<control type="edit" format="string" />
</setting>
<setting id="musicfiles.librarytrackformatright" type="string" label="13387" help="">
<level>4</level>
<default></default>
- <allowempty>true</allowempty>
<heading>16016</heading>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<control type="edit" format="string" />
</setting>
<setting id="musicfiles.findremotethumbs" type="boolean" label="14059" help="">
<setting id="audiocds.recordingpath" type="path" label="20000" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
<heading>657</heading>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<control type="button" format="path" />
</setting>
<setting id="audiocds.trackpathformat" type="string" label="13307" help="">
<setting id="mymusic.defaultlibview" type="string" label="0" help="">
<level>4</level>
<default></default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
</setting>
</group>
</category>
<level>0</level>
<default>weather.wunderground</default>
<addontype>xbmc.python.weather</addontype>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
</setting>
<setting id="weather.addonsettings" type="action" label="21417" help="">
<level>0</level>
<setting id="services.webserverusername" type="string" label="1048" help="">
<level>2</level>
<default>xbmc</default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<dependencies>
<dependency type="enable" setting="services.webserver">true</dependency>
</dependencies>
<setting id="services.webserverpassword" type="string" label="733" help="">
<level>2</level>
<default></default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<dependencies>
<dependency type="enable" setting="services.webserver">true</dependency>
</dependencies>
<setting id="services.airplaypassword" type="string" label="733" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<dependencies>
<dependency type="enable" setting="services.useairplaypassword">true</dependency>
</dependencies>
<setting id="network.httpproxyserver" type="string" label="706" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<dependencies>
<dependency type="enable" setting="network.usehttpproxy">true</dependency>
</dependencies>
<setting id="network.httpproxyusername" type="string" label="1048" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<dependencies>
<dependency type="enable" setting="network.usehttpproxy">true</dependency>
</dependencies>
<setting id="network.httpproxypassword" type="string" label="733" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<dependencies>
<dependency type="enable" setting="network.usehttpproxy">true</dependency>
</dependencies>
<setting id="debug.screenshotpath" type="path" label="20004" help="">
<level>1</level>
<default></default>
- <allowempty>true</allowempty>
<heading>657</heading>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
<control type="button" format="path" />
</setting>
</group>
<setting id="system.playlistspath" type="path" label="20006" help="">
<level>4</level>
<default></default>
- <allowempty>true</allowempty>
+ <constraints>
+ <allowempty>true</allowempty>
+ </constraints>
</setting>
</group>
</category>
CLog::Log(LOGERROR, "CSettingString: invalid <control> of \"%s\"", m_id.c_str());
return false;
}
-
- // get allowempty (needs to be parsed before parsing the default value)
- XMLUtils::GetBoolean(node, "allowempty", m_allowEmpty);
// get heading
XMLUtils::GetInt(node, "heading", m_heading);
-
- // get the default value
- CStdString value;
- if (XMLUtils::GetString(node, XML_ELM_DEFAULT, value))
- m_value = m_default = value;
- else if (!update && !m_allowEmpty)
- {
- CLog::Log(LOGERROR, "CSettingString: error reading the default value of \"%s\"", m_id.c_str());
- return false;
- }
const TiXmlNode *constraints = node->FirstChild(XML_ELM_CONSTRAINTS);
if (constraints != NULL)
{
+ // get allowempty (needs to be parsed before parsing the default value)
+ XMLUtils::GetBoolean(constraints, "allowempty", m_allowEmpty);
+
// get the entries
const TiXmlNode *options = constraints->FirstChild(XML_ELM_OPTIONS);
if (options != NULL && options->FirstChild() != NULL &&
m_optionsFiller = options->FirstChild()->ValueStr();
}
+ // get the default value
+ CStdString value;
+ if (XMLUtils::GetString(node, XML_ELM_DEFAULT, value))
+ m_value = m_default = value;
+ else if (!update && !m_allowEmpty)
+ {
+ CLog::Log(LOGERROR, "CSettingString: error reading the default value of \"%s\"", m_id.c_str());
+ return false;
+ }
+
return true;
}