Dynamic Content and Custom playlist
#1
I read on another thread Service Data Library doesn't support playlist yet...

So Is there any other ways to fill home screen panels using dynamic content with custom playlists?
e.g :
Recent Comedy Movies
Recomended (rating >6) Action Movies

IIRC didn't martinj say he'd update the script to make it handle playlist as well..
any updates on this?

randomandlastitem is way too slow for huge library..

thanks
Reply
#2
You can fill any list with a custom playlist path. I support using custom playlists for widgets in both Arctic:Zephyr and Eminence.

If you are skinning you can create a smart playlist, put it in folder in the skin's dir (I like extras/playlists) and then use something like the following for the list control's content path:
Code:
<content>special://skin/extras/playlists/RecentComedyMovies.xsp</content>
Arctic Fuse - Alpha now available. Support me on Ko-fi.
Reply
#3
(2015-05-18, 09:28)jurialmunkey Wrote: You can fill any list with a custom playlist path. I support using custom playlists for widgets in both Arctic:Zephyr and Eminence.

If you are skinning you can create a smart playlist, put it in folder in the skin's dir (I like extras/playlists) and then use something like the following for the list control's content path:
Code:
<content>special://skin/extras/playlists/RecentComedyMovies.xsp</content>

Thanks for the answer... i tried your skins but neither has onfocus panels that shows the content of the playlist..
If you've tried ace you will see what i mean,
we can create custom playlist, and then when that menu is focused it will display recently added items of that playlist...
Is something like this possible already?

It's the 12 panels on the right side:

https://drive.google.com/file/d/0B9f9Hk9...sp=sharing
Reply
#4
In arctic turn on classic widgets and them set ypur playlist as the item's widget in home customisation screen.
Arctic Fuse - Alpha now available. Support me on Ko-fi.
Reply
#5
(2015-05-18, 10:55)jurialmunkey Wrote: In arctic turn on classic widgets and them set ypur playlist as the item's widget in home customisation screen.

I see, so we can use skin shortcut script to complete what service library data lacks, good to know, now i know where to start. Big Grin
Gonna try this on Ace now, wish me luck
Reply
#6
Hmm.. i'm stuck getting skinshortcut script to work...
It's harder to implement than i thought
Mind explaining in a brief how it works on your skin?
Reply
#7
Hi, nevermind about the skinshortcut, i think i got it to work.

I'm now stuck on implementing dynamic content

Your skin uses this to fill the HomeWidgetInfo right?
Code:
<content target="video" limit="10">$VAR[DefWidgetContent]</content>

What i can't understand is, how do i get this to work on Ace that uses this :

Code:
            <!-- Painel de Recentes -->
            <posx>326</posx>
            <animation effect="fade" start="0" end="100" time="400" delay="1000">WindowOpen</animation>
            <animation effect="fade" start="0" end="100" time="400" delay="1000">Visible</animation>
            <animation effect="fade" start="100" end="0" time="200">Hidden</animation>
            <animation effect="slide" start="0,0" end="1000,0" time="400" easing="out" tween="sine" condition="Control.IsVisible(603) + ![Control.HasFocus(510) | Control.HasFocus(5100)]">Conditional</animation>
            <animation effect="slide" start="0,0" end="1000,0" time="400" easing="out" tween="sine" condition="Skin.HasSetting(homemenuclean) + ![Control.HasFocus(510) | Control.HasFocus(5100)]">Conditional</animation>
            <visible>[Container(9000).HasFocus(1) + Library.HasContent(Movies) + !Skin.HasSetting(nomovieswidget) | Container(9000).HasFocus(2) + Library.HasContent(TVShows) + !Skin.HasSetting(notvshowswidget) | Container(9000).HasFocus(3) + Library.HasContent(MusicVideos) + !Skin.HasSetting(noconcertswidget) | Container(9000).HasFocus(4) + Library.HasContent(Music) + !Skin.HasSetting(nomusicwidget) | Container(9000).HasFocus(5) + ![IsEmpty(Window(0).Property(NextAired.1.NextTitle)) | Skin.HasSetting(nonextairedwidget)] | Container(9000).HasFocus(6) + SubString(skin.string(games_link),rcb) + ![IsEmpty(Window(0).Property(MostPlayedROM.1.Title)) | Skin.HasSetting(nogameswidget)] | Container(9000).HasFocus(10) | Container(9000).HasFocus(11) | Container(9000).HasFocus(12) | Container(9000).HasFocus(31) + !Skin.HasSetting(novpl1widget) | Container(9000).HasFocus(32) + !Skin.HasSetting(novpl2widget) | Container(9000).HasFocus(33) + !Skin.HasSetting(novpl3widget) | Container(9000).HasFocus(34) + !Skin.HasSetting(novpl4widget) | Container(9000).HasFocus(35) + !Skin.HasSetting(novpl5widget) | Container(9000).HasFocus(41) + !Skin.HasSetting(noapl1widget) | Container(9000).HasFocus(42) + !Skin.HasSetting(noapl2widget) | Container(9000).HasFocus(43) + !Skin.HasSetting(noapl3widget) | Container(9000).HasFocus(44) + !Skin.HasSetting(noapl4widget) | Container(9000).HasFocus(45) + !Skin.HasSetting(noapl5widget) | Container(9000).HasFocus(65) + !Skin.HasSetting(nosystemwidget)] + ![Skin.HasSetting(submode) | Window.IsActive(5099)]</visible>
            <control type="button" id="5110">
                <!-- Seletor de lista -->
                <include>InvisibleButton</include>
                <include>RecentRandomSelector</include>
            </control>
            <control type="button" id="9005">
                <include>InvisibleButton</include>
                <onup>510</onup>
                <ondown>4200</ondown>
                <onleft>9000</onleft>
                <onright>4200</onright>
            </control>
            <include>mf_contentmovies</include>

