mirror of
https://projects.vdr-developer.org/git/vdr-plugin-skindesigner.git
synced 2023-10-19 17:58:31 +02:00
added weather viewelement to metrix main menu
This commit is contained in:
parent
645f625d79
commit
3de7f8f13d
@ -75,6 +75,11 @@
|
|||||||
debug CDATA #IMPLIED
|
debug CDATA #IMPLIED
|
||||||
>
|
>
|
||||||
|
|
||||||
|
<!ELEMENT currentweather (area|areascroll)*>
|
||||||
|
<!ATTLIST currentweather
|
||||||
|
debug CDATA #IMPLIED
|
||||||
|
>
|
||||||
|
|
||||||
<!ELEMENT customtokens (area|areascroll)*>
|
<!ELEMENT customtokens (area|areascroll)*>
|
||||||
<!ATTLIST customtokens
|
<!ATTLIST customtokens
|
||||||
debug CDATA #IMPLIED
|
debug CDATA #IMPLIED
|
||||||
@ -109,7 +114,7 @@
|
|||||||
>
|
>
|
||||||
|
|
||||||
<!ELEMENT menumain (background | header | datetime | time | colorbuttons | scrollbar | timers |
|
<!ELEMENT menumain (background | header | datetime | time | colorbuttons | scrollbar | timers |
|
||||||
discusage | devices | systemload | temperatures | currentschedule | customtokens | menuitems)*>
|
discusage | devices | systemload | temperatures | currentschedule | currentweather | customtokens | menuitems)*>
|
||||||
<!ATTLIST menumain
|
<!ATTLIST menumain
|
||||||
x CDATA #REQUIRED
|
x CDATA #REQUIRED
|
||||||
y CDATA #REQUIRED
|
y CDATA #REQUIRED
|
||||||
|
@ -381,10 +381,8 @@ void cTemplateView::Translate(void) {
|
|||||||
|
|
||||||
//Translate Plugin Views
|
//Translate Plugin Views
|
||||||
for (map < string, map< int, cTemplateView*> >::iterator it = pluginViews.begin(); it != pluginViews.end(); it++) {
|
for (map < string, map< int, cTemplateView*> >::iterator it = pluginViews.begin(); it != pluginViews.end(); it++) {
|
||||||
esyslog("skindesigner: translating plugin %s", (it->first).c_str());
|
|
||||||
map< int, cTemplateView*> plugViews = it->second;
|
map< int, cTemplateView*> plugViews = it->second;
|
||||||
for (map< int, cTemplateView*>::iterator it2 = plugViews.begin(); it2 != plugViews.end(); it2++) {
|
for (map< int, cTemplateView*>::iterator it2 = plugViews.begin(); it2 != plugViews.end(); it2++) {
|
||||||
esyslog("skindesigner: translating view %d", (int)it2->first);
|
|
||||||
cTemplateView *pluginView = it2->second;
|
cTemplateView *pluginView = it2->second;
|
||||||
pluginView->Translate();
|
pluginView->Translate();
|
||||||
}
|
}
|
||||||
@ -1178,6 +1176,9 @@ string cTemplateViewMenu::GetViewElementName(eViewElement ve) {
|
|||||||
case veCurrentSchedule:
|
case veCurrentSchedule:
|
||||||
name = "Current Schedule";
|
name = "Current Schedule";
|
||||||
break;
|
break;
|
||||||
|
case veCurrentWeather:
|
||||||
|
name = "Current Weather";
|
||||||
|
break;
|
||||||
case veCustomTokens:
|
case veCustomTokens:
|
||||||
name = "Custom Tokens";
|
name = "Custom Tokens";
|
||||||
break;
|
break;
|
||||||
|
@ -270,6 +270,10 @@
|
|||||||
<trans lang="en_EN">max</trans>
|
<trans lang="en_EN">max</trans>
|
||||||
<trans lang="de_DE">max</trans>
|
<trans lang="de_DE">max</trans>
|
||||||
</token>
|
</token>
|
||||||
|
<token name="tr(for)">
|
||||||
|
<trans lang="en_EN">for</trans>
|
||||||
|
<trans lang="de_DE">für</trans>
|
||||||
|
</token>
|
||||||
</translations>
|
</translations>
|
||||||
<!--
|
<!--
|
||||||
The three Fonts FontOSD, FontFix and FontSml configured in VDR
|
The three Fonts FontOSD, FontFix and FontSml configured in VDR
|
||||||
|
@ -175,17 +175,52 @@
|
|||||||
{vdrusagestring} localized VDR internal usage string
|
{vdrusagestring} localized VDR internal usage string
|
||||||
-->
|
-->
|
||||||
<discusage>
|
<discusage>
|
||||||
<area x="75%" y="15%" width="25%" height="10%" layer="1">
|
<area x="75%" y="26%" width="25%" height="10%" layer="1">
|
||||||
<fill condition="not{discalert}" color="{clrTransBlack}"/>
|
<fill condition="not{discalert}" color="{clrTransBlack}"/>
|
||||||
<fill condition="{discalert}" color="{clrRed}"/>
|
<fill condition="{discalert}" color="{clrRed}"/>
|
||||||
</area>
|
</area>
|
||||||
<area x="75%" y="15%" width="25%" height="10%" layer="2">
|
<area x="75%" y="26%" width="25%" height="10%" layer="2">
|
||||||
<drawimage imagetype="icon" path="ico_discusage" x="1%" valign="center" width="{areaheight}*0.9" height="{areaheight}*0.9"/>
|
<drawimage imagetype="icon" path="ico_discusage" x="1%" valign="center" width="{areaheight}*0.9" height="{areaheight}*0.9"/>
|
||||||
<drawtext x="{areaheight}+10" y="0" font="{light}" fontsize="55%" color="{clrWhite}" text="{tr(disc)}: {freepercent}% {tr(free)}" />
|
<drawtext x="{areaheight}+10" y="0" font="{light}" fontsize="55%" color="{clrWhite}" text="{tr(disc)}: {freepercent}% {tr(free)}" />
|
||||||
<drawtext x="{areaheight}+10" y="45%" font="{light}" fontsize="55%" color="{clrWhite}" text="{freetime} {tr(hours)}" />
|
<drawtext x="{areaheight}+10" y="45%" font="{light}" fontsize="55%" color="{clrWhite}" text="{freetime} {tr(hours)}" />
|
||||||
</area>
|
</area>
|
||||||
</discusage>
|
</discusage>
|
||||||
|
|
||||||
|
<!-- Available Variables currentweather:
|
||||||
|
{timestamp} timestamp of forecast in dd.mm hh:mm
|
||||||
|
{temperature} current temperature in °C
|
||||||
|
{apparenttemperature} apparent (feeled) temperature
|
||||||
|
{summary} short weather summary
|
||||||
|
{icon} weather icon
|
||||||
|
{precipitationintensity} precipitation intensity in l/m2
|
||||||
|
{precipitationprobability} precipitation probability in %
|
||||||
|
{precipitationtype} precipitation type
|
||||||
|
{humidity} humidity in %
|
||||||
|
{windspeed} windspeed in km/h
|
||||||
|
{windbearing} wind bearing in °
|
||||||
|
{windbearingstring} wind bearing (N, NE, ...)
|
||||||
|
{visibility} visibility in km
|
||||||
|
{cloudcover} cloud cover in %
|
||||||
|
{pressure} pressure in HPo
|
||||||
|
{ozone} ozone value in DU
|
||||||
|
-->
|
||||||
|
<currentweather>
|
||||||
|
<area x="75%" y="13%" width="25%" height="10%" layer="2">
|
||||||
|
<drawrectangle x="0" y="0" width="53%" height="100%" color="{clrTransBlueLight}" />
|
||||||
|
<drawrectangle x="53%" y="0" width="47%" height="100%" color="{clrTransBlack}" />
|
||||||
|
</area>
|
||||||
|
<area x="75%" y="13%" width="12%" height="10%" layer="2">
|
||||||
|
<drawimage imagetype="icon" path="{icon}" align="center" valign="center" width="{areaheight}*0.9" height="{areaheight}*0.9"/>
|
||||||
|
</area>
|
||||||
|
<area x="89%" y="13%" width="10%" height="10%" layer="2">
|
||||||
|
<drawtext x="0" y="0" font="{light}" fontsize="25%" color="{clrWhite}" text="{mintemperature}°C" />
|
||||||
|
<drawtext x="0" y="75%" font="{light}" fontsize="25%" color="{clrWhite}" text="{maxtemperature}°C" />
|
||||||
|
</area>
|
||||||
|
<area x="89%" y="13%" width="10%" height="10%" layer="3">
|
||||||
|
<drawtext align="right" valign="center" font="{light}" fontsize="60%" color="{clrWhite}" text="{temperature}°C" />
|
||||||
|
</area>
|
||||||
|
</currentweather>
|
||||||
|
|
||||||
<!-- Available Variables devices:
|
<!-- Available Variables devices:
|
||||||
{numdevices} number of available devices
|
{numdevices} number of available devices
|
||||||
{devices[]} array with available devices
|
{devices[]} array with available devices
|
||||||
@ -204,10 +239,10 @@
|
|||||||
{devices[source]} source of the currently tuned channel
|
{devices[source]} source of the currently tuned channel
|
||||||
-->
|
-->
|
||||||
<devices>
|
<devices>
|
||||||
<area x="75%" y="40%" width="25%" height="{areaheight}/12 * {numdevices}" layer="1">
|
<area x="75%" y="48%" width="25%" height="{areaheight}/12 * {numdevices}" layer="1">
|
||||||
<fill color="{clrTransBlack}"/>
|
<fill color="{clrTransBlack}"/>
|
||||||
</area>
|
</area>
|
||||||
<area x="75%" y="40%" width="25%" height="{areaheight}/12 * {numdevices}" layer="2">
|
<area x="75%" y="48%" width="25%" height="{areaheight}/12 * {numdevices}" layer="2">
|
||||||
<loop name="devices" x="0" y="0" orientation="vertical" columnwidth="{areawidth}" rowheight="{areaheight} / {numdevices}" overflow="cut">
|
<loop name="devices" x="0" y="0" orientation="vertical" columnwidth="{areawidth}" rowheight="{areaheight} / {numdevices}" overflow="cut">
|
||||||
<drawtext name="label" x="5" y="0" font="{light}" fontsize="{rowheight}*0.4" color="{clrWhite}" text="{devices[num]}: {devices[type]}" />
|
<drawtext name="label" x="5" y="0" font="{light}" fontsize="{rowheight}*0.4" color="{clrWhite}" text="{devices[num]}: {devices[type]}" />
|
||||||
<drawtext condition="{devices[hascam]}" x="{width(label)} + 15" y="0" font="{light}" fontsize="{rowheight}*0.40" color="{clrWhite}" text="(CAM {devices[cam]})" />
|
<drawtext condition="{devices[hascam]}" x="{width(label)} + 15" y="0" font="{light}" fontsize="{rowheight}*0.40" color="{clrWhite}" text="(CAM {devices[cam]})" />
|
||||||
@ -225,10 +260,10 @@
|
|||||||
{load} current system load
|
{load} current system load
|
||||||
-->
|
-->
|
||||||
<systemload>
|
<systemload>
|
||||||
<area x="75%" y="30%" width="25%" height="5%" layer="1">
|
<area x="75%" y="40%" width="25%" height="5%" layer="1">
|
||||||
<fill color="{clrTransBlack}"/>
|
<fill color="{clrTransBlack}"/>
|
||||||
</area>
|
</area>
|
||||||
<area x="75%" y="30%" width="25%" height="5%" layer="2">
|
<area x="75%" y="40%" width="25%" height="5%" layer="2">
|
||||||
<drawtext x="5" valign="center" font="{light}" fontsize="100%" color="{clrWhite}" text="System Load: {load}" />
|
<drawtext x="5" valign="center" font="{light}" fontsize="100%" color="{clrWhite}" text="System Load: {load}" />
|
||||||
</area>
|
</area>
|
||||||
</systemload>
|
</systemload>
|
||||||
|
@ -45,6 +45,9 @@
|
|||||||
{iscurrent} true if item is "Current Weather"
|
{iscurrent} true if item is "Current Weather"
|
||||||
{ishourly} true if item is "Next 48 hours"
|
{ishourly} true if item is "Next 48 hours"
|
||||||
{isdaily} true if item is "Next 7 days"
|
{isdaily} true if item is "Next 7 days"
|
||||||
|
{city} configured city to display weather for
|
||||||
|
{latitude} latitude
|
||||||
|
{longitude} longitude
|
||||||
|
|
||||||
If {iscurrent} is true, the following tokens are set:
|
If {iscurrent} is true, the following tokens are set:
|
||||||
{timestamp} timestamp in hh:mm dd.mm of current forecast
|
{timestamp} timestamp in hh:mm dd.mm of current forecast
|
||||||
@ -125,20 +128,18 @@
|
|||||||
<!-- All Tokens from listelement are available -->
|
<!-- All Tokens from listelement are available -->
|
||||||
<currentelement delay="100" fadetime="0">
|
<currentelement delay="100" fadetime="0">
|
||||||
<area condition="{iscurrent}" x="51%" y="0" width="48%" height="100%" layer="3">
|
<area condition="{iscurrent}" x="51%" y="0" width="48%" height="100%" layer="3">
|
||||||
<drawimage name="weathericon" imagetype="icon" path="{icon}" x="2%" y="0" width="{areawidth}*0.3" height="{areawidth}*0.3"/>
|
<drawimage name="weathericon" imagetype="icon" path="{icon}" x="2%" y="0" width="{areawidth}*0.4" height="{areawidth}*0.4"/>
|
||||||
<drawtext align="right" y="0" font="{light}" fontsize="8%" color="{clrWhite}" text="{timestamp}" />
|
<drawtext align="right" y="0" font="{semibold}" fontsize="8%" color="{clrWhite}" text="{city}" />
|
||||||
<drawtext align="right" y="6%" font="{light}" fontsize="16%" color="{clrWhite}" text="{temperature}°C" />
|
<drawtext align="right" y="7%" font="{light}" fontsize="8%" color="{clrWhite}" text="{timestamp}" />
|
||||||
<drawtext align="right" y="20%" font="{light}" fontsize="8%" color="{clrWhite}" text="{summary}" />
|
<drawtext align="right" y="13%" font="{light}" fontsize="18%" color="{clrWhite}" text="{temperature}°C" />
|
||||||
<drawtext x="0" y="34%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(apparenttemp)}: {apparenttemperature} °C" />
|
<drawtext align="right" y="28%" font="{light}" fontsize="8%" color="{clrWhite}" text="{summary}" />
|
||||||
<drawtext x="0" y="40%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(precipitationprobability)}: {precipitationprobability} %" />
|
<drawtext x="0" y="40%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(apparenttemp)}: {apparenttemperature} °C" />
|
||||||
<drawtext x="0" y="46%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(precipitationintensity)}: {precipitationintensity} l/qm" />
|
<drawtext x="0" y="46%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(precipitationprobability)}: {precipitationprobability} %" />
|
||||||
<drawtext x="0" y="52%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(humidity)}: {humidity} %" />
|
<drawtext x="0" y="52%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(precipitationintensity)}: {precipitationintensity} l/qm" />
|
||||||
<drawtext x="0" y="58%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(apparenttemp)}: {windspeed} km/h" />
|
<drawtext x="0" y="58%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(humidity)}: {humidity} %" />
|
||||||
<drawtext x="0" y="64%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(windbearing)}: {windbearingstring} ({windbearing} °)" />
|
<drawtext x="0" y="64%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(windspeed)}: {windspeed} km/h" />
|
||||||
<drawtext x="0" y="70%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(cloudcover)}: {cloudcover} %" />
|
<drawtext x="0" y="70%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(windbearing)}: {windbearingstring} ({windbearing} °)" />
|
||||||
<drawtext x="0" y="76%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(pressure)}: {pressure} HPa" />
|
<drawtext x="0" y="76%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(cloudcover)}: {cloudcover} %" />
|
||||||
<drawtext x="0" y="82%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(ozone)}: {ozone} DU" />
|
|
||||||
<drawtext x="0" y="88%" font="{light}" fontsize="6%" color="{clrWhite}" text="{tr(visibility)}: {visibility} km" />
|
|
||||||
</area>
|
</area>
|
||||||
<area condition="{ishourly}" x="51%" y="0" width="48%" height="100%" layer="3">
|
<area condition="{ishourly}" x="51%" y="0" width="48%" height="100%" layer="3">
|
||||||
<loop name="hourly" x="0" y="0" orientation="vertical" columnwidth="{areawidth}" rowheight="{areaheight}/12" overflow="cut">
|
<loop name="hourly" x="0" y="0" orientation="vertical" columnwidth="{areawidth}" rowheight="{areaheight}/12" overflow="cut">
|
||||||
|
@ -35,6 +35,9 @@
|
|||||||
</scrollbar>
|
</scrollbar>
|
||||||
<!-- Available Variables in detailheader and tab:
|
<!-- Available Variables in detailheader and tab:
|
||||||
{menuheader} "Current Weather"
|
{menuheader} "Current Weather"
|
||||||
|
{city} configured city to display weather for
|
||||||
|
{latitude} latitude
|
||||||
|
{longitude} longitude
|
||||||
{timestamp} timestamp in hh:mm dd.mm of current forecast
|
{timestamp} timestamp in hh:mm dd.mm of current forecast
|
||||||
{temperature} current temperature in °C
|
{temperature} current temperature in °C
|
||||||
{apparenttemperature} apparent (felt) temperature in °C
|
{apparenttemperature} apparent (felt) temperature in °C
|
||||||
@ -70,17 +73,18 @@
|
|||||||
</detailheader>
|
</detailheader>
|
||||||
|
|
||||||
<tab name="current" x="2%" y="20%" width="94%" height="65%" layer="2" scrollheight="{areaheight}/4">
|
<tab name="current" x="2%" y="20%" width="94%" height="65%" layer="2" scrollheight="{areaheight}/4">
|
||||||
<drawtext x="0" y="0" font="{semibold}" fontsize="10%" color="{clrWhite}" text="{tr(conditions)}: {summary}" />
|
<drawtext x="0" y="0" font="{semibold}" fontsize="10%" color="{clrWhite}" text="{tr(conditions)} {tr(for)} {city} ({latitude}, {longitude}):" />
|
||||||
<drawtext x="0" y="10%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(temp)}: {temperature}°C" />
|
<drawtext x="0" y="10%" font="{semibold}" fontsize="10%" color="{clrWhite}" text="{summary}" />
|
||||||
<drawtext x="0" y="20%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(apparenttemp)}: {apparenttemperature}°C" />
|
<drawtext x="0" y="25%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(temp)}: {temperature}°C" />
|
||||||
<drawtext x="0" y="30%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(todaymin)}: {mintemperature}°C, {tr(todaymax)}: {maxtemperature}°C" />
|
<drawtext x="0" y="35%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(apparenttemp)}: {apparenttemperature}°C" />
|
||||||
<drawtext x="0" y="40%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(precipitationprobability)}: {precipitationprobability} %" />
|
<drawtext x="0" y="45%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(todaymin)}: {mintemperature}°C, {tr(todaymax)}: {maxtemperature}°C" />
|
||||||
<drawtext x="0" y="50%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(precipitationintensity)}: {precipitationintensity} l/qm" />
|
<drawtext x="0" y="55%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(precipitationprobability)}: {precipitationprobability} %" />
|
||||||
<drawtext x="0" y="60%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(humidity)}: {humidity} %" />
|
<drawtext x="0" y="65%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(precipitationintensity)}: {precipitationintensity} l/qm" />
|
||||||
<drawtext x="0" y="70%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(windspeed)}: {windspeed} km/h aus {windbearingstring}" />
|
<drawtext x="0" y="75%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(humidity)}: {humidity} %" />
|
||||||
<drawtext x="0" y="80%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(visibility)}: {visibility} km" />
|
<drawtext x="0" y="85%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(windspeed)}: {windspeed} km/h aus {windbearingstring}" />
|
||||||
<drawtext x="0" y="90%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(cloudcover)}: {cloudcover} %" />
|
<drawtext x="0" y="95%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(visibility)}: {visibility} km" />
|
||||||
<drawtext x="0" y="100%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(pressure)}: {pressure} HPa" />
|
<drawtext x="0" y="105%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(cloudcover)}: {cloudcover} %" />
|
||||||
<drawtext x="0" y="110%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(ozone)}: {ozone} DU" />
|
<drawtext x="0" y="115%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(pressure)}: {pressure} HPa" />
|
||||||
|
<drawtext x="0" y="125%" font="{light}" fontsize="10%" color="{clrWhite}" text="{tr(ozone)}: {ozone} DU" />
|
||||||
</tab>
|
</tab>
|
||||||
</menuplugin>
|
</menuplugin>
|
||||||
|
@ -37,6 +37,9 @@
|
|||||||
<!-- Available Variables in detailheader and tab:
|
<!-- Available Variables in detailheader and tab:
|
||||||
{summary} short summary of weather
|
{summary} short summary of weather
|
||||||
{icon} path to use in <drawimage> to display appropriate weather icon
|
{icon} path to use in <drawimage> to display appropriate weather icon
|
||||||
|
{city} configured city to display weather for
|
||||||
|
{latitude} latitude
|
||||||
|
{longitude} longitude
|
||||||
|
|
||||||
{daily[day]} day of forecast in dd.mm
|
{daily[day]} day of forecast in dd.mm
|
||||||
{daily[dayname]} three letter abbrivated day name
|
{daily[dayname]} three letter abbrivated day name
|
||||||
|
@ -37,6 +37,9 @@
|
|||||||
<!-- Available Variables in detailheader and tab:
|
<!-- Available Variables in detailheader and tab:
|
||||||
{summary} short summary of weather
|
{summary} short summary of weather
|
||||||
{icon} path to use in <drawimage> to display appropriate weather icon
|
{icon} path to use in <drawimage> to display appropriate weather icon
|
||||||
|
{city} configured city to display weather for
|
||||||
|
{latitude} latitude
|
||||||
|
{longitude} longitude
|
||||||
|
|
||||||
{hourly[]} array with up to 48 hourly forecasts
|
{hourly[]} array with up to 48 hourly forecasts
|
||||||
{hourly[num]} number of forecast, starting at 1
|
{hourly[num]} number of forecast, starting at 1
|
||||||
|
@ -86,6 +86,27 @@
|
|||||||
<currentschedule>
|
<currentschedule>
|
||||||
</currentschedule>
|
</currentschedule>
|
||||||
|
|
||||||
|
<!-- Available Variables currentweather:
|
||||||
|
{timestamp} timestamp of forecast in dd.mm hh:mm
|
||||||
|
{temperature} current temperature in °C
|
||||||
|
{apparenttemperature} apparent (feeled) temperature
|
||||||
|
{summary} short weather summary
|
||||||
|
{icon} weather icon
|
||||||
|
{precipitationintensity} precipitation intensity in l/m2
|
||||||
|
{precipitationprobability} precipitation probability in %
|
||||||
|
{precipitationtype} precipitation type
|
||||||
|
{humidity} humidity in %
|
||||||
|
{windspeed} windspeed in km/h
|
||||||
|
{windbearing} wind bearing in °
|
||||||
|
{windbearingstring} wind bearing (N, NE, ...)
|
||||||
|
{visibility} visibility in km
|
||||||
|
{cloudcover} cloud cover in %
|
||||||
|
{pressure} pressure in HPo
|
||||||
|
{ozone} ozone value in DU
|
||||||
|
-->
|
||||||
|
<currentweather>
|
||||||
|
</currentweather>
|
||||||
|
|
||||||
<!-- Available Variables customtokens:
|
<!-- Available Variables customtokens:
|
||||||
all custom tokens set by the svdrp command SCTK are available in this viewelement
|
all custom tokens set by the svdrp command SCTK are available in this viewelement
|
||||||
For instance, use an appropriate script which runs periodically as cronjob and
|
For instance, use an appropriate script which runs periodically as cronjob and
|
||||||
|
@ -545,7 +545,10 @@ void cDisplayChannelView::DrawCurrentWeather(void) {
|
|||||||
}
|
}
|
||||||
map < string, string > stringTokens;
|
map < string, string > stringTokens;
|
||||||
map < string, int > intTokens;
|
map < string, int > intTokens;
|
||||||
SetCurrentWeatherTokens(stringTokens, intTokens);
|
if (!SetCurrentWeatherTokens(stringTokens, intTokens)){
|
||||||
|
ClearViewElement(veCurrentWeather);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
ClearViewElement(veCurrentWeather);
|
ClearViewElement(veCurrentWeather);
|
||||||
DrawViewElement(veCurrentWeather, &stringTokens, &intTokens);
|
DrawViewElement(veCurrentWeather, &stringTokens, &intTokens);
|
||||||
|
@ -237,6 +237,7 @@ void cDisplayMenuMainView::DrawStaticViewElements(void) {
|
|||||||
DrawDiscUsage();
|
DrawDiscUsage();
|
||||||
DrawTemperatures();
|
DrawTemperatures();
|
||||||
DrawCurrentSchedule();
|
DrawCurrentSchedule();
|
||||||
|
DrawCurrentWeather();
|
||||||
DrawCustomTokens();
|
DrawCustomTokens();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -581,6 +582,21 @@ void cDisplayMenuMainView::DrawCurrentSchedule(void) {
|
|||||||
DrawViewElement(veCurrentSchedule, &stringTokens, &intTokens);
|
DrawViewElement(veCurrentSchedule, &stringTokens, &intTokens);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void cDisplayMenuMainView::DrawCurrentWeather(void) {
|
||||||
|
if (!ViewElementImplemented(veCurrentWeather)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
map < string, string > stringTokens;
|
||||||
|
map < string, int > intTokens;
|
||||||
|
if (!SetCurrentWeatherTokens(stringTokens, intTokens)){
|
||||||
|
ClearViewElement(veCurrentWeather);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ClearViewElement(veCurrentWeather);
|
||||||
|
DrawViewElement(veCurrentWeather, &stringTokens, &intTokens);
|
||||||
|
}
|
||||||
|
|
||||||
void cDisplayMenuMainView::DrawCustomTokens(void) {
|
void cDisplayMenuMainView::DrawCustomTokens(void) {
|
||||||
if (!ViewElementImplemented(veCustomTokens)) {
|
if (!ViewElementImplemented(veCustomTokens)) {
|
||||||
return;
|
return;
|
||||||
|
@ -44,6 +44,7 @@ private:
|
|||||||
void DrawTemperatures(void);
|
void DrawTemperatures(void);
|
||||||
bool DrawDevices(void);
|
bool DrawDevices(void);
|
||||||
void DrawCurrentSchedule(void);
|
void DrawCurrentSchedule(void);
|
||||||
|
void DrawCurrentWeather(void);
|
||||||
void DrawCustomTokens(void);
|
void DrawCustomTokens(void);
|
||||||
public:
|
public:
|
||||||
cDisplayMenuMainView(cTemplateView *tmplView, bool menuInit);
|
cDisplayMenuMainView(cTemplateView *tmplView, bool menuInit);
|
||||||
|
@ -427,13 +427,13 @@ bool cViewHelpers::SetDate(map < string, string > &stringTokens, map < string, i
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void cViewHelpers::SetCurrentWeatherTokens(map < string, string > &stringTokens, map < string, int > &intTokens) {
|
bool cViewHelpers::SetCurrentWeatherTokens(map < string, string > &stringTokens, map < string, int > &intTokens) {
|
||||||
static cPlugin *pWeatherForecast = cPluginManager::GetPlugin("weatherforecast");
|
static cPlugin *pWeatherForecast = cPluginManager::GetPlugin("weatherforecast");
|
||||||
if (!pWeatherForecast)
|
if (!pWeatherForecast)
|
||||||
return;
|
return false;
|
||||||
cServiceCurrentWeather currentWeather;
|
cServiceCurrentWeather currentWeather;
|
||||||
if (!pWeatherForecast->Service("GetCurrentWeather", ¤tWeather)) {
|
if (!pWeatherForecast->Service("GetCurrentWeather", ¤tWeather)) {
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
stringTokens.insert(pair<string,string>("timestamp", currentWeather.timeStamp));
|
stringTokens.insert(pair<string,string>("timestamp", currentWeather.timeStamp));
|
||||||
stringTokens.insert(pair<string,string>("temperature", currentWeather.temperature));
|
stringTokens.insert(pair<string,string>("temperature", currentWeather.temperature));
|
||||||
@ -453,4 +453,5 @@ void cViewHelpers::SetCurrentWeatherTokens(map < string, string > &stringTokens,
|
|||||||
intTokens.insert(pair<string,int>("cloudcover", currentWeather.cloudCover));
|
intTokens.insert(pair<string,int>("cloudcover", currentWeather.cloudCover));
|
||||||
stringTokens.insert(pair<string,string>("pressure", currentWeather.pressure));
|
stringTokens.insert(pair<string,string>("pressure", currentWeather.pressure));
|
||||||
stringTokens.insert(pair<string,string>("ozone", currentWeather.ozone));
|
stringTokens.insert(pair<string,string>("ozone", currentWeather.ozone));
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -16,7 +16,7 @@ protected:
|
|||||||
void SetScraperTokens(const cEvent *event, const cRecording *recording, map < string, string > &stringTokens, map < string, int > &intTokens, map < string, vector< map< string, string > > > &loopTokens);
|
void SetScraperTokens(const cEvent *event, const cRecording *recording, map < string, string > &stringTokens, map < string, int > &intTokens, map < string, vector< map< string, string > > > &loopTokens);
|
||||||
bool SetTime(map < string, string > &stringTokens, map < string, int > &intTokens);
|
bool SetTime(map < string, string > &stringTokens, map < string, int > &intTokens);
|
||||||
bool SetDate(map < string, string > &stringTokens, map < string, int > &intTokens);
|
bool SetDate(map < string, string > &stringTokens, map < string, int > &intTokens);
|
||||||
void SetCurrentWeatherTokens(map < string, string > &stringTokens, map < string, int > &intTokens);
|
bool SetCurrentWeatherTokens(map < string, string > &stringTokens, map < string, int > &intTokens);
|
||||||
public:
|
public:
|
||||||
cViewHelpers(void);
|
cViewHelpers(void);
|
||||||
virtual ~cViewHelpers(void);
|
virtual ~cViewHelpers(void);
|
||||||
|
Loading…
Reference in New Issue
Block a user