Add support for persistent variables in theme's <variables> section

* Add support for variables with persist="1", which will cause
  them saved into settings file and reloaded on next boot.
* This is handy for theme makers, who can use this to
  implement "theme settings".

Signed-off-by: Vojtech Bocek <vbocek@gmail.com>

Change-Id: I6415979011b38cbb15dec9909c445b02da6eadc0
diff --git a/gui/pages.cpp b/gui/pages.cpp
index d02dd21..d662f18 100644
--- a/gui/pages.cpp
+++ b/gui/pages.cpp
@@ -611,16 +611,21 @@
 int PageSet::LoadVariables(xml_node<>* vars)
 {
 	xml_node<>* child;
+	xml_attribute<> *name, *value, *persist;
+	int p;
 
 	child = vars->first_node("variable");
 	while (child)
 	{
-		if (!child->first_attribute("name"))
-			break;
-		if (!child->first_attribute("value"))
-			break;
+		name = child->first_attribute("name");
+		value = child->first_attribute("value");
+		persist = child->first_attribute("persist");
+		if(name && value)
+		{
+			p = persist ? atoi(persist->value()) : 0;
+			DataManager::SetValue(name->value(), value->value(), p);
+		}
 
-		DataManager::SetValue(child->first_attribute("name")->value(), child->first_attribute("value")->value());
 		child = child->next_sibling("variable");
 	}
 	return 0;