Code:
<include name="mf_contentmovies">
        <control type="group">
            <posx>0</posx>
            <posy>60</posy>
            <control type="panel" id="510">
                <!-- Filmes Recentes -->
                <include condition="SubString(skin.string(menu),vertical)">panel_video_v</include>
                <include condition="SubString(skin.string(menu),horizontal)">panel_video_h</include>
                <visible>Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),latest)</visible>
                <include>panel_videolayout</include>
                <content>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.1.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.1.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.1.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.1.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.1.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.1.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.1.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.1.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.1.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.1.MPAA)]</property>    
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.1.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.1.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.1.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.1.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.2.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.2.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.2.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.2.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.2.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.2.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.2.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.2.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.2.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.2.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.2.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.2.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.2.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.2.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.3.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.3.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.3.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.3.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.3.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.3.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.3.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.3.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.3.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.3.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.3.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.3.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.3.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.3.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.4.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.4.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.4.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.4.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.4.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.4.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.4.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.4.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.4.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.4.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.4.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.4.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.4.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.4.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.5.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.5.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.5.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.5.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.5.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.5.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.5.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.5.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.5.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.5.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.5.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.5.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.5.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.5.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.6.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.6.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.6.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.6.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.6.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.6.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.6.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.6.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.6.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.6.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.6.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.6.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.6.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.6.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.7.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.7.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.7.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.7.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.7.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.7.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.7.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.7.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.7.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.7.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.7.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.7.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.7.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.7.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.8.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.8.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.8.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.8.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.8.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.8.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.8.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.8.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.8.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.8.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.8.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.8.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.8.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.8.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.9.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.9.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.9.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.9.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.9.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.9.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.9.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.9.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.9.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.9.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.9.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.9.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.9.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.9.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.10.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.10.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.10.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.10.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.10.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.10.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.10.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.10.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.10.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.10.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.10.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.10.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.10.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.10.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.11.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.11.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.11.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.11.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.11.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.11.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.11.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.11.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.11.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.11.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.11.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.11.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.11.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.11.Title))</visible>
                    </item>
                    <item>
                        <label>$INFO[Window(0).Property(RecentMovie.12.Title)]</label>
                        <label2>$INFO[Window(0).Property(RecentMovie.12.Tagline)]</label2>
                        <icon>$INFO[Window(0).Property(RecentMovie.12.Art(poster))]</icon>
                        <property name="Fanart">$INFO[Window(0).Property(RecentMovie.12.Art(fanart))]</property>
                        <property name="Genre">$INFO[Window(0).Property(RecentMovie.12.Genre)]</property>
                        <property name="Runtime">$INFO[Window(0).Property(RecentMovie.12.Runtime)]</property>
                        <property name="Rating">$INFO[Window(0).Property(RecentMovie.12.Rating)]</property>
                        <property name="Plot">$INFO[Window(0).Property(RecentMovie.12.Plot)]</property>
                        <property name="Year">$INFO[Window(0).Property(RecentMovie.12.Year)]</property>
                        <property name="Mpaa">$INFO[Window(0).Property(RecentMovie.12.MPAA)]</property>
                        <onclick>Skin.SetString(custom_id,$INFO[Window(0).Property(RecentMovie.12.DBID)])</onclick>
                        <onclick condition="!IsEmpty(Window(0).Property(RecentMovie.12.Trailer))">Skin.SetString(custom_trailer,$INFO[Window(0).Property(RecentMovie.12.Trailer)])</onclick>
                        <onclick>ActivateWindow(1101)</onclick>
                        <visible>!IsEmpty(Window(0).Property(RecentMovie.12.Title))</visible>
                    </item>
                    <item>
                        <icon>DefaultVideoPoster.png</icon>
                        <onclick>noop</onclick>
                        <visible>IsEmpty(Window(0).Property(RecentMovie.1.Title))</visible>
                    </item>
                </content>

