Widget Info
Rozšíření Estuary, které zajistí, že se při prohlížení seznamů Filmů nebo Seriálů na hlavní obrazovce zobrazí v levém sloupci, který překrývá hlavní menu, detail o právě vybraném filmu, kolekcí, seriálu nebo epizodě. Při realizaci jsme narazil na několik známých omezení, takže řešení není tak elegantní jak by mohlo být, ale funguje. A to je to hlavní.
[attachment=2383][attachment=2384][attachment=2385][attachment=2386]
Edituje se Includes_Home.xml, kde se přidá zcela nový widget s názvem WidgetInfo a Home.xml, kde se přidá animace pozadí pro WidgetInfo a výběr zobrazení podle zvoleného položky a předání parametrů právě pro WidgetInfo.
Postup je následující:
1. Do Includes_Home.xml přidáte na konec, tedy před poslední uzavírací tag </includes>, kód WidgetInfo začínající <include name="WidgetInfo">:
2. Do Home.xml přidáte za níže uvedenou sekvenci kódu:
novou část kódu, začínající <control type="group">:
Rozšíření Estuary, které zajistí, že se při prohlížení seznamů Filmů nebo Seriálů na hlavní obrazovce zobrazí v levém sloupci, který překrývá hlavní menu, detail o právě vybraném filmu, kolekcí, seriálu nebo epizodě. Při realizaci jsme narazil na několik známých omezení, takže řešení není tak elegantní jak by mohlo být, ale funguje. A to je to hlavní.
[attachment=2383][attachment=2384][attachment=2385][attachment=2386]
Edituje se Includes_Home.xml, kde se přidá zcela nový widget s názvem WidgetInfo a Home.xml, kde se přidá animace pozadí pro WidgetInfo a výběr zobrazení podle zvoleného položky a předání parametrů právě pro WidgetInfo.
Postup je následující:
1. Do Includes_Home.xml přidáte na konec, tedy před poslední uzavírací tag </includes>, kód WidgetInfo začínající <include name="WidgetInfo">:
Kód:
<include name="WidgetInfo"> <!-- Easy+ Selected Item Info -->
<param name="episode">false</param>
<definition>
<control type="grouplist">
<left>10</left>
<top>100</top>
<bottom>40</bottom>
<visible>Control.HasFocus($PARAM[container_id])</visible>
<control type="textbox">
<height>100</height>
<width>442</width>
<aligny>center</aligny>
<scroll>true</scroll>
<font>font36_title</font>
<label>$INFO[Container($PARAM[container_id]).ListItem.Label]</label>
<shadowcolor>text_shadow</shadowcolor>
<autoscroll delay="5000" time="1500" repeat="5000">Skin.HasSetting(autoscroll)</autoscroll>
<visible>!$PARAM[episode]</visible>
</control>
<control type="textbox">
<height>100</height>
<width>442</width>
<aligny>center</aligny>
<font>font36_title</font>
<label>$INFO[Container($PARAM[container_id]).ListItem.TVShowTitle] $INFO[Container($PARAM[container_id]).ListItem.Label]</label>
<shadowcolor>text_shadow</shadowcolor>
<autoscroll delay="5000" time="1500" repeat="5000">Skin.HasSetting(autoscroll)</autoscroll>
<visible>$PARAM[episode]</visible>
</control>
<control type="label">
<height>50</height>
<width>442</width>
<aligny>center</aligny>
<font>font37</font>
<label color=grey>($INFO[Container($PARAM[container_id]).ListItem.Year])</label>
<shadowcolor>text_shadow</shadowcolor>
<visible>!String.IsEmpty(Container($PARAM[container_id]).ListItem.Year) + !Container($PARAM[container_id]).ListItem.IsCollection</visible>
</control>
<control type="image">
<height>320</height>
<width>442</width>
<aspectratio aligny="center" align="left">keep</aspectratio>
<texture background="true">$INFO[Container($PARAM[container_id]).ListItem.Art(fanart)]</texture>
<visible>!String.IsEmpty(Container($PARAM[container_id]).ListItem.Art(fanart))</visible>
</control>
<control type="textbox">
<height>450</height>
<width>442</width>
<label>$INFO[Container($PARAM[container_id]).ListItem.Tagline,[I],[/I][CR][CR]]$INFO[Container($PARAM[container_id]).ListItem.Plot][CR][CR]</label>
<shadowcolor>text_shadow</shadowcolor>
¨ <autoscroll delay="10000" time="3000" repeat="10000">Skin.HasSetting(autoscroll)</autoscroll>
<visible>!Container($PARAM[container_id]).ListItem.IsCollection</visible>
</control>
<control type="panel">
<height>490</height>
<width>442</width>
<orientation>vertical</orientation>
<autoscroll delay="10000" time="3000" repeat="10000">Skin.HasSetting(autoscroll)</autoscroll>
<visible>Container($PARAM[container_id]).ListItem.IsCollection</visible>
<focusedlayout height="40" width="442">
<control type="label">
<label>$INFO[ListItem.Year,[color=#000000],[/color] - ]$INFO[ListItem.Label]</label>
<shadowcolor>text_shadow</shadowcolor>
</control>
</focusedlayout>
<itemlayout height="40" width="442">
<control type="label">
<label>$INFO[ListItem.Year,[color=#000000],[/color] - ]$INFO[ListItem.Label]</label>
<shadowcolor>text_shadow</shadowcolor>
</control>
</itemlayout>
<content sortby="year" sortorder="descending">$INFO[Container($PARAM[container_id]).ListItem.FolderPath]</content>
</control>
</control>
</definition>
</include>
2. Do Home.xml přidáte za níže uvedenou sekvenci kódu:
Kód:
<include content="IconButton">
<param name="control_id" value="803" />
<param name="onclick" value="Fullscreen" />
<param name="icon" value="icons/now-playing/fullscreen.png" />
<param name="label" value="$LOCALIZE[31000]" />
<param name="visible" value="Player.HasMedia" />
</include>
</control>
</control>
novou část kódu, začínající <control type="group">:
Kód:
<control type="group">
<visible>Control.HasFocus(5100) | Control.HasFocus(5200) | Control.HasFocus(5300) | Control.HasFocus(5400) | Control.HasFocus(5600) | Control.HasFocus(6100) | Control.HasFocus(6200) | Control.HasFocus(6300)</visible>
<animation type="Visible">
<effect type="fade" start="0" end="100" time="300" tween="sine" easing="out" />
<effect type="slide" start="-320" end="0" time="400" tween="cubic" easing="out" />
</animation>
<animation type="Hidden">
<effect type="fade" start="100" end="0" time="300" tween="sine" easing="out" />
<effect type="slide" start="0" end="-320" time="300" tween="cubic" easing="out" />
</animation>
<left>0</left>
<top>0</top>
<control type="image">
<width>462</width>
<bottom>0</bottom>
<texture>colors/black.png</texture>
</control>
<include content="WidgetInfo">
<param name="container_id" value="5100" />
</include>
<include content="WidgetInfo">
<param name="container_id" value="5200" />
</include>
<include content="WidgetInfo">
<param name="container_id" value="5300" />
</include>
<include content="WidgetInfo">
<param name="container_id" value="5400" />
</include>
<include content="WidgetInfo">
<param name="container_id" value="5600" />
</include>
<include content="WidgetInfo">
<param name="container_id" value="6100" />
</include>
<include content="WidgetInfo">
<param name="container_id" value="6200" />
<param name="episode" value="true" />
</include>
<include content="WidgetInfo">
<param name="container_id" value="6300" />
</include>
</control>