Building a Maximinimalism Dashboard
#1
First off let me say that I think the Maximinimalism skin looks great for Kodi. Greaet work!

I got this idea to build a dashboard for my Kodi that would give me the very basics that I need: a clock, the date, the weather & forecast, and a RSS feed. Being that I never have tried editing a Kodi skin before how much would I be biting off to chew to try and make something look like the attached?

Where would i even start?

Image
Reply
#2
Hi anthony522,

Thanks for updating the graphic - I was just about to ask for that :-)

OK... You can make that screen as you want it, but it will take a bit of work. You will need to be comfortable working with XML.

The file you want to work with is: skin.maximinimalism/1080i/home.xml - the Kodi 'homescreen'.

Kodi screens are built out of controls (e.g. labels, lists, images, buttons). You'll want to familiarise yourself with how they are structured and how to use them. Have a read here: http://kodi.wiki/view/Skinning_Manual#Controls. For what you want, you'll need buttons, a panel container, some labels and an RSS control.

Your best bet is to tackle one bit at a time and work up. For example, add an RSS control to the existing homescreen and play around with it, then work up to the panel lists etc. You'll also want to bookmark this page: http://kodi.wiki/view/InfoLabels#Weather_labels, which outlines the data labels you have available regarding the weather stuff.

Oh - The weather icons are contained in a font. You'll want to refer to the file skin.maximinimalism/1080i/MyWeather.xml and skin.maximinimalism/1080i/Includes_variables.xml for reference.

As a final point, you'll definitely want to remap your keyboard to make reloading the skin easier (so you can test changes). Look into the foundation skin - it will give you details on what you need to do.

Welcome to skinning!
Bitcoin donations: 1Hvo9rWzhAVbuPrshgaGZaD7qcLFTCPuiv
[Skin] Pellucid
[Skin] Maximinimalism
Reply
#3
Thanks for the reply! I made some good progress over the past couple days (see screenshot below). I ended up having Kodi boot to the weather screen and then customizing MyWeather.xml. I was having trouble getting the weather forecast to appear on the home screen so I chose to start with where it _was_ appearing and then go from there. I am hoping that I will still be able to use AirPlay with my Kodi setup even if it is on the Weather screen but do not have my Pi up and running to test it yet.

I'm currently wrestling with how you make Weather have a random background image. I have all my backgrounds in extras/backgrounds/ but no matter what I try, I keep seeing a black background. Can you help?


Image
Reply
#4
You'll want a multiimage control for random backgrounds. The below **should** work. If not, you'll need to play around with the <imagepath/> tag to set the path.

Code:
<control type="multiimage">
                <posx>0</posx>
                <posy>0</posy>
                <include>dimensionsFullscreen</include>
                <imagepath>special://skin/extras/backgrounds/</imagepath>
                <timeperimage>25000</timeperimage>
                <fadetime>1000</fadetime>
                <pauseatend>10000</pauseatend>
                <randomize>true</randomize>
                <aspectratio>stretch</aspectratio>
                <colordiffuse>ffffffff</colordiffuse>
            </control>
Bitcoin donations: 1Hvo9rWzhAVbuPrshgaGZaD7qcLFTCPuiv
[Skin] Pellucid
[Skin] Maximinimalism
Reply
#5
Thanks, that did the job perfectly!

Once I have my Raspberry Pi setup I will be able to test out the AirPlay piece but so far this is working exactly as I intended.

Thanks again.
Reply
#6
No problem,

Be sure to take a backup of any files you change as they won't survive a skin update.
Bitcoin donations: 1Hvo9rWzhAVbuPrshgaGZaD7qcLFTCPuiv
[Skin] Pellucid
[Skin] Maximinimalism
Reply
#7
Thanks for the tip!

I do have another question. Is there something that I need to do in order for the 5 day forecast to be able to be used in Home.xml? Below is my current MyWeather.xml, which works exactly as I want. If I take that same file and save it as Home.xml everything works except the forecast.

Thanks!