I renamed the randomandlastitem script folder to disable it,

i put $VAR[DefWidgetContent] on Ace variable list, and i tried this, but it didn't work.
Code:
    <include name="mf_contentmovies">
        <control type="group">
            <posx>0</posx>
            <posy>60</posy>
            <control type="panel" id="510">
                <!-- Filmes Recentes -->
                <include condition="SubString(skin.string(menu),vertical)">panel_video_v</include>
                <include condition="SubString(skin.string(menu),horizontal)">panel_video_h</include>
                <visible>Container(9000).HasFocus(1)</visible>
                <include>panel_videolayout</include>
                <content target="video" limit="12">$VAR[DefWidgetContent]</content>
            </control>

Btw is it ok if i post this on Arctic Zephyr Forum?
It's really difficult for beginners like me to implement this because there's not much samples or explanations..
Reply
#8
Bump.. can anyone help?
Reply
#9
It isnt simple to change widget in Ace,I will help you but dont know how !
I include Phil script(extendedInfo script) in Ace,Not's so good as in MQ6.
but working.....

Image

this is for "Upcoming" widget,in IncludesMenu.xml ,
Code:
    <control type="panel" id="510">
    <include condition="SubString(skin.string(menu),vertical)">panel_video_v</include>
    <include condition="SubString(skin.string(menu),horizontal)">panel_video_h</include>
    <visible>Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),109)</visible>    
<include>panel_videolayout</include>
    <content>plugin://script.extendedinfo?info=upcoming</content>
</control>
but you must add button and name in my case in Includes.xml
Code:
<include name="RecentRandomSelector">
    <onfocus>SetFocus(5100)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),latest)">Skin.SetString(mfmovies_list,random)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),random)">Skin.SetString(mfmovies_list,inprogress)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),inprogress)">Skin.SetString(mfmovies_list,101)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),101)">Skin.SetString(mfmovies_list,102)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),102)">Skin.SetString(mfmovies_list,103)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),103)">Skin.SetString(mfmovies_list,104)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),104)">Skin.SetString(mfmovies_list,105)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),105)">Skin.SetString(mfmovies_list,106)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),106)">Skin.SetString(mfmovies_list,107)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),107)">Skin.SetString(mfmovies_list,108)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),108)">Skin.SetString(mfmovies_list,109)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),109)">Skin.SetString(mfmovies_list,110)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),110)">Skin.SetString(mfmovies_list,111)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),111)">Skin.SetString(mfmovies_list,112)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),112)">Skin.SetString(mfmovies_list,113)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),113)">Skin.SetString(mfmovies_list,114)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),114)">Skin.SetString(mfmovies_list,115)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),115)">Skin.SetString(mfmovies_list,116)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),116)">Skin.SetString(mfmovies_list,117)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),117)">Skin.SetString(mfmovies_list,118)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),118)">Skin.SetString(mfmovies_list,119)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),119)">Skin.SetString(mfmovies_list,120)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),120)">Skin.SetString(mfmovies_list,121)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),121)">Skin.SetString(mfmovies_list,122)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),122)">Skin.SetString(mfmovies_list,123)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),123)">Skin.SetString(mfmovies_list,124)</onfocus>
    <onfocus condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),124)">Skin.SetString(mfmovies_list,latest)</onfocus>
