home
products
contribute
download
documentation
forum
Home
Forums
New posts
Search forums
What's new
New posts
All posts
Latest activity
Members
Registered members
Current visitors
Donate
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Search titles only
By:
Menu
Log in
Register
Navigation
Install the app
Install
More options
Contact us
Close Menu
Forums
MediaPortal 1
MediaPortal 1 Skins
Building a skin from scratch - a tour -
Contact us
RSS
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="mbuzina" data-source="post: 1002829" data-attributes="member: 12382"><p>OK, next up: General configuration of Overlays / Menu</p><p><span style="font-size: 18px">Configurability of Overlays/Submenu</span></p><p><span style="font-size: 12px">OK, now I added the following to SkinSettings for each menu entry:</span></p><p>[CODE] <entry name="#BasicHome.B1.Label">TV</entry></p><p> <entry name="#BasicHome.B1.Hyperlink">1</entry></p><p> <entry name="#BasicHome.B1.HyperlinkParameter"></entry></p><p> <entry name="#BasicHome.B1.Background">hover_my tv.png</entry></p><p> <entry name="#BasicHome.B1.c0r0">SUB</entry></p><p> <entry name="#BasicHome.B1.c1r0">WW</entry></p><p> <entry name="#BasicHome.B1.c2r0"></entry></p><p> <entry name="#BasicHome.B1.c0r1"></entry></p><p> <entry name="#BasicHome.B1.c1r1"></entry></p><p> <entry name="#BasicHome.B1.c2r1"></entry></p><p> <entry name="#BasicHome.B1.c0r2"></entry></p><p> <entry name="#BasicHome.B1.c1r2"></entry></p><p> <entry name="#BasicHome.B1.c2r2"></entry></p><p> <entry name="#BasicHome.B1.0.Label">EPG</entry></p><p> <entry name="#BasicHome.B1.1.Label">Clickfinder</entry></p><p> <entry name="#BasicHome.B1.2.Label">Recorded Programs</entry></p><p> <entry name="#BasicHome.B1.3.Label">Scheduled Recordings</entry></p><p> <entry name="#BasicHome.B1.4.Label"></entry></p><p> <entry name="#BasicHome.B1.5.Label"></entry></p><p> <entry name="#BasicHome.B1.6.Label"></entry></p><p> <entry name="#BasicHome.B1.7.Label"></entry></p><p> <entry name="#BasicHome.B1.8.Label"></entry></p><p> <entry name="#BasicHome.B1.9.Label"></entry></p><p>[/CODE]</p><p> </p><p>AS you can see a few things have changed. Each basic home button now has 9 c0r0 - c2r2 entries. This TV entry has a submenu (SUB) @ position c0r0 (column 0, row 0) and a world weather overlay (WW) @ position c1r0 (column 1, row 0). The submenu is only supported at position 0,0 but WW for example supports all positions. If you set it to the rightmost column (c2) it will only show the current conditions.</p><p> </p><p>Each overlay needs 9 conditional controls that are visible (in position 2000,2000, so off screen) if one of the positions is selected.</p><p>[CODE] <!-- Positional Controls --></p><p> <control Style="hiddenStyle"></p><p> <description>Pos 0,0</description></p><p> <id>12001</id></p><p> <type>label</type></p><p> <visible>string.equals(#BasicHome.Current.c0r0,LMUSIC)</visible></p><p> </control></p><p> <control Style="hiddenStyle"></p><p> <description>Pos 0,1</description></p><p> <id>12002</id></p><p> <type>label</type></p><p> <visible>string.equals(#BasicHome.Current.c0r1,LMUSIC)</visible></p><p> </control></p><p>...</p><p>[/CODE]</p><p> </p><p>a group control which is only visible if one of the positional controls is visible. It is also animated to the correct place on screen depending on the visibility of the fields (never set more than one, it will result in strangeness)</p><p>[CODE] <control></p><p> <type>group</type></p><p> <id>12000</id></p><p> <dimColor>FFFFFFFF</dimColor></p><p> <animation effect="slide" time="1" delay="11" start="0,0" end="0,0" condition="control.isvisible(12001)">conditional</animation></p><p> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12001)">conditional</animation></p><p> <animation effect="slide" time="1" delay="11" start="0,0" end="0,142" condition="control.isvisible(12002)">conditional</animation></p><p> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12002)">conditional</animation></p><p> <animation effect="slide" time="1" delay="11" start="0,0" end="0,285" condition="control.isvisible(12003)">conditional</animation></p><p> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12003)">conditional</animation></p><p> </p><p> <animation effect="slide" time="1" delay="11" start="0,0" end="420,0" condition="control.isvisible(12004)">conditional</animation></p><p> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12004)">conditional</animation></p><p> <animation effect="slide" time="1" delay="11" start="0,0" end="420,142" condition="control.isvisible(12005)">conditional</animation></p><p> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12005)">conditional</animation></p><p> <animation effect="slide" time="1" delay="11" start="0,0" end="420,285" condition="control.isvisible(12006)">conditional</animation></p><p> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12006)">conditional</animation></p><p> </p><p> <animation effect="slide" time="1" delay="11" start="0,0" end="840,0" condition="control.isvisible(12007)">conditional</animation></p><p> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12007)">conditional</animation></p><p> <animation effect="slide" time="1" delay="11" start="0,0" end="840,142" condition="control.isvisible(12008)">conditional</animation></p><p> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12008)">conditional</animation></p><p> <animation effect="slide" time="1" delay="11" start="0,0" end="840,285" condition="control.isvisible(12009)">conditional</animation></p><p> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12009)">conditional</animation></p><p> </p><p> <animation effect="fade" time="200" delay="20" easing="inout" condition="true">Visible</animation></p><p> <animation effect="fade" time="200" easing="inout" condition="true">Hidden</animation></p><p> <posX>0</posX></p><p> <posY>0</posY></p><p> <visible>control.isvisible(12001)|control.isvisible(12002)|control.isvisible(12003)|control.isvisible(12004)|control.isvisible(12005)|control.isvisible(12006)</visible></p><p>...</p><p> </control></p><p>[/CODE]</p><p> </p><p>The fade animations reduce the intermediate visibility (it still happens sometimes, but not often anymore). I have not touched focus handling yet, except some tests which were not successful.</p><p> </p><p>I also adapted myHome and myHomePlugins.xml to have the same look as BasicHome. For good feedback to the user I included a large (96 point!) display of the currently selected item. I think this will be a general look in this skin.</p><p> </p><p>Current situation, first 2 basic home, last plugin home:</p><p> </p><p> </p><p> </p><p>[ATTACH=full]130700[/ATTACH] [ATTACH=full]130701[/ATTACH] [ATTACH=full]130702[/ATTACH]</p></blockquote><p></p>
[QUOTE="mbuzina, post: 1002829, member: 12382"] OK, next up: General configuration of Overlays / Menu [SIZE=5]Configurability of Overlays/Submenu[/SIZE] [SIZE=3]OK, now I added the following to SkinSettings for each menu entry:[/SIZE] [CODE] <entry name="#BasicHome.B1.Label">TV</entry> <entry name="#BasicHome.B1.Hyperlink">1</entry> <entry name="#BasicHome.B1.HyperlinkParameter"></entry> <entry name="#BasicHome.B1.Background">hover_my tv.png</entry> <entry name="#BasicHome.B1.c0r0">SUB</entry> <entry name="#BasicHome.B1.c1r0">WW</entry> <entry name="#BasicHome.B1.c2r0"></entry> <entry name="#BasicHome.B1.c0r1"></entry> <entry name="#BasicHome.B1.c1r1"></entry> <entry name="#BasicHome.B1.c2r1"></entry> <entry name="#BasicHome.B1.c0r2"></entry> <entry name="#BasicHome.B1.c1r2"></entry> <entry name="#BasicHome.B1.c2r2"></entry> <entry name="#BasicHome.B1.0.Label">EPG</entry> <entry name="#BasicHome.B1.1.Label">Clickfinder</entry> <entry name="#BasicHome.B1.2.Label">Recorded Programs</entry> <entry name="#BasicHome.B1.3.Label">Scheduled Recordings</entry> <entry name="#BasicHome.B1.4.Label"></entry> <entry name="#BasicHome.B1.5.Label"></entry> <entry name="#BasicHome.B1.6.Label"></entry> <entry name="#BasicHome.B1.7.Label"></entry> <entry name="#BasicHome.B1.8.Label"></entry> <entry name="#BasicHome.B1.9.Label"></entry> [/CODE] AS you can see a few things have changed. Each basic home button now has 9 c0r0 - c2r2 entries. This TV entry has a submenu (SUB) @ position c0r0 (column 0, row 0) and a world weather overlay (WW) @ position c1r0 (column 1, row 0). The submenu is only supported at position 0,0 but WW for example supports all positions. If you set it to the rightmost column (c2) it will only show the current conditions. Each overlay needs 9 conditional controls that are visible (in position 2000,2000, so off screen) if one of the positions is selected. [CODE] <!-- Positional Controls --> <control Style="hiddenStyle"> <description>Pos 0,0</description> <id>12001</id> <type>label</type> <visible>string.equals(#BasicHome.Current.c0r0,LMUSIC)</visible> </control> <control Style="hiddenStyle"> <description>Pos 0,1</description> <id>12002</id> <type>label</type> <visible>string.equals(#BasicHome.Current.c0r1,LMUSIC)</visible> </control> ... [/CODE] a group control which is only visible if one of the positional controls is visible. It is also animated to the correct place on screen depending on the visibility of the fields (never set more than one, it will result in strangeness) [CODE] <control> <type>group</type> <id>12000</id> <dimColor>FFFFFFFF</dimColor> <animation effect="slide" time="1" delay="11" start="0,0" end="0,0" condition="control.isvisible(12001)">conditional</animation> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12001)">conditional</animation> <animation effect="slide" time="1" delay="11" start="0,0" end="0,142" condition="control.isvisible(12002)">conditional</animation> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12002)">conditional</animation> <animation effect="slide" time="1" delay="11" start="0,0" end="0,285" condition="control.isvisible(12003)">conditional</animation> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12003)">conditional</animation> <animation effect="slide" time="1" delay="11" start="0,0" end="420,0" condition="control.isvisible(12004)">conditional</animation> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12004)">conditional</animation> <animation effect="slide" time="1" delay="11" start="0,0" end="420,142" condition="control.isvisible(12005)">conditional</animation> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12005)">conditional</animation> <animation effect="slide" time="1" delay="11" start="0,0" end="420,285" condition="control.isvisible(12006)">conditional</animation> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12006)">conditional</animation> <animation effect="slide" time="1" delay="11" start="0,0" end="840,0" condition="control.isvisible(12007)">conditional</animation> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12007)">conditional</animation> <animation effect="slide" time="1" delay="11" start="0,0" end="840,142" condition="control.isvisible(12008)">conditional</animation> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12008)">conditional</animation> <animation effect="slide" time="1" delay="11" start="0,0" end="840,285" condition="control.isvisible(12009)">conditional</animation> <animation effect="fade" time="180" delay="20" start="0" end="100" reversible="false" condition="control.isvisible(12009)">conditional</animation> <animation effect="fade" time="200" delay="20" easing="inout" condition="true">Visible</animation> <animation effect="fade" time="200" easing="inout" condition="true">Hidden</animation> <posX>0</posX> <posY>0</posY> <visible>control.isvisible(12001)|control.isvisible(12002)|control.isvisible(12003)|control.isvisible(12004)|control.isvisible(12005)|control.isvisible(12006)</visible> ... </control> [/CODE] The fade animations reduce the intermediate visibility (it still happens sometimes, but not often anymore). I have not touched focus handling yet, except some tests which were not successful. I also adapted myHome and myHomePlugins.xml to have the same look as BasicHome. For good feedback to the user I included a large (96 point!) display of the currently selected item. I think this will be a general look in this skin. Current situation, first 2 basic home, last plugin home: [ATTACH=full]130700[/ATTACH] [ATTACH=full]130701[/ATTACH] [ATTACH=full]130702[/ATTACH] [/QUOTE]
Insert quotes…
Verification
Post reply
Forums
MediaPortal 1
MediaPortal 1 Skins
Building a skin from scratch - a tour -
Contact us
RSS
Top
Bottom