Adding more breadcrumbs for Video library
#1
Ronie,

I am trying to add the capability to Transparency so that I show more breadcrumb info to the top left corner of the screen (e.g ● Movies ● Anime ● Ponyo):
Image

I want to call the Skin.SetString built-in function at <onclick> for when menu entry is selected. What I have tracked down so far is that in Includes_Home.xml:
Code:
    <include name="HomeVideosButton">
        <item id="1">
            <label>3</label>
            <onclick>ActivateWindow(Videos,Files,return)</onclick>
            <icon>special://skin/backgrounds/videos.jpg</icon>
            <thumb>$INFO[Skin.String(Home_Custom_Back_Videos_Folder)]</thumb>
        </item>
    </include>

This ends up activating the window which shows that video entries in files mode. In View-Fanart.xml:
Code:
<includes>
    <include name="Fanart-Videos">
        <control type="list" id="50">
            <posx>200</posx>
            <width>355</width>
            <onleft>7005</onleft>
            <onright>60</onright>
            <onup>50</onup>
            <ondown>50</ondown>
            <viewtype label="31030">list</viewtype>
            <pagecontrol>60</pagecontrol>
            <scrolltime>200</scrolltime>
            <preloaditems>2</preloaditems>
            <include condition="!Skin.HasSetting(Fanart_Show_Banners) + !Skin.HasSetting(FanartShort) + !Skin.HasSetting(FanartLong)">FanartNormal</include>
            <include condition="!Skin.HasSetting(Fanart_Show_Banners) + Skin.HasSetting(FanartShort)">FanartShort</include>
            <include condition="!Skin.HasSetting(Fanart_Show_Banners) + Skin.HasSetting(FanartLong)">FanartLong</include>
            <include condition="Skin.HasSetting(Fanart_Show_Banners) + !Skin.HasSetting(FanartShort) + !Skin.HasSetting(FanartLong)">FanartNormalBanners</include>
            <include condition="Skin.HasSetting(Fanart_Show_Banners) + Skin.HasSetting(FanartShort)">FanartShortBanners</include>
            <include condition="Skin.HasSetting(Fanart_Show_Banners) + Skin.HasSetting(FanartLong)">FanartLongBanners</include>
            <itemlayout width="355" height="29" condition="![Container.Content(TVShows) + Skin.HasSetting(Fanart_Show_Banners)]">
                <control type="image">
                    <posx>0</posx>
                    <posy>0</posy>
                    <width>355</width>
                    <height>30</height>
                    <texture border="7">list-nofocus.png</texture>
                    <include>VisibleFadeEffect</include>
                </control>
                <control type="label">
                    <posx>10</posx>
                    <posy>0</posy>
                    <width>305</width>
                    <height>30</height>
                    <font>font-20</font>
                    <textcolor>white</textcolor>
                    <selectedcolor>blue</selectedcolor>
                    <align>left</align>
                    <aligny>center</aligny>
                    <label>$INFO[ListItem.Label]</label>
                </control>
                <control type="image">
                    <posx>325</posx>
                    <posy>0</posy>
                    <width>30</width>
                    <height>30</height>
                    <aspectratio>keep</aspectratio>
                    <texture>$VAR[PartlyWatched]</texture>
                    <visible>[[Container.Content(Movies) + !Skin.HasSetting(Enable_Movies_Watched_Flags)] | [Container.Content(TVShows) + !Skin.HasSetting(Enable_TVShows_Watched_Flags)] | [Container.Content(Seasons) + !Skin.HasSetting(Enable_TVShows_Watched_Flags)] | [Container.Content(Episodes) + !Skin.HasSetting(Enable_TVShows_Watched_Flags)] | [Container.Content(MusicVideos) + !Skin.HasSetting(Enable_MusicVideos_Watched_Flags)] | [Container.Content(Files) + !Skin.HasSetting(Enable_Videos_Watched_Flags)] | Window.IsVisible(VideoPlaylist)]</visible>
                </control>
                <control type="image">
                    <posx>325</posx>
                    <posy>0</posy>
                    <width>30</width>
                    <height>30</height>
                    <aspectratio>keep</aspectratio>
                    <texture>$INFO[ListItem.Overlay]</texture>
                    <visible>[Container.Content(Movies) + !Skin.HasSetting(Enable_Movies_Watched_Flags)] | [Container.Content(TVShows) + !Skin.HasSetting(Enable_TVShows_Watched_Flags)] | [Container.Content(Seasons) + !Skin.HasSetting(Enable_TVShows_Watched_Flags)] | [Container.Content(Episodes) + !Skin.HasSetting(Enable_TVShows_Watched_Flags)] | [Container.Content(MusicVideos) + !Skin.HasSetting(Enable_MusicVideos_Watched_Flags)] | [Container.Content(Files) + !Skin.HasSetting(Enable_Videos_Watched_Flags)] | Window.IsVisible(VideoPlaylist)</visible>
                </control>
            </itemlayout>