Code:
<?xml version="1.0" encoding="UTF-8"?>
<window>
    <defaultcontrol always="true">3</defaultcontrol>
    <allowoverlay>yes</allowoverlay>
    <controls>
        <!--background-->
        <control type="multiimage">
            <posx>0</posx>
            <posy>0</posy>
            <include>dimensionsFullscreen</include>
            <imagepath>http://path/to/my/images/</imagepath>
            <timeperimage>120000</timeperimage>
            <fadetime>1000</fadetime>
            <pauseatend>10000</pauseatend>
            <randomize>true</randomize>
            <aspectratio>stretch</aspectratio>
            <colordiffuse>ffffffff</colordiffuse>
        </control>
        <control type="group">
            <posx>col-1-begin</posx>
            <posy>row-4-begin</posy>
            <!--animations-->
            <include>modalDialogInOutVertical</include>
            <!--general info-->
                <!-- REMOVED -->
            <!--location selector-->
                <!-- REMOVED -->
            
            <!--location title-->
                <!-- REMOVED -->
            <!--overlay-->
                <!-- REMOVED -->
            <!--content begins-->
            <!-- WEATHER FORECAST -->
            <control type="panel" id="9000">
                <posx>650r</posx>
                <posy>150</posy>
                <width>24-col</width>
                <height>18-row</height>
                <itemlayout width="2-col-gutter" height="6-col">
                    <control type="label">
                        <posx>46</posx>
                        <posy>0</posy>
                        <width>2-col-gutter</width>
                        <font>weathIcon</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$VAR[weatherIcon]</label>
                    </control>
                    <control type="label">
                        <posx>36</posx>
                        <posy>1-row</posy>
                        <width>2-col-gutter</width>
                        <align>center</align>
                        <font>weathDay</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$INFO[ListItem.Label]</label>
                    </control>
                    <control type="textbox">
                        <posx>36</posx>
                        <posy>100</posy>
                        <width>2-col-gutter</width>
                        <align>center</align>
                        <font>weathForecast</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <autoscroll delay="3000" time="1000" repeat="3000"/>
                        <label>$LOCALIZE[13508] [B]$INFO[ListItem.Property(HighTemp)] $INFO[ListItem.Property(TempUnits)][/B]</label>
                    </control>
                    <control type="textbox">
                        <posx>36</posx>
                        <posy>125</posy>
                        <width>2-col-gutter</width>
                        <align>center</align>
                        <font>weathForecast</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$LOCALIZE[418] [B]$INFO[ListItem.Property(LowTemp)] $INFO[ListItem.Property(TempUnits)][/B]</label>
                    </control>
                </itemlayout>
                <focusedlayout width="6-col" height="6-col">
                    <!-- CURRENT DAY WEATHER -->                    
                    <control type="label">
                        <posx>46</posx>
                        <posy>0</posy>
                        <width>2-col-gutter</width>
                        <font>weathIcon</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$VAR[weatherIcon]</label>
                    </control>
                    <control type="label">
                        <posx>36</posx>
                        <posy>1-row</posy>
                        <width>2-col-gutter</width>
                        <align>center</align>
                        <font>weathDay</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$INFO[ListItem.Label]</label>
                    </control>
                    <control type="textbox">
                        <posx>36</posx>
                        <posy>2-row</posy>
                        <width>2-col-gutter</width>
                        <height>0</height>
                        <align>center</align>
                        <font>weathForecast</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$LOCALIZE[13508] [B]$INFO[ListItem.Property(HighTemp)] $INFO[ListItem.Property(TempUnits)][/B]</label>
                    </control>
                    <control type="textbox">
                        <posx>36</posx>
                        <posy>3-row</posy>
                        <width>2-col-gutter</width>
                        <height>0</height>
                        <align>center</align>
                        <font>weathForecast</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$LOCALIZE[418] [B]$INFO[ListItem.Property(LowTemp)] $INFO[ListItem.Property(TempUnits)][/B]</label>
                    </control>
                    <!-- END OF CURRENT DAY WEATHER -->
                </focusedlayout>
                <content>
                    <item id="1">
                        <description>Day 0</description>
                        <label>$INFO[Window.Property(Day0.Title)]</label>
                        <property name="fanartCode">$INFO[Window.Property(Day0.fanartCode)]</property>
                        <property name="HighTemp">$INFO[Window.Property(Day0.HighTemp)]</property>
                        <property name="LowTemp">$INFO[Window.Property(Day0.LowTemp)]</property>
                        <property name="Outlook">$INFO[Window.Property(Day0.Outlook)]</property>
                        <property name="TempUnits">$INFO[System.TemperatureUnits]</property>
                        <onclick>noop</onclick>
                    </item>
                    <item id="2">
                        <description>Day 1</description>
                        <label>$INFO[Window.Property(Day1.Title)]</label>
                        <property name="fanartCode">$INFO[Window.Property(Day1.fanartCode)]</property>
                        <property name="HighTemp">$INFO[Window.Property(Day1.HighTemp)]</property>
                        <property name="LowTemp">$INFO[Window.Property(Day1.LowTemp)]</property>
                        <property name="Outlook">$INFO[Window.Property(Day1.Outlook)]</property>
                        <property name="TempUnits">$INFO[System.TemperatureUnits]</property>
                        <onclick>noop</onclick>
                    </item>
                    <item id="3">
                        <description>Day 2</description>
                        <label>$INFO[Window.Property(Day2.Title)]</label>
                        <property name="fanartCode">$INFO[Window.Property(Day2.fanartCode)]</property>
                        <property name="HighTemp">$INFO[Window.Property(Day2.HighTemp)]</property>
                        <property name="LowTemp">$INFO[Window.Property(Day2.LowTemp)]</property>
                        <property name="Outlook">$INFO[Window.Property(Day2.Outlook)]</property>
                        <property name="TempUnits">$INFO[System.TemperatureUnits]</property>
                        <onclick>noop</onclick>
                    </item>
                    <item id="4">
                        <description>Day 3</description>
                        <label>$INFO[Window.Property(Day3.Title)]</label>
                        <property name="fanartCode">$INFO[Window.Property(Day3.fanartCode)]</property>
                        <property name="HighTemp">$INFO[Window.Property(Day3.HighTemp)]</property>
                        <property name="LowTemp">$INFO[Window.Property(Day3.LowTemp)]</property>
                        <property name="Outlook">$INFO[Window.Property(Day3.Outlook)]</property>
                        <property name="TempUnits">$INFO[System.TemperatureUnits]</property>
                        <onclick>noop</onclick>
                    </item>
                    <item id="5">
                        <description>Day 4</description>
                        <label>$INFO[Window.Property(Day4.Title)]</label>
                        <property name="fanartCode">$INFO[Window.Property(Day4.fanartCode)]</property>
                        <property name="HighTemp">$INFO[Window.Property(Day4.HighTemp)]</property>
                        <property name="LowTemp">$INFO[Window.Property(Day4.LowTemp)]</property>
                        <property name="Outlook">$INFO[Window.Property(Day4.Outlook)]</property>
                        <property name="TempUnits">$INFO[System.TemperatureUnits]</property>
                        <onclick>noop</onclick>
                    </item>
                </content>
            </control>
            <!--panel ends-->
        </control>
        
        <!-- RSS FEEDS -->
        <control type="group">
            <left>0</left>
            <top>60r</top>
            <visible>system.getbool(lookandfeel.enablerssfeeds)</visible>
            <include>Window_OpenClose_Animation</include>
            <control type="rss">
                <description>RSS feed</description>
                <left>0</left>
                <top>0</top>
                <height>10</height>
                <width>2000</width>
                <font>medium</font>
                <urlset>1</urlset>
                <textcolor>white</textcolor>
                <shadowcolor>dashboard</shadowcolor>
                <titlecolor>white</titlecolor>
                <headlinecolor>selected</headlinecolor>
                <aspectratio>stretch</aspectratio>
            </control>
            <control type="image">
                <description>RSS background</description>
                <left>1250</left>
                <top>2</top>
                <width>24</width>
                <height>24</height>
                <texture>icon-rss.png</texture>
            </control>
        </control>        

        <!-- DATE, TIME -->
        <control type="group">
            <posx>30</posx>
            <posy>row-2-begin</posy>
            <animation type="Windowopen">
                <effect type="fade" start="0" end="100" time="300" delay="1000"/>
                <effect type="slide" start="0,200" end="0" tween="sine" easing="out" time="400" delay="1000"/>
            </animation>
            <control type="label">
                <posx>0</posx>
                <posy>0</posy>
                <width>24-col</width>
                <font>veryLarge</font>
                <align>left</align>
                <textcolor>selected</textcolor>
                <shadowcolor>dashboard</shadowcolor>
                <label>$INFO[System.Time]</label>
            </control>
            <control type="label">
                <posx>0</posx>
                <posy>112</posy>
                <width>24-col</width>
                <align>left</align>
                <font>Large</font>
                <textcolor>selected</textcolor>
                <shadowcolor>dashboard</shadowcolor>
                <label>$INFO[System.Date(DDD)], $INFO[System.Date(MMM)] $INFO[System.Date(dd)]</label>
            </control>
        </control>
        <!-- END OF DATE TIME WEATHER -->

        <!-- CURRENT WEATHER -->
        <control type="group">
            <posx>col-1-begin</posx>
            <posy>row-2-begin</posy>
            <animation type="Windowopen">
                <effect type="fade" start="0" end="100" time="300" delay="1000"/>
                <effect type="slide" start="0,200" end="0" tween="sine" easing="out" time="400" delay="1000"/>
            </animation>
            <control type="label">
                <posx>20r</posx>
                <posy>0</posy>
                <width>24-col</width>
                <font>veryLarge</font>
                <align>right</align>
                <textcolor>selected</textcolor>
                <shadowcolor>dashboard</shadowcolor>
                <label>[B]$INFO[weather.temperature][/B]</label>
            </control>
            <control type="label">
                <posx>40r</posx>
                <posy>112</posy>
                <width>24-col</width>
                <align>right</align>
                <font>Large</font>
                <textcolor>selected</textcolor>
                <shadowcolor>dashboard</shadowcolor>
                <label> [LOWERCASE]$INFO[weather.conditions][/LOWERCASE]</label>
            </control>
        </control>

        <!--debugging-->
        <include>DebugGrid</include>
        <control type="label">
            <include>WindowID</include>
            <label>MyWeather.xml</label>
        </control>
    </controls>