and Name in IncludesVariables.xml
Code:
    <variable name="value_mflistmode">
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),latest)">$LOCALIZE[31583]</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),random)">$LOCALIZE[31584]</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),inprogress)">$LOCALIZE[31585]</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),101)">In Theaters</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),102)">Coming Soon</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),103)">Opening</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),104)">Boxoffice</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),105)">Top Rentals</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),106)">Current DVD Releases</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),107)">New DVD Releases</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),108)">In Cinemas</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),109)">Upcoming</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),110)">Popular Movies</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),111)">Top Rated Movies</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),112)">Popular TVShows</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),113)">Top Rated TVShows</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),114)">Onair TVShows</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),115)">Airing Today TVShows</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),116)">Trending Shows</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),117)">Airing Shows</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),118)">Premiere Shows</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),119)">xkcd</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),120)">Top Artists</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),121)">Hyped Artists</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),122)">Mix</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),123)">Mix 1</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),124)">Mix 2</value>
    <value condition="Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),125)">Mix 3</value>

and almost done Smile for Vertical,for horizontal....
XBoxMediaCenter (Kodi Matrix ) 19.3 , AndroidBox -Matrix Skin AeonMQ6
Reply
#10
@Angelinas :

Thanks for the answer, what i'm trying to achieve is a little different
I want the entire main menu consisted of genre playlists e.g
ACTION
COMEDY
THRILLER
and so on..

But i think i'm getting some ideas from your answer... something like this?

Code:
<control type="panel" id="510">
    <include condition="SubString(skin.string(menu),vertical)">panel_video_v</include>
    <include condition="SubString(skin.string(menu),horizontal)">panel_video_h</include>
    <visible>Container(9000).HasFocus(1) + SubString(skin.string(mfmovies_list),109)</visible>    
<include>panel_videolayout</include>
    <content>special://skin/extras/playlists/RecentComedyMovies.xsp</content>
</control>



Well, tried this, but it won't work..

Code:
<include name="mf_contentvpl1">
        <control type="group">
            <posx>0</posx>
            <posy>60</posy>
            <control type="panel" id="510">
                <!--- Playlist de Video 1 Recentes -->
                <include condition="SubString(skin.string(menu),vertical)">panel_video_v</include>
                <include condition="SubString(skin.string(menu),horizontal)">panel_video_h</include>
                <visible>Container(9000).HasFocus(31) + [SubString(skin.string(mfvpl1_list),latest) | SubString(skin.string(mfvpl1_list),inprogress)]</visible>
                <include>panel_videolayout</include>
                <content>special://skin/extras/playlists/Action.xsp</content>
            </control>
Reply
#11
My bad, turns out the path to the playlist was wrong :p

Got it to work somehow, but i can't get the artwork and other media info to show up.. any idea why?

Image
Reply
#12
I think <visible> is problem in your case.

