diff options
author | jjd-uk <jjd-uk@kodi.tv> | 2024-01-03 11:49:29 +0000 |
---|---|---|
committer | jjd-uk <jjd-uk@kodi.tv> | 2024-01-03 11:49:57 +0000 |
commit | b58c950e478f5c1c46ad0ce6d9c50ad091480caf (patch) | |
tree | 3dd9955d69c81132cb539bec31e34f8f05d3e2c3 | |
parent | 7413267da70dbb26dcdfbe5e86244343c3716de7 (diff) |
[Estuary] Video Versions Dialog Redesign
-rw-r--r-- | addons/skin.estuary/xml/DialogSelect.xml | 3 | ||||
-rw-r--r-- | addons/skin.estuary/xml/DialogVideoManager.xml | 94 | ||||
-rw-r--r-- | addons/skin.estuary/xml/Includes.xml | 99 | ||||
-rw-r--r-- | addons/skin.estuary/xml/Includes_DialogSelect.xml | 83 | ||||
-rw-r--r-- | addons/skin.estuary/xml/Variables.xml | 112 |
5 files changed, 335 insertions, 56 deletions
diff --git a/addons/skin.estuary/xml/DialogSelect.xml b/addons/skin.estuary/xml/DialogSelect.xml index 41dec16022..674ec50de1 100644 --- a/addons/skin.estuary/xml/DialogSelect.xml +++ b/addons/skin.estuary/xml/DialogSelect.xml @@ -4,11 +4,12 @@ <include>Animation_DialogPopupOpenClose</include> <depth>DepthOSD</depth> <controls> - <include condition="![Window.IsActive(gamesaves) | Window.IsActive(gamestretchmode) | Window.IsActive(gamevideofilter) | Window.IsActive(gamevideorotation) | Window.IsActive(ingamesaves)]">DefaultDialogSelectLayout</include> + <include condition="![Window.IsActive(selectvideoversion) | Window.IsActive(gamesaves) | Window.IsActive(gamestretchmode) | Window.IsActive(gamevideofilter) | Window.IsActive(gamevideorotation) | Window.IsActive(ingamesaves)]">DefaultDialogSelectLayout</include> <include condition="Window.IsActive(gamesaves)">GameDialogSelectSaveLayout</include> <include condition="Window.IsActive(gamevideofilter)">GameDialogSelectFilterLayout</include> <include condition="Window.IsActive(gamestretchmode)">GameDialogSelectViewLayout</include> <include condition="Window.IsActive(gamevideorotation)">GameDialogSelectViewLayout</include> <include condition="Window.IsActive(ingamesaves)">GameDialogSelectSaveInGameLayout</include> + <include condition="Window.IsActive(selectvideoversion)">VideoSelectLayout</include> </controls> </window> diff --git a/addons/skin.estuary/xml/DialogVideoManager.xml b/addons/skin.estuary/xml/DialogVideoManager.xml index df9c58e51c..049392b71c 100644 --- a/addons/skin.estuary/xml/DialogVideoManager.xml +++ b/addons/skin.estuary/xml/DialogVideoManager.xml @@ -5,83 +5,81 @@ <control type="group"> <centertop>50%</centertop> <centerleft>50%</centerleft> - <width>1320</width> - <height>710</height> + <width>1640</width> + <height>780</height> <include>Animation_DialogPopupVisible</include> <include content="DialogBackgroundCommons"> - <param name="width" value="1320" /> - <param name="height" value="710" /> + <param name="width" value="1640" /> + <param name="height" value="780" /> <param name="header_id" value="2" /> </include> <control type="image"> - <top>200</top> - <left>40</left> - <width>260</width> - <height>390</height> - <align>center</align> - <aligny>center</aligny> - <aspectratio>keep</aspectratio> - <texture fallback="DefaultVideo.png" background="true">$VAR[VideoVersionPosterVar]</texture> + <left>20</left> + <width>400</width> + <height>630</height> + <top>100</top> + <texture>$VAR[VideoListPosterVar]</texture> + <aspectratio aligny="top">keep</aspectratio> + </control> + <control type="label"> + <description>Path label</description> + <left>20</left> + <bottom>10</bottom> + <width>1300</width> + <height>30</height> + <font>font12</font> + <align>right</align> + <aligny>bottom</aligny> + <textcolor>grey</textcolor> + <label>$INFO[Container(50).ListItem.FileNameAndPath]</label> + </control> + <control type="label"> + <right>20</right> + <bottom>10</bottom> + <width>275</width> + <height>30</height> + <font>font12</font> + <align>right</align> + <aligny>bottom</aligny> + <textcolor>grey</textcolor> + <label>$VAR[SelectLabel]</label> </control> <control type="group" id="100"> - <top>90</top> - <left>320</left> + <top>80</top> + <left>420</left> <control type="image"> - <top>0</top> <left>0</left> - <width>680</width> - <height>600</height> - <texture border="21">dialogs/dialog-bg.png</texture> + <top>0</top> + <width>920</width> + <height>665</height> + <texture border="40">buttons/dialogbutton-nofo.png</texture> </control> <control type="list" id="50"> <description>version list</description> <top>20</top> <left>20</left> - <height>580</height> + <height>625</height> <onup>50</onup> <ondown>50</ondown> - <onleft>200</onleft> + <onleft>9001</onleft> <onright>60</onright> <pagecontrol>60</pagecontrol> <scrolltime>200</scrolltime> - <include content="DefaultSimpleListLayout"> - <param name="width" value="640" /> - <param name="height" value="80" /> - <param name="list_id" value="50" /> - <param name="align" value="left" /> - </include> + <include>MediaInfoListLayout</include> </control> <control type="scrollbar" id="60"> - <left>660</left> + <left>900</left> <top>20</top> <width>12</width> - <height>560</height> + <height>625</height> <onleft>50</onleft> <onright>101</onright> <orientation>vertical</orientation> </control> </control> - <control type="label"> - <visible>Control.HasFocus(50)</visible> - <align>left</align> - <top>675</top> - <left>40</left> - <right>40</right> - <height>44</height> - <scroll>true</scroll> - <font>font20_title</font> - <textcolor>99FFFFFF</textcolor> - <shadowcolor>text_shadow</shadowcolor> - <haspath>false</haspath> - <label>$VAR[VideoVersionFileVar]</label> - <animation effect="fade" start="0" end="100" time="300" delay="300">WindowOpen</animation> - <animation effect="fade" start="100" end="0" time="200">WindowClose</animation> - <animation effect="fade" start="0" end="100" time="300">Visible</animation> - <animation effect="fade" start="100" end="0" time="200">Hidden</animation> - </control> <control type="grouplist" id="101"> - <left>1000</left> - <top>90</top> + <left>1340</left> + <top>80</top> <width>300</width> <height>565</height> <onleft condition="Integer.IsGreater(Container(50).NumItems,0)">100</onleft> diff --git a/addons/skin.estuary/xml/Includes.xml b/addons/skin.estuary/xml/Includes.xml index 6597627bd0..21ad65a616 100644 --- a/addons/skin.estuary/xml/Includes.xml +++ b/addons/skin.estuary/xml/Includes.xml @@ -1690,4 +1690,103 @@ </control> </focusedlayout> </include> + <include name="MediaInfoListLayout"> + <param name="height">125</param> + <param name="width">880</param> + <param name="thumbtexture">$VAR[VideoListThumbVar]</param> + <param name="font_1">font14</param> + <param name="font_2">font12</param> + <param name="label_1">$INFO[ListItem.Label]</param> + <param name="label_2">$INFO[ListItem.Duration,$LOCALIZE[180]: ]</param> + <param name="label_3">$VAR[VideoCodecVar,, ]$INFO[ListItem.VideoResolution,| , ]$VAR[VideoResolutionTypeVar,, ]$VAR[VideoHDRVar,| , ]$INFO[ListItem.VideoAspect,| ,:1 ]$VAR[AudioCodecVar,| , ]$VAR[AudioChannelsVar]</param> + <param name="fontcolor">grey</param> + <definition> + <itemlayout height="$PARAM[height]" width="$PARAM[width]"> + <control type="image"> + <left>12</left> + <top>7</top> + <width>110</width> + <height>110</height> + <texture>$PARAM[thumbtexture]</texture> + <aspectratio>keep</aspectratio> + </control> + <control type="label"> + <left>135</left> + <top>0</top> + <right>20</right> + <height>60</height> + <font>$PARAM[font_1]</font> + <aligny>center</aligny> + <textcolor>$PARAM[fontcolor]</textcolor> + <label>$PARAM[label_1]</label> + </control> + <control type="label"> + <left>135</left> + <top>50</top> + <right>20</right> + <height>35</height> + <font>$PARAM[font_2]</font> + <aligny>center</aligny> + <textcolor>$PARAM[fontcolor]</textcolor> + <label>$PARAM[label_2]</label> + </control> + <control type="label"> + <left>135</left> + <top>85</top> + <right>20</right> + <height>30</height> + <font>$PARAM[font_2]</font> + <aligny>center</aligny> + <textcolor>$PARAM[fontcolor]</textcolor> + <label>$PARAM[label_3]</label> + </control> + </itemlayout> + <focusedlayout height="$PARAM[height]" width="$PARAM[width]"> + <control type="image"> + <left>0</left> + <top>0</top> + <right>0</right> + <bottom>0</bottom> + <texture colordiffuse="button_focus">lists/focus.png</texture> + <animation effect="fade" start="100" end="50" time="0">UnFocus</animation> + </control> + <control type="image"> + <left>12</left> + <top>7</top> + <width>110</width> + <height>110</height> + <texture>$PARAM[thumbtexture]</texture> + <aspectratio>keep</aspectratio> + </control> + <control type="label"> + <left>135</left> + <top>0</top> + <right>20</right> + <height>60</height> + <aligny>center</aligny> + <scroll>true</scroll> + <font>$PARAM[font_1]</font> + <label>$PARAM[label_1]</label> + </control> + <control type="label"> + <left>135</left> + <top>50</top> + <right>20</right> + <height>35</height> + <font>$PARAM[font_2]</font> + <aligny>center</aligny> + <label>$PARAM[label_2]</label> + </control> + <control type="label"> + <left>135</left> + <top>85</top> + <right>20</right> + <height>30</height> + <font>$PARAM[font_2]</font> + <aligny>center</aligny> + <label>$PARAM[label_3]</label> + </control> + </focusedlayout> + </definition> + </include> </includes> diff --git a/addons/skin.estuary/xml/Includes_DialogSelect.xml b/addons/skin.estuary/xml/Includes_DialogSelect.xml index 9e3848b9e5..3ee9240ba3 100644 --- a/addons/skin.estuary/xml/Includes_DialogSelect.xml +++ b/addons/skin.estuary/xml/Includes_DialogSelect.xml @@ -711,4 +711,87 @@ </control> </control> </include> + <include name="VideoSelectLayout"> + <control type="group"> + <centertop>50%</centertop> + <centerleft>50%</centerleft> + <height>750</height> + <width>1640</width> + <include content="DialogBackgroundCommons"> + <param name="width" value="1640" /> + <param name="height" value="750" /> + <param name="header_id" value="1" /> + </include> + <control type="image"> + <left>20</left> + <width>400</width> + <height>630</height> + <top>100</top> + <texture>$VAR[VideoListPosterVar]</texture> + <aspectratio aligny="top">keep</aspectratio> + </control> + <control type="image"> + <left>420</left> + <top>80</top> + <width>920</width> + <height>665</height> + <texture border="40">buttons/dialogbutton-nofo.png</texture> + </control> + <control type="list" id="3"> + </control> + <control type="list" id="6"> + <left>440</left> + <top>100</top> + <width>920</width> + <height>625</height> + <onup>6</onup> + <ondown>6</ondown> + <onleft>9001</onleft> + <onright>61</onright> + <pagecontrol>61</pagecontrol> + <scrolltime>200</scrolltime> + <include>MediaInfoListLayout</include> + </control> + <control type="scrollbar" id="61"> + <left>1320</left> + <top>100</top> + <width>12</width> + <bottom>20</bottom> + <onleft>6</onleft> + <onright>9001</onright> + <orientation>vertical</orientation> + </control> + <control type="grouplist" id="9001"> + <left>1340</left> + <top>80</top> + <onleft>61</onleft> + <itemgap>dialogbuttons_itemgap</itemgap> + <onright>6</onright> + <include content="DefaultDialogButton"> + <param name="id" value="5" /> + <param name="label" value="" /> + <param name="visible" value="false" /> + </include> + <include content="DefaultDialogButton"> + <param name="id" value="8" /> + <param name="label" value="" /> + <param name="visible" value="false" /> + </include> + <include content="DefaultDialogButton"> + <param name="id" value="7" /> + <param name="label" value="$LOCALIZE[222]" /> + </include> + </control> + <control type="label"> + <right>20</right> + <bottom>10</bottom> + <width>275</width> + <height>35</height> + <font>font12</font> + <align>right</align> + <textcolor>grey</textcolor> + <label>$VAR[SelectLabel]</label> + </control> + </control> + </include> </includes> diff --git a/addons/skin.estuary/xml/Variables.xml b/addons/skin.estuary/xml/Variables.xml index a2bd7a2ed5..7b61013ae9 100644 --- a/addons/skin.estuary/xml/Variables.xml +++ b/addons/skin.estuary/xml/Variables.xml @@ -115,6 +115,7 @@ <value>$INFO[ListItem.Plot]</value> </variable> <variable name="SelectLabel"> + <value condition="Control.IsVisible(50)">[COLOR=button_focus]$INFO[Container(50).NumItems][/COLOR] $LOCALIZE[31036] - [COLOR=button_focus]$INFO[Container(50).CurrentPage]/$INFO[Container(50).NumPages][/COLOR]</value> <value condition="Control.IsVisible(3)">[COLOR=button_focus]$INFO[Container(3).NumItems][/COLOR] $LOCALIZE[31036] - [COLOR=button_focus]$INFO[Container(3).CurrentPage]/$INFO[Container(3).NumPages][/COLOR]</value> <value>[COLOR=button_focus]$INFO[Container(6).NumItems][/COLOR] $LOCALIZE[31036] - [COLOR=button_focus]$INFO[Container(6).CurrentPage]/$INFO[Container(6).NumPages][/COLOR]</value> </variable> @@ -676,12 +677,109 @@ <value condition="VideoPlayer.SubtitlesEnabled">[B]$INFO[VideoPlayer.SubtitlesLanguage][/B]</value> <value>[B]$LOCALIZE[1223][/B]</value> </variable> - <variable name="VideoVersionPosterVar"> - <value condition="!String.IsEmpty(Container(50).ListItem.Art(poster))">$INFO[Container(50).ListItem.Art(poster)]</value> - <value condition="!String.IsEmpty(Container(50).ListItem.Art(thumb))">$INFO[Container(50).ListItem.Art(thumb)]</value> - </variable> - <variable name="VideoVersionFileVar"> - <value condition="Control.HasFocus(50)">$INFO[Container(50).ListItem.FileNameAndPath]</value> - <value>$INFO[ListItem.FileNameAndPath]</value> + <variable name="VideoListPosterVar"> + <value condition="!String.IsEmpty(container(6).listitem.art(poster))">$INFO[container(6).listitem.art(poster)]</value> + <value condition="!String.IsEmpty(container(6).listitem.art(thumb))">$INFO[container(6).listitem.art(thumb)]</value> + <value condition="!String.IsEmpty(container(50).listitem.art(poster))">$INFO[container(50).listitem.art(poster)]</value> + <value condition="!String.IsEmpty(container(50).listitem.art(thumb))">$INFO[container(50).listitem.art(thumb)]</value> + <value condition="String.IsEmpty(Listitem.Art(poster))">$INFO[Listitem.Art(poster)]</value> + <value>$INFO[ListItem.Icon]</value> + </variable> + <variable name="VideoListThumbVar"> + <value condition="!String.IsEmpty(Listitem.Art(landscape))">$INFO[Listitem.Art(landscape)]</value> + <value condition="!String.IsEmpty(Listitem.Art(fanart))">$INFO[Listitem.Art(fanart)]</value> + <value condition="!String.IsEmpty(Listitem.Art(thumb))">$INFO[Listitem.Art(thumb)]</value> + <value>$INFO[ListItem.Icon]</value> + </variable> + <variable name="VideoResolutionTypeVar"> + <value condition="String.IsEqual(ListItem.VideoResolution,480)">SD</value> + <value condition="String.IsEqual(ListItem.VideoResolution,540)">SD</value> + <value condition="String.IsEqual(ListItem.VideoResolution,576)">SD</value> + <value condition="String.IsEqual(ListItem.VideoResolution,720)">HD</value> + <value condition="String.IsEqual(ListItem.VideoResolution,1080)">HD</value> + <value condition="String.IsEqual(ListItem.VideoResolution,4K)">UHD</value> + <value condition="String.IsEqual(ListItem.VideoResolution,8K)">UHD</value> + </variable> + <variable name="VideoCodecVar"> + <value condition="String.IsEqual(ListItem.VideoCodec,av1)">AV1</value> + <value condition="String.IsEqual(ListItem.VideoCodec,avc1)">AVC-1</value> + <value condition="String.IsEqual(ListItem.VideoCodec,div3)">DivX</value> + <value condition="String.IsEqual(ListItem.VideoCodec,divx)">DivX</value> + <value condition="String.IsEqual(ListItem.VideoCodec,dx50)">DivX</value> + <value condition="String.IsEqual(ListItem.VideoCodec,flv)">FLV</value> + <value condition="String.IsEqual(ListItem.VideoCodec,h264)">H.264</value> + <value condition="String.IsEqual(ListItem.VideoCodec,hev1)">H.265</value> + <value condition="String.IsEqual(ListItem.VideoCodec,hevc)">H.265</value> + <value condition="String.IsEqual(ListItem.VideoCodec,hvc1)">H.265</value> + <value condition="String.IsEqual(ListItem.VideoCodec,mpeg1)">MPEG-1</value> + <value condition="String.IsEqual(ListItem.VideoCodec,mpeg2)">MPEG-2</value> + <value condition="String.IsEqual(ListItem.VideoCodec,mpeg2video)">MPEG-2</value> + <value condition="String.IsEqual(ListItem.VideoCodec,mp4v)">MPEG-4</value> + <value condition="String.IsEqual(ListItem.VideoCodec,mpeg4)">MPEG-4</value> + <value condition="String.IsEqual(ListItem.VideoCodec,theora)">Theora</value> + <value condition="String.IsEqual(ListItem.VideoCodec,vc1)">VC-1</value> + <value condition="String.IsEqual(ListItem.VideoCodec,vc-1)">VC-1</value> + <value condition="String.IsEqual(ListItem.VideoCodec,vp8)">VP8</value> + <value condition="String.IsEqual(ListItem.VideoCodec,vp9)">VP9</value> + <value condition="String.IsEqual(ListItem.VideoCodec,wmv)">WMV</value> + <value condition="String.IsEqual(ListItem.VideoCodec,wmv3)">WMV</value> + <value condition="String.IsEqual(ListItem.VideoCodec,wvc1)">VC-1</value> + <value condition="String.IsEqual(ListItem.VideoCodec,xvid)">XviD</value> + <value>$INFO[ListItem.VideoCodec]</value> + </variable> + <variable name="VideoHDRVar"> + <value condition="String.IsEqual(ListItem.HdrType,dolbyvision)">Dolby Vision</value> + <value condition="String.IsEqual(ListItem.HdrType,hdr10)">HDR10</value> + <value condition="String.IsEqual(ListItem.HdrType,hlg)">HLG</value> + <value>$INFO[ListItem.HdrType]</value> + </variable> + <variable name="AudioCodecVar"> + <value condition="String.IsEqual(ListItem.AudioCodec,aac)">AAC</value> + <value condition="String.IsEqual(ListItem.AudioCodec,aac_latm)">AAC</value> + <value condition="String.IsEqual(ListItem.AudioCodec,ac3)">Dolby D</value> + <value condition="String.IsEqual(ListItem.AudioCodec,aif)">AIFF</value> + <value condition="String.IsEqual(ListItem.AudioCodec,aifc)">AIFF</value> + <value condition="String.IsEqual(ListItem.AudioCodec,aiff)">AIFF</value> + <value condition="String.IsEqual(ListItem.AudioCodec,alac)">ALAC</value> + <value condition="String.IsEqual(ListItem.AudioCodec,ape)">APE</value> + <value condition="String.IsEqual(ListItem.AudioCodec,avc)">AVC</value> + <value condition="String.IsEqual(ListItem.AudioCodec,cdda)">CDDA</value> + <value condition="String.IsEqual(ListItem.AudioCodec,dca)">DTS</value> + <value condition="String.IsEqual(ListItem.AudioCodec,dolbydigital)">Dolby D</value> + <value condition="String.IsEqual(ListItem.AudioCodec,dts)">DTS</value> + <value condition="String.IsEqual(ListItem.AudioCodec,dtshd_hra)">DTSHD-HRA</value> + <value condition="String.IsEqual(ListItem.AudioCodec,dtshd_ma)">DTSHD-MA</value> + <value condition="String.IsEqual(ListItem.AudioCodec,dtsma)">DTSHD-MA</value> + <value condition="String.IsEqual(ListItem.AudioCodec,eac3)">Dolby D+</value> + <value condition="String.IsEqual(ListItem.AudioCodec,flac)">FLAC</value> + <value condition="String.IsEqual(ListItem.AudioCodec,mp1)">MP1</value> + <value condition="String.IsEqual(ListItem.AudioCodec,mp3)">MP3</value> + <value condition="String.IsEqual(ListItem.AudioCodec,mp3float)">MP3</value> + <value condition="String.IsEqual(ListItem.AudioCodec,ogg)">OGG</value> + <value condition="String.IsEqual(ListItem.AudioCodec,opus)">OPUS</value> + <value condition="String.IsEqual(ListItem.AudioCodec,pcm)">PCM</value> + <value condition="String.IsEqual(ListItem.AudioCodec,pcm_bluray)">PCM</value> + <value condition="String.IsEqual(ListItem.AudioCodec,pcm_s16le)">PCM</value> + <value condition="String.IsEqual(ListItem.AudioCodec,pcm_s24le)">PCM</value> + <value condition="String.IsEqual(ListItem.AudioCodec,truehd)">TrueHD</value> + <value condition="String.IsEqual(ListItem.AudioCodec,vorbis)">Vorbis</value> + <value condition="String.IsEqual(ListItem.AudioCodec,wav)">WAV</value> + <value condition="String.IsEqual(ListItem.AudioCodec,wavpack)">WAVP</value> + <value condition="String.IsEqual(ListItem.AudioCodec,wmapro)">WMA-PRO</value> + <value condition="String.IsEqual(ListItem.AudioCodec,wmav2)">WMA</value> + <value>$INFO[ListItem.AudioCodec]</value> + </variable> + <variable name="AudioChannelsVar"> + <value condition="String.IsEqual(ListItem.AudioChannels,0)">0.0</value> + <value condition="String.IsEqual(ListItem.AudioChannels,1)">1.0</value> + <value condition="String.IsEqual(ListItem.AudioChannels,2)">2.0</value> + <value condition="String.IsEqual(ListItem.AudioChannels,3)">2.1</value> + <value condition="String.IsEqual(ListItem.AudioChannels,4)">4.0</value> + <value condition="String.IsEqual(ListItem.AudioChannels,5)">4.1</value> + <value condition="String.IsEqual(ListItem.AudioChannels,6)">5.1</value> + <value condition="String.IsEqual(ListItem.AudioChannels,7)">6.1</value> + <value condition="String.IsEqual(ListItem.AudioChannels,8)">7.1</value> + <value condition="String.IsEqual(ListItem.AudioChannels,10)">9.1</value> + <value>$INFO[ListItem.AudioChannels]</value> </variable> </includes> |