</window>
Reply
#8
Yeah, the infolabels for the forecast don't work across windows like that.

You can do it though - see http://kodi.wiki/view/InfoLabels#Weather_labels

The format is Window(Weather).Property(key), so $INFO[ListItem.Property(HighTemp)] needs replacing with $INFO[Window(Weather).Property(Day1.HighTemp)]. Note Day1,Day2 etc to get the values for each day.
Bitcoin donations: 1Hvo9rWzhAVbuPrshgaGZaD7qcLFTCPuiv
[Skin] Pellucid
[Skin] Maximinimalism
Reply
#9
Thank you so much. I got everything work just as I wanted using the Home.xml.

For those who may be interested below is the code (updated your image path for backgrounds as you see fit).

Code:
<?xml version="1.0" encoding="UTF-8"?>
<window id="0">
    <defaultcontrol always="true">9000</defaultcontrol>
    <allowoverlay>yes</allowoverlay>
    <onload condition="Skin.hassetting(stopVideoOnMenu) + !Player.HasAudio">PlayerControl(stop)</onload>
    <onload>Skin.Reset(keepMusicMenuActive)</onload>
    <animation effect="fade" start="100" end="0" time="300">WindowClose</animation>
    <animation effect="fade" start="0" end="100" time="1000" reversible="true">WindowOpen</animation>
    <controls>
         <!--background-->
        <control type="multiimage">
            <posx>0</posx>
            <posy>0</posy>
            <include>dimensionsFullscreen</include>
            <imagepath>http://path/to/your/images</imagepath>
            <timeperimage>120000</timeperimage>
            <fadetime>1000</fadetime>
            <pauseatend>10000</pauseatend>
            <randomize>true</randomize>
            <aspectratio>stretch</aspectratio>
            <colordiffuse>ffffffff</colordiffuse>
        </control>
    
        <!-- MENU -->
        <control type="group">
            <posx>-425</posx>
            <posy>150r</posy>
            <!--animations-->
            <animation effect="fade" start="0" end="100" delay="500" time="600">WindowOpen</animation>
            <animation condition="SubString(Container(9000).NumItems,3)" effect="slide" end="575,0" time="0">conditional</animation>
            <animation condition="SubString(Container(9000).NumItems,4)" effect="slide" end="468,0" time="0">conditional</animation>
            <animation condition="SubString(Container(9000).NumItems,5)" effect="slide" end="361,0" time="0">conditional</animation>
            <animation condition="SubString(Container(9000).NumItems,6)" effect="slide" end="254,0" time="0">conditional</animation>
            <animation condition="SubString(Container(9000).NumItems,7)" effect="slide" end="147,0" time="0">conditional</animation>
            <animation condition="SubString(Container(9000).NumItems,8)" effect="slide" end="40,0" time="0">conditional</animation>
            <animation condition="SubString(Container(9000).NumItems,9)" effect="slide" end="-67,0" time="0">conditional</animation>
            <control type="list" id="9000">
                <posx>0</posx>
                <posy>0</posy>
                <width>0</width>
                <height>3-col</height>
                <orientation>horizontal</orientation>
                <onup>ActivateWindow(systeminfo)</onup>
                <ondown>ActivateWindow(weather)</ondown>
                <itemlayout width="1-col" height="3-col">
                    <control type="label">
                        <posx>0</posx>
                        <posy>-38</posy>
                        <width>1-col</width>
                        <height>3-col</height>
                        <font>symbolMedium</font>
                        <textcolor>unselected</textcolor>
                        <shadowcolor>-</shadowcolor>
                        <label>$INFO[ListItem.label2]</label>
                    </control>
                </itemlayout>
                <focusedlayout width="1-col" height="3-col">
                    <control type="label">
                        <posx>0</posx>
                        <posy>-38</posy>
                        <width>1-col</width>
                        <height>3-col</height>
                        <font>symbolMediumOver</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$INFO[ListItem.label2]</label>
                    </control>
                </focusedlayout>
                <content>
                    <item>
                        <visible>!Skin.HasSetting(hideMusic)</visible>
                        <label>31001</label>
                        <label2></label2>
                        <thumb>-</thumb>
                        <onclick condition="!Library.HasContent(Music)">ActivateWindow(MusicFiles,root)</onclick>
                        <onclick condition="!Library.HasContent(Music)">Skin.SetString(showRecentMusicItems,false)</onclick>
                        <onclick condition="Library.HasContent(Music)">ActivateWindow(musiclibrary)</onclick>
                        <onclick condition="Library.HasContent(Music)">Skin.SetString(showRecentMusicItems,true)</onclick>
                    </item>
                    <item>
                        <visible>!Skin.HasSetting(hideVideo)</visible>
                        <label>31000</label>
                        <label2></label2>
                        <thumb>-</thumb>
                        <onclick condition="!Library.HasContent(Video)">ActivateWindow(Videos,files)</onclick>
                        <onclick condition="!Library.HasContent(Video)">Skin.SetString(showRecentVideoItems,false)</onclick>
                        <onclick condition="Library.HasContent(Video)">ActivateWindow(Videos,videodb://)</onclick>
                        <onclick condition="Library.HasContent(Video)">Skin.SetString(showRecentVideoItems,true)</onclick>
                    </item>
                    <item>
                        <visible>!Skin.HasSetting(hidePictures)</visible>
                        <label>31002</label>
                        <label2></label2>
                        <thumb>-</thumb>
                        <onclick>ActivateWindow(pictures)</onclick>
                    </item>
                    <item>
                        <visible>!Skin.HasSetting(hideGames) + System.HasAddon(script.games.rom.collection.browser)</visible>
                        <label>31156</label>
                        <label2></label2>
                        <thumb>-</thumb>
                        <onclick>RunScript(script.games.rom.collection.browser,)</onclick>
                    </item>
                    <item>
                        <visible>!Skin.HasSetting(hidePrograms)</visible>
                        <label>0</label>
                        <label2></label2>
                        <thumb>-</thumb>
                        <onclick>ActivateWindow(programs,addons,return)</onclick>
                    </item>
                    <item>
                        <visible>!Skin.HasSetting(hideSearch)</visible>
                        <label>137</label>
                        <label2></label2>
                        <thumb>-</thumb>
                        <onclick>RunScript(script.globalsearch)</onclick>
                        <onclick>Skin.SetString(showRecentMusicItems,false)</onclick>
                        <onclick>Skin.SetString(showRecentVideoItems,false)</onclick>
                    </item>
                    <item>
                        <visible>!Skin.HasSetting(hideFavourites)</visible>
                        <label>1036</label>
                        <label2></label2>
                        <thumb>-</thumb>
                        <onclick>ReplaceWindow(favourites)</onclick>
                    </item>
                    <item>
                        <label>5</label>
                        <label2></label2>
                        <thumb>-</thumb>
                        <onclick>ActivateWindow(settings)</onclick>
                    </item>
                    <item>
                        <label>31004</label>
                        <label2></label2>
                        <thumb>-</thumb>
                        <onclick>ActivateWindow(ShutdownMenu)</onclick>
                    </item>
                </content>
            </control>
        </control>
        <!-- END OF MENU -->
        
        <!-- BEGINNING OF WEATHER FORECAST -->
        <control type="group">
            <posx>col-1-begin</posx>
            <posy>row-4-begin</posy>
            <!--animations-->
            <include>modalDialogInOutVertical</include>
            <!-- WEATHER FORECAST -->
            <control type="panel" id="9000">
                <posx>650r</posx>
                <posy>150</posy>
                <width>24-col</width>
                <height>18-row</height>
                <itemlayout width="2-col-gutter" height="6-col">
                    <control type="label">
                        <posx>46</posx>
                        <posy>0</posy>
                        <width>2-col-gutter</width>
                        <font>weathIcon</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$VAR[weatherIcon]</label>
                    </control>
                    <control type="label">
                        <posx>36</posx>
                        <posy>1-row</posy>
                        <width>2-col-gutter</width>
                        <align>center</align>
                        <font>weathDay</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$INFO[ListItem.Label]</label>
                    </control>
                    <control type="textbox">
                        <posx>36</posx>
                        <posy>100</posy>
                        <width>2-col-gutter</width>
                        <align>center</align>
                        <font>weathForecast</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <autoscroll delay="3000" time="1000" repeat="3000"/>
                        <label>$LOCALIZE[13508] [B]$INFO[ListItem.Property(HighTemp)] $INFO[ListItem.Property(TempUnits)][/B]</label>
                    </control>
                    <control type="textbox">
                        <posx>36</posx>
                        <posy>125</posy>
                        <width>2-col-gutter</width>
                        <align>center</align>
                        <font>weathForecast</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$LOCALIZE[418] [B]$INFO[ListItem.Property(LowTemp)] $INFO[ListItem.Property(TempUnits)][/B]</label>
                    </control>
                </itemlayout>
                <focusedlayout width="6-col" height="6-col">
                    <!-- CURRENT DAY WEATHER -->                    
                    <control type="label">
                        <posx>46</posx>
                        <posy>0</posy>
                        <width>2-col-gutter</width>
                        <font>weathIcon</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$VAR[weatherIcon]</label>
                    </control>
                    <control type="label">
                        <posx>36</posx>
                        <posy>1-row</posy>
                        <width>2-col-gutter</width>
                        <align>center</align>
                        <font>weathDay</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$INFO[ListItem.Label]</label>
                    </control>
                    <control type="textbox">
                        <posx>36</posx>
                        <posy>2-row</posy>
                        <width>2-col-gutter</width>
                        <height>0</height>
                        <align>center</align>
                        <font>weathForecast</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$LOCALIZE[13508] [B]$INFO[ListItem.Property(HighTemp)] $INFO[ListItem.Property(TempUnits)][/B]</label>
                    </control>
                    <control type="textbox">
                        <posx>36</posx>
                        <posy>3-row</posy>
                        <width>2-col-gutter</width>
                        <height>0</height>
                        <align>center</align>
                        <font>weathForecast</font>
                        <textcolor>selected</textcolor>
                        <shadowcolor>dashboard</shadowcolor>
                        <label>$LOCALIZE[418] [B]$INFO[ListItem.Property(LowTemp)] $INFO[ListItem.Property(TempUnits)][/B]</label>
                    </control>
                    <!-- END OF CURRENT DAY WEATHER -->
                </focusedlayout>
                <content>
                    <item id="1">
                        <description>Day 0</description>
                        <label>$INFO[Window(Weather).Property(Day0.Title)]</label>
                        <property name="fanartCode">$INFO[Window(Weather).Property(Day0.fanartCode)]</property>
                        <property name="HighTemp">$INFO[Window(Weather).Property(Day0.HighTemp)]</property>
                        <property name="LowTemp">$INFO[Window(Weather).Property(Day0.LowTemp)]</property>
                        <property name="Outlook">$INFO[Window(Weather).Property(Day0.Outlook)]</property>
                        <property name="TempUnits">$INFO[System.TemperatureUnits]</property>
                        <onclick>noop</onclick>
                    </item>
                    <item id="2">
                        <description>Day 1</description>
                        <label>$INFO[Window(Weather).Property(Day1.Title)]</label>
                        <property name="fanartCode">$INFO[Window(Weather).Property(Day1.fanartCode)]</property>
                        <property name="HighTemp">$INFO[Window(Weather).Property(Day1.HighTemp)]</property>
                        <property name="LowTemp">$INFO[Window(Weather).Property(Day1.LowTemp)]</property>
                        <property name="Outlook">$INFO[Window(Weather).Property(Day1.Outlook)]</property>
                        <property name="TempUnits">$INFO[System.TemperatureUnits]</property>
                        <onclick>noop</onclick>
                    </item>
                    <item id="3">
                        <description>Day 2</description>
                        <label>$INFO[Window(Weather).Property(Day2.Title)]</label>
                        <property name="fanartCode">$INFO[Window(Weather).Property(Day2.fanartCode)]</property>
                        <property name="HighTemp">$INFO[Window(Weather).Property(Day2.HighTemp)]</property>
                        <property name="LowTemp">$INFO[Window(Weather).Property(Day2.LowTemp)]</property>
                        <property name="Outlook">$INFO[Window(Weather).Property(Day2.Outlook)]</property>
                        <property name="TempUnits">$INFO[System.TemperatureUnits]</property>
                        <onclick>noop</onclick>
                    </item>
                    <item id="4">
                        <description>Day 3</description>
                        <label>$INFO[Window(Weather).Property(Day3.Title)]</label>
                        <property name="fanartCode">$INFO[Window(Weather).Property(Day3.fanartCode)]</property>
                        <property name="HighTemp">$INFO[Window(Weather).Property(Day3.HighTemp)]</property>
                        <property name="LowTemp">$INFO[Window(Weather).Property(Day3.LowTemp)]</property>
                        <property name="Outlook">$INFO[Window(Weather).Property(Day3.Outlook)]</property>
                        <property name="TempUnits">$INFO[System.TemperatureUnits]</property>
                        <onclick>noop</onclick>
                    </item>
                    <item id="5">
                        <description>Day 4</description>
                        <label>$INFO[Window(Weather).Property(Day4.Title)]</label>
                        <property name="fanartCode">$INFO[Window(Weather).Property(Day4.fanartCode)]</property>
                        <property name="HighTemp">$INFO[Window(Weather).Property(Day4.HighTemp)]</property>
                        <property name="LowTemp">$INFO[Window(Weather).Property(Day4.LowTemp)]</property>
                        <property name="Outlook">$INFO[Window(Weather).Property(Day4.Outlook)]</property>
                        <property name="TempUnits">$INFO[System.TemperatureUnits]</property>
                        <onclick>noop</onclick>
                    </item>
                </content>
            </control>
            <!--panel ends-->
        </control>
        <!-- END OF WEATHER FORECAST -->
        
        <!-- RSS FEEDS -->
        <control type="group">
            <left>0</left>
            <top>60r</top>
            <visible>system.getbool(lookandfeel.enablerssfeeds)</visible>
            <include>Window_OpenClose_Animation</include>
            <control type="rss">
                <description>RSS feed</description>
                <left>0</left>
                <top>0</top>
                <height>10</height>
                <width>2000</width>
                <font>medium</font>
                <urlset>1</urlset>
                <textcolor>white</textcolor>
                <shadowcolor>dashboard</shadowcolor>
                <titlecolor>white</titlecolor>
                <headlinecolor>selected</headlinecolor>
                <aspectratio>stretch</aspectratio>
                <scrollspeed>150</scrollspeed>
            </control>
            <control type="image">
                <description>RSS background</description>
                <left>1250</left>
                <top>2</top>
                <width>24</width>
                <height>24</height>
                <texture>icon-rss.png</texture>
            </control>
        </control>        

        <!-- DATE, TIME -->
        <control type="group">
            <posx>30</posx>
            <posy>row-2-begin</posy>
            <animation type="Windowopen">
                <effect type="fade" start="0" end="100" time="300" delay="1000"/>
                <effect type="slide" start="0,200" end="0" tween="sine" easing="out" time="400" delay="1000"/>
            </animation>
            <control type="label">
                <posx>0</posx>
                <posy>0</posy>
                <width>24-col</width>
                <font>veryLarge</font>
                <align>left</align>
                <textcolor>selected</textcolor>
                <shadowcolor>dashboard</shadowcolor>
                <label>$INFO[System.Time]</label>
            </control>
            <control type="label">
                <posx>0</posx>
                <posy>112</posy>
                <width>24-col</width>
                <align>left</align>
                <font>Large</font>
                <textcolor>selected</textcolor>
                <shadowcolor>dashboard</shadowcolor>
                <label>$INFO[System.Date(DDD)], $INFO[System.Date(MMM)] $INFO[System.Date(dd)]</label>
            </control>
        </control>
        <!-- END OF DATE TIME WEATHER -->

        <!-- CURRENT WEATHER -->
        <control type="group">
            <posx>col-1-begin</posx>
            <posy>row-2-begin</posy>
            <animation type="Windowopen">
                <effect type="fade" start="0" end="100" time="300" delay="1000"/>
                <effect type="slide" start="0,200" end="0" tween="sine" easing="out" time="400" delay="1000"/>
            </animation>
            <control type="label">
                <posx>20r</posx>
                <posy>0</posy>
                <width>24-col</width>
                <font>veryLarge</font>
                <align>right</align>
                <textcolor>selected</textcolor>
                <shadowcolor>dashboard</shadowcolor>
                <label>[B]$INFO[weather.temperature][/B]</label>
            </control>
            <control type="label">
                <posx>40r</posx>
                <posy>112</posy>
                <width>24-col</width>
                <align>right</align>
                <font>Large</font>
                <textcolor>selected</textcolor>
                <shadowcolor>dashboard</shadowcolor>
                <label> [LOWERCASE]$INFO[weather.conditions][/LOWERCASE]</label>
            </control>
        </control>

        
        <!--debugging-->
        <include>DebugGrid</include>
        <control type="label">
            <include>WindowID</include>
            <label>Home.xml</label>
        </control>
    </controls>
</window>
Reply
#10
No worries. Next step: full skin :-)
Bitcoin donations: 1Hvo9rWzhAVbuPrshgaGZaD7qcLFTCPuiv
[Skin] Pellucid
[Skin] Maximinimalism
Reply

Logout Mark Read Team Forum Stats Members Help
Building a Maximinimalism Dashboard0