If I understand this corrently, this populates the video file entires on the menu which are treated as button entries. What I am confused about is which XML file handles the processing of the menu entries (e.g. <onclick>). Any assistance would be greatly appreciated.
Kodi 17, Transparency Skin
PogoPlug v4 running Arm Linux 4.4.63 as MySQL (mariadb) server.
Mac OS 10.12.5
2015 27" iMac 3.3 GHz Quad, 16GB RAM, 1TB SSD
2015 13" Macbook Pro, 8GB RAM, 256GB SSD
AppleTV 4 TV OS 10
Reply
#2
(2012-12-19, 20:48)winestock Wrote: If I understand this corrently, this populates the video file entires on the menu which are treated as button entries. What I am confused about is which XML file handles the processing of the menu entries (e.g. <onclick>). Any assistance would be greatly appreciated.

i'm afraid i can't follow what you mean...
Do not PM or e-mail Team-Kodi members directly asking for support.
Always read the Forum rules, Kodi online-manual, FAQ, Help and Search the forum before posting.
Reply
#3
(2012-12-19, 22:54)ronie Wrote:
(2012-12-19, 20:48)winestock Wrote: If I understand this corrently, this populates the video file entires on the menu which are treated as button entries. What I am confused about is which XML file handles the processing of the menu entries (e.g. <onclick>). Any assistance would be greatly appreciated.

i'm afraid i can't follow what you mean...

What I want to do is when I select a video entry on the files menu I want to be able to call Skin.SetString by embedding it in the <onclick>. I assume that the menu entry button is handled within another Transparency XML file after View-Fanart.xml. From my debugging I commented out the code I showed in View-Fanart.xml and the menu entries were not shown so I assume that that is where the menu entries are being setup t be processed as menu buttons. I have confirmed this in the XBMC wiki for list control. What I want ro do now is add code to the XML file that processes the video file entry when the video file menu entry is selected. Maybe this explains a little better what I need help with.
Kodi 17, Transparency Skin
PogoPlug v4 running Arm Linux 4.4.63 as MySQL (mariadb) server.
Mac OS 10.12.5
2015 27" iMac 3.3 GHz Quad, 16GB RAM, 1TB SSD
2015 13" Macbook Pro, 8GB RAM, 256GB SSD
AppleTV 4 TV OS 10
Reply
#4
ah, get it now.
i'm afraid you can't add/modify the <onclick> for the list items.
this is all handled by xbmc outside the skin.

if you want to extend the breadcrumbs, you may be able to do so
by adding one of these infolabels:
Container.FolderPath
Container.FolderName
ListItem.FolderPath
ListItem.FolderName

jus test 'm to see which works for you.
Do not PM or e-mail Team-Kodi members directly asking for support.
Always read the Forum rules, Kodi online-manual, FAQ, Help and Search the forum before posting.
Reply
#5
(2012-12-20, 02:02)ronie Wrote: ah, get it now.
i'm afraid you can't add/modify the <onclick> for the list items.
this is all handled by xbmc outside the skin.

