Kodi Community Forum
2 lists in one View - Printable Version

Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32)
+--- Forum: Skinning (https://forum.kodi.tv/forumdisplay.php?fid=12)
--- Thread: 2 lists in one View (/showthread.php?tid=314969)

Pages: 1 2 3 4 5


2 lists in one View - tjost - 2017-05-24

Hello,

is it possible to have 2 list in one view?

I try to build an album view and will implement the songs of the album on focus on the right. By going right you can select the song.
Is it possible?

Image


RE: 2 lists in one View - Jeroen - 2017-05-25

You can have two lists but they'll won't be "linked"


RE: 2 lists in one View - tjost - 2017-05-26

Hello, thanks for reply.
Can you explain how and what that means exactly?


RE: 2 lists in one View - Guilouz - 2017-05-27

(2017-05-26, 21:18)tjost Wrote: Hello, thanks for reply.
Can you explain how and what that means exactly?

I think that's mean the right list won't show content of item of the left list.


RE: 2 lists in one View - jurialmunkey - 2017-05-27

(2017-05-25, 21:25)Jeroen Wrote: You can have two lists but they'll won't be "linked"

Assuming the first list has a static ID then it is totally possible to link them.
Just use the following content in the song list (assuming the left album list is ID 50).

Code:
<content target="music">$INFO[Container(50).ListItem.DBID,musicdb://albums/,/]</content>



RE: 2 lists in one View - Jeroen - 2017-05-27

(2017-05-27, 04:51)jurialmunkey Wrote:
(2017-05-25, 21:25)Jeroen Wrote: You can have two lists but they'll won't be "linked"

Assuming the first list has a static ID then it is totally possible to link them.
Just use the following content in the song list (assuming the left album list is ID 50).

Code:
<content target="music">$INFO[Container(50).ListItem.DBID,musicdb://albums/,/]</content>

Heh, you're right, hadn't thought about that. Nice one Smile

I'll see myself out.


RE: 2 lists in one View - Guilouz - 2017-05-28

(2017-05-27, 04:51)jurialmunkey Wrote:
(2017-05-25, 21:25)Jeroen Wrote: You can have two lists but they'll won't be "linked"

Assuming the first list has a static ID then it is totally possible to link them.
Just use the following content in the song list (assuming the left album list is ID 50).

Code:
<content target="music">$INFO[Container(50).ListItem.DBID,musicdb://albums/,/]</content>

Thanks for give me idea for my MOD :

Image


RE: 2 lists in one View - tjost - 2017-05-28

All right, can someone give me the complete code? Guiloz maybe?
Thats the only way I understand it.
Thank you.


RE: 2 lists in one View - Guilouz - 2017-05-28

(2017-05-28, 10:35)tjost Wrote: All right, can someone give me the complete code? Guiloz maybe?
Thats the only way I understand it.
Thank you.

Here : https://github.com/Guilouz/repository.guilouz/blob/f7a392396c1c531ec70274873097dc0793b73b70/skin.estuary.modv2/xml/View_508_AlbumsAndSongs.xml


RE: 2 lists in one View - tjost - 2017-05-28

Image

Code:
<?xml version="1.0" encoding="UTF-8"?>
<includes>
    <include name="View_511_Carousell">
        <control type="group">
            <visible>Control.IsVisible(511) + !Window.IsActive(addoninformation)</visible>
            <include>Zoom</include>
            <left>ViewInfoWallLeft</left>
            <top>-65</top>
            <control type="image">
                <description>background image</description>
                <left>140</left>
                <top>1080</top>
                <width>BackPanelInfoWallSquareWidth</width>
                <height>964</height>
                <texture border="40">panel_reflect.png</texture>
            </control>
            <control type="image">
                <description>background image</description>
                <left>140</left>
                <top>148</top>
                <width>BackPanelInfoWallSquareWidth</width>
                <height>964</height>
                <texture border="40">listpanel_back.png</texture>
            </control>
            <control type="image">
                <left>1110</left>
                <width>638</width>
                <top>178</top>
                <height>898</height>
                <texture>darky.png</texture>
                <animation effect="fade" start="0" end="100" time="500" delay="500">Conditional</animation>
            </control>
            <control type="fixedlist" id="511">
                <left>170</left>
                <top>179</top>
                <width>1000</width>
                <height>900</height>
                <onleft condition="Control.IsVisible(60)">60</onleft>
                <onleft condition="!Control.IsVisible(60)">SetProperty(MediaMenu,True,home)</onleft>
                <onleft condition="!Control.IsVisible(60)">SetFocus(9050)</onleft>
                <onright>SetFocus(5081,1)</onright>
                <onup>58</onup>
                <ondown>58</ondown>
                <pagecontrol>60</pagecontrol>
                <focusposition>1</focusposition>
                <preloaditems>2</preloaditems>
                <viewtype label="Carousel">list</viewtype>
                <scrolltime tween="Bounce" easing="inout">500</scrolltime>
                <visible>Container.Content(albums) | Container.Content(addons)</visible>
                <itemlayout height="300" width="300" condition="Container.Content(albums)">
                    <control type="image">
                        <width>300</width>
                        <height>300</height>
                        <aspectratio>scale</aspectratio>
                        <texture background="true">$INFO[ListItem.Icon]</texture>
                        <bordertexture border="2">thumbs/panel_border3.png</bordertexture>
                        <bordersize>2</bordersize>
                        <colordiffuse>44ffffff</colordiffuse>
                    </control>
                    <control type="image">
                        <width>300</width>
                        <height>300</height>
                        <texture>black.png</texture>
                        <bordersize>2</bordersize>
                        <colordiffuse>44ffffff</colordiffuse>
                    </control>
                    <control type="group">
                        <top>90</top>
                        <left>321</left>
                        <control type="label">
                            <width>680</width>
                            <height>60</height>
                            <font>font16_title_bold</font>
                            <textcolor>white</textcolor>
                            <scroll>true</scroll>
                            <label>$INFO[ListItem.Album]</label>
                            <textoffsetx>15</textoffsetx>
                        <colordiffuse>44ffffff</colordiffuse>
                        </control>
                        <control type="button">
                            <top>81</top>
                            <width>680</width>
                            <label>$INFO[ListItem.Artist,,[CR]]$INFO[ListItem.Year]$INFO[ListItem.Property(Album_Label), • ]</label>
                            <include>ShowCaseInfoPanelButtonsValuesNoSeperator</include>
                            <visible>Container.Content(albums) | Container.Content(addons)</visible>
                            <colordiffuse>44ffffff</colordiffuse>
                        </control>
                    </control>
                </itemlayout>
                <focusedlayout height="300" width="1000" condition="Container.Content(albums)">
                    <control type="image">
                        <width>300</width>
                        <height>300</height>
                        <aspectratio>scale</aspectratio>
                        <texture background="true">$INFO[ListItem.Icon]</texture>
                        <bordertexture border="2">thumbs/panel_border3.png</bordertexture>
                        <bordersize>2</bordersize>
                    </control>
                    <control type="image">
                        <width>300</width>
                        <height>300</height>
                        <texture>black.png</texture>
                        <bordersize>2</bordersize>
                        <colordiffuse>44ffffff</colordiffuse>
                        <include>FocusFadeOutAnimation</include>
                    </control>
                    <control type="image">
                        <width>300</width>
                        <height>300</height>
                        <texture border="10">thumbs/thumbnail_focused.png</texture>
                        <include>FocusFadeInAnimation</include>
                    </control>
                    <control type="group">
                        <top>90</top>
                        <left>321</left>
                        <control type="label">
                            <width>680</width>
                            <height>60</height>
                            <font>font16_title_bold</font>
                            <textcolor>white</textcolor>
                            <scroll>true</scroll>
                            <label>$INFO[ListItem.Album]</label>
                            <textoffsetx>15</textoffsetx>
                        </control>
                        <control type="button">
                            <top>81</top>
                            <width>680</width>
                            <label>$INFO[ListItem.Artist,,[CR]]$INFO[ListItem.Year]$INFO[ListItem.Property(Album_Label), • ]</label>
                            <include>ShowCaseInfoPanelButtonsValuesNoSeperator</include>
                            <visible>Container.Content(albums) </visible>
                        </control>
                        <control type="button">
                            <top>81</top>
                            <width>680</width>
                            <label>$INFO[ListItem.Title]</label>
                            <include>ShowCaseInfoPanelButtonsValuesNoSeperator</include>
                            <visible>Container.Content(addons) </visible>
                        </control>
                    </control>
                </focusedlayout>
            </control>
            <control type="scrollbar" id="60">
                <left>154</left>
                <top>179</top>
                <width>14</width>
                <height>900</height>
                <onright>50</onright>
                <onleft>SetProperty(MediaMenu,True,home)</onleft>
                <onleft>SetFocus(9050)</onleft>
                <ondown>60</ondown>
                <onup>60</onup>
                <showonepage>false</showonepage>
                <texturesliderbackground />
                <texturesliderbar colordiffuse="55ffffff" border="1">scrollbar/texturesliderbar2.png</texturesliderbar>
                <texturesliderbarfocus border="1">scrollbar/texturesliderbar2.png</texturesliderbarfocus>
                <animation effect="fade" start="100" end="0" time="500" delay="500" condition="!Control.HasFocus(60) + !Container.Scrolling">Conditional</animation>
            </control>
        </control>
        <control type="group">
            <visible>Control.IsVisible(511)</visible>
            <control type="fixedlist" id="5081">
                <left>1110</left>
                <width>638</width>
                <top>116</top>
                <height>892</height>
                <aligny>center</aligny>
                <scrolltime tween="cubic" easing="out">500</scrolltime>
                <orientation>vertical</orientation>
                <movement>5</movement>
                <focusposition>5</focusposition>
                <pagecontrol>61</pagecontrol>
                <onleft>511</onleft>
                <onright>531</onright>
                <onup>5081</onup>
                <ondown>5081</ondown>
                <viewtype label="$LOCALIZE[40212]">list</viewtype>
                <focusedlayout height="80">
                    <control type="group">
                        <control type="image">
                            <left>0</left>
                            <right>0</right>
                            <height>80</height>
                            <texture>listselect_fo.png</texture>
                            <visible>Control.HasFocus(5081)</visible>
                        </control>
                        <control type="label">
                            <width>500</width>
                            <left>35</left>
                            <height>80</height>
                            <right>80</right>
                            <align>left</align>
                            <aligny>center</aligny>
                            <scroll>true</scroll>
                            <label>$INFO[ListItem.Label]</label>
                            <visible>Control.HasFocus(5081)</visible>
                        </control>
                        <control type="label">
                            <width>570</width>
                            <left>40</left>
                            <height>80</height>
                            <right>30</right>
                            <align>right</align>
                            <aligny>center</aligny>
                            <label>$INFO[ListItem.Duration]</label>
                            <visible>Control.HasFocus(5081)</visible>
                        </control>
                    </control>
                </focusedlayout>
                <itemlayout height="80">
                    <control type="group">
                        <control type="label">
                            <width>500</width>
                            <left>35</left>
                            <height>80</height>
                            <right>80</right>
                            <align>left</align>
                            <aligny>center</aligny>
                            <label>$INFO[ListItem.Label]</label>
                        </control>
                        <control type="label">
                            <width>570</width>
                            <left>40</left>
                            <height>80</height>
                            <right>30</right>
                            <align>right</align>
                            <aligny>center</aligny>
                            <label>$INFO[ListItem.Duration]</label>
                        </control>
                    </control>
                </itemlayout>
                <content target="music">$INFO[Container(511).ListItem.DBID,musicdb://albums/]</content>
            </control>
        </control>
    </include>
</includes>

This is my Code now.
Why is one Song missing while not on Focus?

@ Guilouz thx for stealing my Idea and make it spread around the Community. I´m proud of my ideas Smile I try some new approaches.

@jurialmunkey i want this for the add-on view swell. Can you help?


RE: 2 lists in one View - Guilouz - 2017-05-28

(2017-05-28, 22:09)tjost Wrote: Image

Code:
<?xml version="1.0" encoding="UTF-8"?>
<includes>
    <include name="View_511_Carousell">
        <control type="group">
            <visible>Control.IsVisible(511) + !Window.IsActive(addoninformation)</visible>
            <include>Zoom</include>
            <left>ViewInfoWallLeft</left>
            <top>-65</top>
            <control type="image">
                <description>background image</description>
                <left>140</left>
                <top>1080</top>
                <width>BackPanelInfoWallSquareWidth</width>
                <height>964</height>
                <texture border="40">panel_reflect.png</texture>
            </control>
            <control type="image">
                <description>background image</description>
                <left>140</left>
                <top>148</top>
                <width>BackPanelInfoWallSquareWidth</width>
                <height>964</height>
                <texture border="40">listpanel_back.png</texture>
            </control>
            <control type="image">
                <left>1110</left>
                <width>638</width>
                <top>178</top>
                <height>898</height>
                <texture>darky.png</texture>
                <animation effect="fade" start="0" end="100" time="500" delay="500">Conditional</animation>
            </control>
            <control type="fixedlist" id="511">
                <left>170</left>
                <top>179</top>
                <width>1000</width>
                <height>900</height>
                <onleft condition="Control.IsVisible(60)">60</onleft>
                <onleft condition="!Control.IsVisible(60)">SetProperty(MediaMenu,True,home)</onleft>
                <onleft condition="!Control.IsVisible(60)">SetFocus(9050)</onleft>
                <onright>SetFocus(5081,1)</onright>
                <onup>58</onup>
                <ondown>58</ondown>
                <pagecontrol>60</pagecontrol>
                <focusposition>1</focusposition>
                <preloaditems>2</preloaditems>
                <viewtype label="Carousel">list</viewtype>
                <scrolltime tween="Bounce" easing="inout">500</scrolltime>
                <visible>Container.Content(albums) | Container.Content(addons)</visible>
                <itemlayout height="300" width="300" condition="Container.Content(albums)">
                    <control type="image">
                        <width>300</width>
                        <height>300</height>
                        <aspectratio>scale</aspectratio>
                        <texture background="true">$INFO[ListItem.Icon]</texture>
                        <bordertexture border="2">thumbs/panel_border3.png</bordertexture>
                        <bordersize>2</bordersize>
                        <colordiffuse>44ffffff</colordiffuse>
                    </control>
                    <control type="image">
                        <width>300</width>
                        <height>300</height>
                        <texture>black.png</texture>
                        <bordersize>2</bordersize>
                        <colordiffuse>44ffffff</colordiffuse>
                    </control>
                    <control type="group">
                        <top>90</top>
                        <left>321</left>
                        <control type="label">
                            <width>680</width>
                            <height>60</height>
                            <font>font16_title_bold</font>
                            <textcolor>white</textcolor>
                            <scroll>true</scroll>
                            <label>$INFO[ListItem.Album]</label>
                            <textoffsetx>15</textoffsetx>
                        <colordiffuse>44ffffff</colordiffuse>
                        </control>
                        <control type="button">
                            <top>81</top>
                            <width>680</width>
                            <label>$INFO[ListItem.Artist,,[CR]]$INFO[ListItem.Year]$INFO[ListItem.Property(Album_Label), • ]</label>
                            <include>ShowCaseInfoPanelButtonsValuesNoSeperator</include>
                            <visible>Container.Content(albums) | Container.Content(addons)</visible>
                            <colordiffuse>44ffffff</colordiffuse>
                        </control>
                    </control>
                </itemlayout>
                <focusedlayout height="300" width="1000" condition="Container.Content(albums)">
                    <control type="image">
                        <width>300</width>
                        <height>300</height>
                        <aspectratio>scale</aspectratio>
                        <texture background="true">$INFO[ListItem.Icon]</texture>
                        <bordertexture border="2">thumbs/panel_border3.png</bordertexture>
                        <bordersize>2</bordersize>
                    </control>
                    <control type="image">
                        <width>300</width>
                        <height>300</height>
                        <texture>black.png</texture>
                        <bordersize>2</bordersize>
                        <colordiffuse>44ffffff</colordiffuse>
                        <include>FocusFadeOutAnimation</include>
                    </control>
                    <control type="image">
                        <width>300</width>
                        <height>300</height>
                        <texture border="10">thumbs/thumbnail_focused.png</texture>
                        <include>FocusFadeInAnimation</include>
                    </control>
                    <control type="group">
                        <top>90</top>
                        <left>321</left>
                        <control type="label">
                            <width>680</width>
                            <height>60</height>
                            <font>font16_title_bold</font>
                            <textcolor>white</textcolor>
                            <scroll>true</scroll>
                            <label>$INFO[ListItem.Album]</label>
                            <textoffsetx>15</textoffsetx>
                        </control>
                        <control type="button">
                            <top>81</top>
                            <width>680</width>
                            <label>$INFO[ListItem.Artist,,[CR]]$INFO[ListItem.Year]$INFO[ListItem.Property(Album_Label), • ]</label>
                            <include>ShowCaseInfoPanelButtonsValuesNoSeperator</include>
                            <visible>Container.Content(albums) </visible>
                        </control>
                        <control type="button">
                            <top>81</top>
                            <width>680</width>
                            <label>$INFO[ListItem.Title]</label>
                            <include>ShowCaseInfoPanelButtonsValuesNoSeperator</include>
                            <visible>Container.Content(addons) </visible>
                        </control>
                    </control>
                </focusedlayout>
            </control>
            <control type="scrollbar" id="60">
                <left>154</left>
                <top>179</top>
                <width>14</width>
                <height>900</height>
                <onright>50</onright>
                <onleft>SetProperty(MediaMenu,True,home)</onleft>
                <onleft>SetFocus(9050)</onleft>
                <ondown>60</ondown>
                <onup>60</onup>
                <showonepage>false</showonepage>
                <texturesliderbackground />
                <texturesliderbar colordiffuse="55ffffff" border="1">scrollbar/texturesliderbar2.png</texturesliderbar>
                <texturesliderbarfocus border="1">scrollbar/texturesliderbar2.png</texturesliderbarfocus>
                <animation effect="fade" start="100" end="0" time="500" delay="500" condition="!Control.HasFocus(60) + !Container.Scrolling">Conditional</animation>
            </control>
        </control>
        <control type="group">
            <visible>Control.IsVisible(511)</visible>
            <control type="fixedlist" id="5081">
                <left>1110</left>
                <width>638</width>
                <top>116</top>
                <height>892</height>
                <aligny>center</aligny>
                <scrolltime tween="cubic" easing="out">500</scrolltime>
                <orientation>vertical</orientation>
                <movement>5</movement>
                <focusposition>5</focusposition>
                <pagecontrol>61</pagecontrol>
                <onleft>511</onleft>
                <onright>531</onright>
                <onup>5081</onup>
                <ondown>5081</ondown>
                <viewtype label="$LOCALIZE[40212]">list</viewtype>
                <focusedlayout height="80">
                    <control type="group">
                        <control type="image">
                            <left>0</left>
                            <right>0</right>
                            <height>80</height>
                            <texture>listselect_fo.png</texture>
                            <visible>Control.HasFocus(5081)</visible>
                        </control>
                        <control type="label">
                            <width>500</width>
                            <left>35</left>
                            <height>80</height>
                            <right>80</right>
                            <align>left</align>
                            <aligny>center</aligny>
                            <scroll>true</scroll>
                            <label>$INFO[ListItem.Label]</label>
                            <visible>Control.HasFocus(5081)</visible>
                        </control>
                        <control type="label">
                            <width>570</width>
                            <left>40</left>
                            <height>80</height>
                            <right>30</right>
                            <align>right</align>
                            <aligny>center</aligny>
                            <label>$INFO[ListItem.Duration]</label>
                            <visible>Control.HasFocus(5081)</visible>
                        </control>
                    </control>
                </focusedlayout>
                <itemlayout height="80">
                    <control type="group">
                        <control type="label">
                            <width>500</width>
                            <left>35</left>
                            <height>80</height>
                            <right>80</right>
                            <align>left</align>
                            <aligny>center</aligny>
                            <label>$INFO[ListItem.Label]</label>
                        </control>
                        <control type="label">
                            <width>570</width>
                            <left>40</left>
                            <height>80</height>
                            <right>30</right>
                            <align>right</align>
                            <aligny>center</aligny>
                            <label>$INFO[ListItem.Duration]</label>
                        </control>
                    </control>
                </itemlayout>
                <content target="music">$INFO[Container(511).ListItem.DBID,musicdb://albums/]</content>
            </control>
        </control>
    </include>
</includes>

This is my Code now.
Why is one Song missing while not on Focus?

@ Guilouz thx for stealing my Idea and make it spread around the Community. I´m proud of my ideas Smile I try some new approaches.

@jurialmunkey i want this for the add-on view swell. Can you help?

Remove <visible>Control.HasFocus(5081)</visible> for your labels in your focusedlayout of second list.


RE: 2 lists in one View - tjost - 2017-05-29

THX Worked like a charm


RE: 2 lists in one View - jurialmunkey - 2017-05-29

(2017-05-28, 22:09)tjost Wrote: @jurialmunkey i want this for the add-on view swell. Can you help?

I'm not sure exactly what you mean for the addon view? What would be in the left and right column exactly?


RE: 2 lists in one View - tjost - 2017-05-29

Image

The normal Add On View. I want to change it to my new view.

thx.


RE: 2 lists in one View - braz - 2017-05-29

Just FYI, here's another implementation of this idea that displays artists/albums/tracks all in a single view.

2593935 (post)

And here's the code: https://github.com/braz96/skin.omni/commit/232c9dfb4a0bbaccc61d4265b81b3d41e1fe88c3