diff options
author | louis <louis.braun@gmx.de> | 2015-03-28 11:57:51 +0100 |
---|---|---|
committer | louis <louis.braun@gmx.de> | 2015-03-28 11:57:51 +0100 |
commit | 762e2c15076d211e71eb9dee0e4956dbd8767fce (patch) | |
tree | 41bbc078335c4ecdd3e6b13dd77f4479f506ebd8 /libtemplate | |
parent | fcf90375fa516455cf7bda4bc791c814b5062d69 (diff) | |
download | vdr-plugin-skindesigner-762e2c15076d211e71eb9dee0e4956dbd8767fce.tar.gz vdr-plugin-skindesigner-762e2c15076d211e71eb9dee0e4956dbd8767fce.tar.bz2 |
added possibility to detach viewelements
Diffstat (limited to 'libtemplate')
-rw-r--r-- | libtemplate/templatefunction.c | 15 | ||||
-rw-r--r-- | libtemplate/templatefunction.h | 2 | ||||
-rw-r--r-- | libtemplate/templatepixmap.c | 3 | ||||
-rw-r--r-- | libtemplate/templatepixmap.h | 2 | ||||
-rw-r--r-- | libtemplate/templateview.c | 1 |
5 files changed, 23 insertions, 0 deletions
diff --git a/libtemplate/templatefunction.c b/libtemplate/templatefunction.c index 8ea8917..5e72948 100644 --- a/libtemplate/templatefunction.c +++ b/libtemplate/templatefunction.c @@ -83,6 +83,8 @@ void cTemplateFunction::SetParameters(vector<pair<string, string> > params) { p.first = ptLayer;
} else if (!name.compare("transparency")) {
p.first = ptTransparency;
+ } else if (!name.compare("background")) {
+ p.first = ptBackground;
} else if (!name.compare("quadrant")) {
p.first = ptQuadrant;
} else if (!name.compare("type")) {
@@ -271,6 +273,9 @@ bool cTemplateFunction::CalculateParameters(void) { case ptDetached:
paramValid = SetDetached(value);
break;
+ case ptBackground:
+ paramValid = SetBackground(value);
+ break;
default:
paramValid = true;
break;
@@ -413,6 +418,8 @@ int cTemplateFunction::GetNumericParameter(eParamType type) { return 0;
else if (type == ptDetached)
return 0;
+ else if (type == ptBackground)
+ return 0;
return -1;
}
return hit->second;
@@ -1077,6 +1084,14 @@ bool cTemplateFunction::SetDetached(string value) { return true;
}
+bool cTemplateFunction::SetBackground(string value) {
+ int back = 0;
+ if (!value.compare("true"))
+ back = 1;
+ numericParameters.insert(pair<eParamType, int>(ptBackground, back));
+ return true;
+}
+
void cTemplateFunction::ParseStringParameters(void) {
//first replace stringtokens in Text (drawText)
stringstream text;
diff --git a/libtemplate/templatefunction.h b/libtemplate/templatefunction.h index e53dbda..a862aa7 100644 --- a/libtemplate/templatefunction.h +++ b/libtemplate/templatefunction.h @@ -56,6 +56,7 @@ enum eParamType { ptText, ptLayer, ptTransparency, + ptBackground, ptQuadrant, ptType, ptAlign, @@ -154,6 +155,7 @@ protected: bool SetOverflow(string value); bool SetHideRoot(string value); bool SetDetached(string value); + bool SetBackground(string value); void ParseStringParameters(void); void ParseNumericalParameters(void); void CalculateAlign(int elementWidth, int elementHeight); diff --git a/libtemplate/templatepixmap.c b/libtemplate/templatepixmap.c index 52ae63f..1490236 100644 --- a/libtemplate/templatepixmap.c +++ b/libtemplate/templatepixmap.c @@ -12,6 +12,7 @@ cTemplatePixmap::cTemplatePixmap(void) { containerHeight = 0;
globals = NULL;
scrolling = false;
+ background = false;
}
cTemplatePixmap::~cTemplatePixmap() {
@@ -171,6 +172,8 @@ bool cTemplatePixmap::CalculateParameters(void) { }
}
+ background = parameters->GetNumericParameter(ptBackground);
+
return paramsValid;
}
diff --git a/libtemplate/templatepixmap.h b/libtemplate/templatepixmap.h index 17bf7d3..a5d8f83 100644 --- a/libtemplate/templatepixmap.h +++ b/libtemplate/templatepixmap.h @@ -21,6 +21,7 @@ using namespace std; class cTemplatePixmap { protected: bool scrolling; + bool background; cTemplateFunction *parameters; vector<cTemplateFunction*> functions; vector<cTemplateFunction*>::iterator funcIt; @@ -76,6 +77,7 @@ public: bool DoExecute(void) { return parameters->DoExecute(); }; bool DoDebug(void) { return parameters->DoDebug(); }; bool Ready(void); + bool BackgroundArea(void) { return background; }; //Traverse Functions void InitIterator(void); cTemplateFunction *GetNextFunction(void); diff --git a/libtemplate/templateview.c b/libtemplate/templateview.c index 5677a31..1383ed2 100644 --- a/libtemplate/templateview.c +++ b/libtemplate/templateview.c @@ -638,6 +638,7 @@ void cTemplateView::SetFunctionDefinitions(void) { attributes.insert("height"); attributes.insert("layer"); attributes.insert("transparency"); + attributes.insert("background"); funcsAllowed.insert(pair< string, set<string> >(name, attributes)); name = "areascroll"; |