if you want to extend the breadcrumbs, you may be able to do so
by adding one of these infolabels:
Container.FolderPath
Container.FolderName
ListItem.FolderPath
ListItem.FolderName

jus test 'm to see which works for you.

I have already gone down that path. I tried adding what I wanted to Include_Variables.xml. The problem is, a variable in XBMC does not retain a previous value like one would think a varaible would in most computer languages. I wanted to retain 4 levels of Container.FolderName but that is impossible given how variables work in XBMC. The best I could do is two levels and in order to do that I had to hard code the source names I used in my sources.xml where I would use (e.g. substring(Container.FolderName, /Adult)). I looked at how the Confluence skin showed the breadcrumbs and only two levels are shown. It would be nice if variables retained their value like when using Skin.SetString works.
Kodi 17, Transparency Skin
PogoPlug v4 running Arm Linux 4.4.63 as MySQL (mariadb) server.
Mac OS 10.12.5
2015 27" iMac 3.3 GHz Quad, 16GB RAM, 1TB SSD
2015 13" Macbook Pro, 8GB RAM, 256GB SSD
AppleTV 4 TV OS 10
Reply
#6
Hi Ronie,

Has there been any further development on adding better breadcrumb support to XBMC in Gotham?
Kodi 17, Transparency Skin
PogoPlug v4 running Arm Linux 4.4.63 as MySQL (mariadb) server.
Mac OS 10.12.5
2015 27" iMac 3.3 GHz Quad, 16GB RAM, 1TB SSD
2015 13" Macbook Pro, 8GB RAM, 256GB SSD
AppleTV 4 TV OS 10
Reply
#7
(2013-09-06, 19:33)winestock Wrote: Hi Ronie,

Has there been any further development on adding better breadcrumb support to XBMC in Gotham?

not that i'm aware of.
Do not PM or e-mail Team-Kodi members directly asking for support.
Always read the Forum rules, Kodi online-manual, FAQ, Help and Search the forum before posting.
Reply
#8
I made a personal transparency mod with support of up to 5 levels for Video Breadcrumbs some time ago.

I tested thoroughly, but if you find a location where it doesn't work let me know.

You can download it here. (for svn revision 1491)

If you have Includes.xml or Includes_Variables.xml already modded just compare original xmls (1,2) with modded xmls and include diffs in your xml files.
Reply
#9
ezechiel1917,

I am not sure what revision of Transparency! I am using but I am using v5.0.9. I tried using your modified files and all I get is a single level of breadcrumbs "Movies" no matter which files mode directory I enter.
Kodi 17, Transparency Skin
PogoPlug v4 running Arm Linux 4.4.63 as MySQL (mariadb) server.
Mac OS 10.12.5
2015 27" iMac 3.3 GHz Quad, 16GB RAM, 1TB SSD
2015 13" Macbook Pro, 8GB RAM, 256GB SSD
AppleTV 4 TV OS 10
Reply
#10
I always use svn version: http://forum.xbmc.org/showthread.php?tid=83643 , but diffs should work with older revisions too.

Also I should note this only supports more than 2 "real" levels in Video Library mode (Video Library - Movies - Genres - Comedy). Reading your original post I didn't include currently selected item in list as last level, because imo it doesn't feel right to have it there as it's distracting to constantly update Breadcrumbs when you just browse a list.

In Video Files mode it's really possible to only display one actual $INFO[Container.FolderName] (should be Video Library - Files - FolderName though if I remember correct), unless you hardcode tons of custom FolderPath variables.
Reply
#11
Ah I got it, you are using Frodo, then it won't work because of old db path names.

I use currently Gotham code and it now uses db names like
Code:
videodb://Movies/
instead of old
Code:
videodb://1/

You would have to rename all conditions in my code to old names.
Reply

Logout Mark Read Team Forum Stats Members Help
Adding more breadcrumbs for Video library0