added possibility to draw a debug grid in views

This commit is contained in:
louis
2015-04-11 16:21:33 +02:00
parent 5146f15e44
commit 6872e29fe6
23 changed files with 172 additions and 2 deletions

View File

@@ -49,6 +49,10 @@ void cTemplateFunction::SetParameters(vector<pair<string, string> > params) {
debug = true;
}
continue;
} else if (!name.compare("debuggrid")) {
string value = it->second;
SetDebugGrid(value);
continue;
} else if (!name.compare("condition")) {
p.first = ptCond;
} else if (!name.compare("name")) {
@@ -429,6 +433,8 @@ int cTemplateFunction::GetNumericParameter(eParamType type) {
return 0;
else if (type == ptBackground)
return 0;
else if (type == ptDrawDebugGrid)
return 0;
else if (type == ptDirection)
return diBottomUp;
return -1;
@@ -1119,6 +1125,25 @@ bool cTemplateFunction::SetDirection(string value) {
return true;
}
void cTemplateFunction::SetDebugGrid(string value) {
int numGridsX = 0;
int numGridsY = 0;
size_t posSep = value.find("x");
if (posSep != string::npos) {
string x = value.substr(0, posSep);
string y = value.substr(posSep+1);
numGridsX = atoi(x.c_str());
numGridsY = atoi(y.c_str());
}
if (numGridsX < 1)
numGridsX = 10;
if (numGridsY < 1)
numGridsY = 10;
numericParameters.insert(pair<eParamType, int>(ptDebugGridX, numGridsX));
numericParameters.insert(pair<eParamType, int>(ptDebugGridY, numGridsY));
numericParameters.insert(pair<eParamType, int>(ptDrawDebugGrid, 1));
}
void cTemplateFunction::ParseStringParameters(void) {
//first replace stringtokens in Text (drawText)
stringstream text;

View File

@@ -41,6 +41,9 @@ enum eParamType {
ptCond,
ptName,
ptMode,
ptDrawDebugGrid,
ptDebugGridX,
ptDebugGridY,
ptX,
ptY,
ptWidth,
@@ -165,6 +168,7 @@ protected:
bool SetDetached(string value);
bool SetBackground(string value);
bool SetDirection(string value);
void SetDebugGrid(string value);
void ParseStringParameters(void);
void ParseNumericalParameters(void);
void CalculateAlign(int elementWidth, int elementHeight);

View File

@@ -212,6 +212,41 @@ bool cTemplateView::HideView(void) {
return parameters->GetNumericParameter(ptHideRoot);
}
bool cTemplateView::DrawGebugGrid(void) {
if (!parameters)
return false;
return parameters->GetNumericParameter(ptDrawDebugGrid);
}
int cTemplateView::DebugGridX(void) {
if (!parameters)
return 0;
return parameters->GetNumericParameter(ptDebugGridX);
}
int cTemplateView::DebugGridY(void) {
if (!parameters)
return 0;
return parameters->GetNumericParameter(ptDebugGridY);
}
tColor cTemplateView::DebugGridColor(void) {
tColor col = 0xFFFF0000;
if (!globals)
return col;
string colName = "{clrDebugGrid}";
globals->GetColor(colName, col);
return col;
}
tColor cTemplateView::DebugGridFontColor(void) {
tColor col = 0xFFFF0000;
if (!globals)
return col;
string colName = "{clrFontDebugGrid}";
globals->GetColor(colName, col);
return col;
}
bool cTemplateView::ExecuteView(eViewElement ve) {
map < eViewElement, cTemplateViewElement* >::iterator hit = viewElements.find(ve);
@@ -829,6 +864,7 @@ cTemplateViewChannel::cTemplateViewChannel(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(viewName, attributes));
SetViewElements();
@@ -995,6 +1031,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("width");
attributes.insert("height");
attributes.insert("fadetime");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(viewName, attributes));
string subViewName = "menudefault";
@@ -1008,7 +1045,8 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvx");
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(subViewName, attributes));
subViewName = "menumain";
@@ -1023,6 +1061,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(subViewName, attributes));
subViewName = "menusetup";
@@ -1037,6 +1076,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(subViewName, attributes));
subViewName = "menuschedules";
@@ -1051,6 +1091,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(subViewName, attributes));
subViewName = "menuchannels";
@@ -1065,6 +1106,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(subViewName, attributes));
subViewName = "menutimers";
@@ -1079,6 +1121,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(subViewName, attributes));
subViewName = "menurecordings";
@@ -1093,6 +1136,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(subViewName, attributes));
subViewName = "menudetailedepg";
@@ -1107,6 +1151,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(subViewName, attributes));
subViewName = "menudetailedrecording";
@@ -1121,6 +1166,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(subViewName, attributes));
subViewName = "menudetailedtext";
@@ -1135,6 +1181,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(subViewName, attributes));
//definition of allowed parameters for menuitems viewlist
@@ -1182,6 +1229,7 @@ cTemplateViewMenu::cTemplateViewMenu(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >("menuplugin", attributes));
SetSubViews();
@@ -1516,6 +1564,7 @@ cTemplateViewMessage::cTemplateViewMessage(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(viewName, attributes));
SetViewElements();
@@ -1590,6 +1639,7 @@ cTemplateViewReplay::cTemplateViewReplay(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(viewName, attributes));
//definition of allowed parameters for onpause and onpausemodeonly viewelement
@@ -1772,6 +1822,7 @@ cTemplateViewVolume::cTemplateViewVolume(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(viewName, attributes));
SetViewElements();
@@ -1846,6 +1897,7 @@ cTemplateViewAudioTracks::cTemplateViewAudioTracks(void) {
attributes.insert("scaletvy");
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(viewName, attributes));
//definition of allowed parameters for menuitems viewlist
@@ -1968,6 +2020,7 @@ cTemplateViewPlugin::cTemplateViewPlugin(string pluginName, int viewID) {
attributes.insert("scaletvwidth");
attributes.insert("scaletvheight");
attributes.insert("hideroot");
attributes.insert("debuggrid");
funcsAllowed.insert(pair< string, set<string> >(viewName, attributes));
//definition of allowed parameters for viewtab

View File

@@ -112,6 +112,11 @@ public:
cRect GetOsdSize(void);
int GetNumPixmaps(void);
int GetNumPixmapsViewElement(eViewElement ve);
bool DrawGebugGrid(void);
int DebugGridX(void);
int DebugGridY(void);
tColor DebugGridColor(void);
tColor DebugGridFontColor(void);
bool HideView(void);
bool ExecuteView(eViewElement ve);
bool DetachViewElement(eViewElement ve);