Merge pull request #4804 from jmarshallnz/constantly_repeating
[vuplus_xbmc] / xbmc / guilib / GUIIncludes.cpp
index e066df5..c30d749 100644 (file)
@@ -46,15 +46,18 @@ CGUIIncludes::CGUIIncludes()
   m_constantAttributes.insert("end");
   m_constantAttributes.insert("center");
   m_constantAttributes.insert("border");
+  m_constantAttributes.insert("repeat");
   
   m_constantNodes.insert("posx");
   m_constantNodes.insert("posy");
   m_constantNodes.insert("left");
+  m_constantNodes.insert("centerleft");
   m_constantNodes.insert("right");
-  m_constantNodes.insert("centerx");
+  m_constantNodes.insert("centerright");
   m_constantNodes.insert("top");
+  m_constantNodes.insert("centertop");
   m_constantNodes.insert("bottom");
-  m_constantNodes.insert("centery");
+  m_constantNodes.insert("centerbottom");
   m_constantNodes.insert("width");
   m_constantNodes.insert("height");
   m_constantNodes.insert("offsetx");
@@ -180,7 +183,7 @@ bool CGUIIncludes::HasIncludeFile(const CStdString &file) const
   return false;
 }
 
-void CGUIIncludes::ResolveIncludes(TiXmlElement *node, std::map<int, bool>* xmlIncludeConditions /* = NULL */)
+void CGUIIncludes::ResolveIncludes(TiXmlElement *node, std::map<INFO::InfoPtr, bool>* xmlIncludeConditions /* = NULL */)
 {
   if (!node)
     return;
@@ -194,7 +197,7 @@ void CGUIIncludes::ResolveIncludes(TiXmlElement *node, std::map<int, bool>* xmlI
   }
 }
 
-void CGUIIncludes::ResolveIncludesForNode(TiXmlElement *node, std::map<int, bool>* xmlIncludeConditions /* = NULL */)
+void CGUIIncludes::ResolveIncludesForNode(TiXmlElement *node, std::map<INFO::InfoPtr, bool>* xmlIncludeConditions /* = NULL */)
 {
   // we have a node, find any <include file="fileName">tagName</include> tags and replace
   // recursively with their real includes
@@ -218,9 +221,9 @@ void CGUIIncludes::ResolveIncludesForNode(TiXmlElement *node, std::map<int, bool
       {
         std::string value = tag->ValueStr();
         bool skip(false);
-        if (hasPosX && (value == "left" || value == "right" || value == "centerx"))
+        if (hasPosX && (value == "left" || value == "right" || value == "centerleft" || value == "centerright"))
           skip = true;
-        if (hasPosY && (value == "top" || value == "bottom" || value == "centery"))
+        if (hasPosY && (value == "top" || value == "bottom" || value == "centertop" || value == "centerbottom"))
           skip = true;
         // we insert at the end of block
         if (!skip)
@@ -242,8 +245,8 @@ void CGUIIncludes::ResolveIncludesForNode(TiXmlElement *node, std::map<int, bool
     const char *condition = include->Attribute("condition");
     if (condition)
     { // check this condition
-      int conditionID = g_infoManager.Register(condition);
-      bool value = g_infoManager.GetBoolValue(conditionID);
+      INFO::InfoPtr conditionID = g_infoManager.Register(condition);
+      bool value = conditionID->Get();
 
       if (xmlIncludeConditions)
         (*xmlIncludeConditions)[conditionID] = value;