<visible>[[Container(9000).HasFocus(1) is in most of code IncludesMenuV.xml...
As I see in picture its not Focus(1) its diferent number
1-Movies
2-TVShow
3-Concerts
4-Music
5-Live TV
.......

for image find <variable name="value_mffanart"> in IncludesVariables.xml
See in code there is no your number for playlists
mine is like here,here is one excample menu other thing doesent have your number Sad
Code:
    <variable name="value_mffanart">
    <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(1)">$INFO[Window(0).Property(RecommendedMovie.1.Art(fanart))]</value>
    <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(2)">$INFO[Window(0).Property(RecommendedEpisode.1.Art(tvshow.fanart))]</value>
    <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(3)">$INFO[Window(0).Property(RecommendedMusicVideo.1.Art(fanart))]</value>
    <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(4)">$INFO[Window(0).Property(RecommendedAlbum.1.Art(fanart))]</value>
    <value condition="Player.HasAudio + IsEmpty(Window(Visualisation).Property(ArtistSlideshow)) + IsEmpty(Control.GetLabel(5043)) + IsEmpty(Control.GetLabel(5044)) + ![Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[MusicPlayer.Property(fanart_image)]</value>
    <value condition="Player.HasAudio + IsEmpty(Window(Visualisation).Property(ArtistSlideshow)) + ![IsEmpty(Control.GetLabel(5043)) | Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[Player.FolderPath,,../extrafanart/]</value>
    <value condition="Player.HasAudio + IsEmpty(Window(Visualisation).Property(ArtistSlideshow)) + IsEmpty(Control.GetLabel(5043)) + ![Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[Skin.String(CustomMusicLogoPath)]$INFO[MusicPlayer.Artist,,/extrafanart/]</value>
    <value condition="!Container(9000).HasFocus(5) + Control.HasFocus(510) | !Container(9000).HasFocus(5) + Control.HasFocus(5100)">$INFO[Container(510).ListItem.Property(Fanart)]</value>
    <value condition="Container(9000).HasFocus(5) + ![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[Container(510).ListItem.PlotOutline]</value>
    </variable>
XBoxMediaCenter (Kodi Matrix ) 19.3 , AndroidBox -Matrix Skin AeonMQ6
Reply
#13
(2015-07-11, 16:14)Angelinas Wrote: I think <visible> is problem in your case.

<visible>[[Container(9000).HasFocus(1) is in most of code IncludesMenuV.xml...
As I see in picture its not Focus(1) its diferent number
1-Movies
2-TVShow
3-Concerts
4-Music
5-Live TV
.......

for image find <variable name="value_mffanart"> in IncludesVariables.xml
See in code there is no your number for playlists
mine is like here,here is one excample menu other thing doesent have your number Sad

Thanks Angelinas, I'll give it a try, but i think variable is the way to go.. include is not an option if there's any changes after the window is loaded..
as mentioned by Black here http://forum.kodi.tv/showthread.php?tid=176864&page=9

I'm just having trouble translating this into Ace now..

I tried putting this into Ace's IncludeVariables.xml

Code:
<variable name="DefWidgetContent">
        <!-- Individual Widget Paths -->
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),Playlist)">$INFO[Container(9000).ListItem.Property(widgetPlaylist)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),RandomMovies)">plugin://service.library.data.provider?type=randommovies&amp;reload=$INFO[Window.Property(randommovies)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),RandomEpisodes)">plugin://service.library.data.provider?type=randomepisodes&amp;reload=$INFO[Window.Property(randomepisodes)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),RecentEpisodes)">plugin://service.library.data.provider?type=recentepisodes&amp;reload=$INFO[Window.Property(recentepisodes)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),RecentMovies)">plugin://service.library.data.provider?type=recentmovies&amp;reload=$INFO[Window.Property(recentmovies)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),RecommendedEpisodes)">plugin://service.library.data.provider?type=recommendedepisodes&amp;reload=$INFO[Window.Property(recommendedepisodes)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),RecommendedMovies)">plugin://service.library.data.provider?type=recommendedmovies&amp;reload=$INFO[Window.Property(recommendedmovies)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),Custom1)">$INFO[Skin.String(CustomWidget1)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),Custom2)">$INFO[Skin.String(CustomWidget2)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),Custom3)">$INFO[Skin.String(CustomWidget3)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),Custom4)">$INFO[Skin.String(CustomWidget4)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),TrendingMovies)">plugin://script.extendedinfo?info=trendingmovies</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),TrendingShows)">plugin://script.extendedinfo?info=trendingshows</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),AiringShows)">plugin://script.extendedinfo?info=airingshows</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),PremiereShows)">plugin://script.extendedinfo?info=premiereshows</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),InCinemas)">plugin://script.extendedinfo?info=incinemas</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),Upcoming)">plugin://script.extendedinfo?info=upcoming</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),PopularMovies)">plugin://script.extendedinfo?info=popularmovies</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),TopRatedMovies)">plugin://script.extendedinfo?info=topratedmovies</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),PopularTvShows)">plugin://script.extendedinfo?info=populartvshows</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),TopRatedTvShows)">plugin://script.extendedinfo?info=topratedtvshows</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),OnAirTvShows)">plugin://script.extendedinfo?info=onairtvshows</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),AiringTodayTvShows)">plugin://script.extendedinfo?info=airingtodaytvshows</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),RecentAlbums)">plugin://service.library.data.provider?type=recentalbums&amp;reload=$INFO[Window.Property(recentalbums)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),RecommendedAlbums)">plugin://service.library.data.provider?type=recommendedalbums&amp;reload=$INFO[Window.Property(recommendedalbums)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),RandomAlbums)">plugin://service.library.data.provider?type=randomalbums&amp;reload=$INFO[Window.Property(randomalbums)]</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),RecentlyPlayedAlbums)">musicdb://recentlyplayedalbums/</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),Top100Albums)">musicdb://top100/albums/</value>
        <value condition="StringCompare(Container(9000).ListItem.Property(widget),Weather) + !IsEmpty(Skin.String(weather.fanart))">$INFO[Skin.String(weather.fanart)]$INFO[Window(Weather).Property(Current.FanartCode)]/</value>
        
        <!-- Background -->
        <value condition="!IsEmpty(Container(9000).ListItem.Property(Background))">$INFO[Container(9000).ListItem.Property(Background)]</value>
        
        <!-- Slideshow -->
        <value condition="!IsEmpty(Skin.String(home.slideshowpath)) + IsEmpty(Container(9000).ListItem.Property(widget))">$INFO[Skin.String(home.slideshowpath)]</value>
        
        <!-- Global Widget -->
        <value condition="StringCompare(Window(home).Property(widget),RandomMovies) + IsEmpty(Container(9000).ListItem.Property(widget))">plugin://service.library.data.provider?type=randommovies&amp;reload=$INFO[Window.Property(randommovies)]</value>
        <value condition="StringCompare(Window(home).Property(widget),RandomEpisodes) + IsEmpty(Container(9000).ListItem.Property(widget))">plugin://service.library.data.provider?type=randomepisodes&amp;reload=$INFO[Window.Property(randomepisodes)]</value>
        <value condition="StringCompare(Window(home).Property(widget),RecentEpisodes) + IsEmpty(Container(9000).ListItem.Property(widget))">plugin://service.library.data.provider?type=recentepisodes&amp;reload=$INFO[Window.Property(recentepisodes)]</value>
        <value condition="StringCompare(Window(home).Property(widget),RecentMovies) + IsEmpty(Container(9000).ListItem.Property(widget))">plugin://service.library.data.provider?type=recentmovies&amp;reload=$INFO[Window.Property(recentmovies)]</value>
        <value condition="StringCompare(Window(home).Property(widget),RecommendedEpisodes) + IsEmpty(Container(9000).ListItem.Property(widget))">plugin://service.library.data.provider?type=recommendedepisodes&amp;reload=$INFO[Window.Property(recommendedepisodes)]</value>
        <value condition="StringCompare(Window(home).Property(widget),RecommendedMovies) + IsEmpty(Container(9000).ListItem.Property(widget))">plugin://service.library.data.provider?type=recommendedmovies&amp;reload=$INFO[Window.Property(recommendedmovies)]</value>
        <value condition="IsEmpty(Container(9000).ListItem.Property(widget))">plugin://service.library.data.provider?type=randommovies&amp;reload=$INFO[Window.Property(randommovies)]</value>
    </variable>

Then I called it as var in IncludesMenuPlaylists

Code:
    <include name="mf_contentvpl1">
        <control type="group">
            <posx>0</posx>
            <posy>60</posy>
            <control type="panel" id="510">
                <!--- Playlist de Video 1 Recentes -->
                <include condition="SubString(skin.string(menu),vertical)">panel_video_v</include>
                <include condition="SubString(skin.string(menu),horizontal)">panel_video_h</include>
                <visible>Container(9000).HasFocus(31) + [SubString(skin.string(mfvpl1_list),latest) | SubString(skin.string(mfvpl1_list),inprogress)]</visible>
                <include>panel_videolayout</include>
                <content target="video">$VAR[DefWidgetContent]</content>
            </control>

but it lists random movies everytime kodi restarts..And no artwork either..
Image

2 things that i can't figure out..

1. How do i get the artwork working with this kind of structure?
2. What if i just want to populate the main menu with predetermined playlists?
e.g
Action Movies
Comedy Movies
Documentation
and so on..
Where do i call the variables from?
I don't think i'm gonna need skinshortcut because my skin won't be customizable..
Reply
#14
Bump.. any help please?
Reply
#15
(2015-07-11, 16:14)Angelinas Wrote: I think <visible> is problem in your case.

<visible>[[Container(9000).HasFocus(1) is in most of code IncludesMenuV.xml...
As I see in picture its not Focus(1) its diferent number
1-Movies
2-TVShow
3-Concerts
4-Music
5-Live TV
.......

for image find <variable name="value_mffanart"> in IncludesVariables.xml
See in code there is no your number for playlists
mine is like here,here is one excample menu other thing doesent have your number Sad
Code:
    <variable name="value_mffanart">
    <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(1)">$INFO[Window(0).Property(RecommendedMovie.1.Art(fanart))]</value>
    <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(2)">$INFO[Window(0).Property(RecommendedEpisode.1.Art(tvshow.fanart))]</value>
    <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(3)">$INFO[Window(0).Property(RecommendedMusicVideo.1.Art(fanart))]</value>
    <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(4)">$INFO[Window(0).Property(RecommendedAlbum.1.Art(fanart))]</value>
    <value condition="Player.HasAudio + IsEmpty(Window(Visualisation).Property(ArtistSlideshow)) + IsEmpty(Control.GetLabel(5043)) + IsEmpty(Control.GetLabel(5044)) + ![Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[MusicPlayer.Property(fanart_image)]</value>
    <value condition="Player.HasAudio + IsEmpty(Window(Visualisation).Property(ArtistSlideshow)) + ![IsEmpty(Control.GetLabel(5043)) | Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[Player.FolderPath,,../extrafanart/]</value>
    <value condition="Player.HasAudio + IsEmpty(Window(Visualisation).Property(ArtistSlideshow)) + IsEmpty(Control.GetLabel(5043)) + ![Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[Skin.String(CustomMusicLogoPath)]$INFO[MusicPlayer.Artist,,/extrafanart/]</value>
    <value condition="!Container(9000).HasFocus(5) + Control.HasFocus(510) | !Container(9000).HasFocus(5) + Control.HasFocus(5100)">$INFO[Container(510).ListItem.Property(Fanart)]</value>
    <value condition="Container(9000).HasFocus(5) + ![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[Container(510).ListItem.PlotOutline]</value>
    </variable>

Hi Angelinas, i tried your method but still no luck...
So basically, if it's coded like this in IncludesMenuPlaylist.xml:

Code:
    <include name="mf_contentvpl1">
        <control type="group">
            <posx>0</posx>
            <posy>60</posy>
            <control type="panel" id="510">
                <!--- Playlist de Video 1 Recentes -->
                <include condition="SubString(skin.string(menu),vertical)">panel_video_v</include>
                <include condition="SubString(skin.string(menu),horizontal)">panel_video_h</include>
                <visible>Container(9000).HasFocus(31) + [SubString(skin.string(mfvpl1_list),latest) | SubString(skin.string(mfvpl1_list),inprogress)]</visible>
                <include>panel_videolayout</include>
                <content>C:/Users/Downloader/AppData/Roaming/Kodi/userdata/playlists/video/comedy.xsp</content>
            </control>

The number that you were talking about for this is 31 right?
So i put 31 in IncludesVariables.xml like this :

Code:
    <variable name="value_mffanart">
        <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(1)">$INFO[Window(0).Property(RecommendedMovie.1.Art(fanart))]</value>
        <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(2)">$INFO[Window(0).Property(RecommendedEpisode.1.Art(tvshow.fanart))]</value>
        <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(3)">$INFO[Window(0).Property(RecommendedMusicVideo.1.Art(fanart))]</value>
        <value condition="![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)] + Container(9000).HasFocus(4)">$INFO[Window(0).Property(RecommendedAlbum.1.Art(fanart))]</value>
        <value condition="Player.HasAudio + IsEmpty(Window(Visualisation).Property(ArtistSlideshow)) + IsEmpty(Control.GetLabel(5043)) + IsEmpty(Control.GetLabel(5044)) + ![Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[MusicPlayer.Property(fanart_image)]</value>
        <value condition="Player.HasAudio + IsEmpty(Window(Visualisation).Property(ArtistSlideshow)) + ![IsEmpty(Control.GetLabel(5043)) | Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[Player.FolderPath,,../extrafanart/]</value>
        <value condition="Player.HasAudio + IsEmpty(Window(Visualisation).Property(ArtistSlideshow)) + IsEmpty(Control.GetLabel(5043)) + ![Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[Skin.String(CustomMusicLogoPath)]$INFO[MusicPlayer.Artist,,/extrafanart/]</value>
    <value condition="!Container(9000).HasFocus(31) + Control.HasFocus(510) | !Container(9000).HasFocus(31) + Control.HasFocus(5100)">$INFO[Container(510).ListItem.Property(Fanart)]</value>
    <value condition="Container(9000).HasFocus(31) + ![Player.HasMedia | Control.HasFocus(510) | Control.HasFocus(5100)]">$INFO[Container(510).ListItem.PlotOutline]</value>
    </variable>

But the fanart still won't show up,, any idea why?
Reply

Logout Mark Read Team Forum Stats Members Help
Dynamic Content and Custom playlist0