Logo View Labels
#1
Hi Guys. Wondering if anyone can help out here. I'm using Aeon Nox Silvo mod and have been for years now. I've recently added Advanced Launcher and use it for multiple Games emulators. I've messed around with the MyPrograms and includes xml files so that I can use Logo view for the games within Launcher. I found someone else's modded info to use for Games Logo's but I cant seem to get it setup correctly.

Basically I'm not sure what I need to alter in the view_59_Logo xml file to set it so that the labels are not displayed when there is a Logo displayed as it is when you use Logo view for Movies or TV Shows.

This is what I have displayed now:
Image


And this is an image of the addition into the view_59_Logo file which I found elsewhere:

<!-- Games Logo -->
<control type="image">
<left>50</left>
<top>200</top>
<width>490</width>
<height>210</height>
<fadetime>100</fadetime>
<aspectratio align="center" aligny="center">keep</aspectratio>
<texture background="true">$INFO[Listitem.director]/Logo/logo.png</texture>
<visible>!Skin.HasSetting(Enable.Logo.clearart) | [Skin.HasSetting(Enable.Logo.clearart) + IsEmpty(ListItem.Art(clearart))]</visible>
</control>
<!-- End Games Logo -->


Anyone got any ideas how to solve this so that when the logo is displayed the label isn't?
Reply
#2
Hi,

the simplest way would be to use Control.Getlabel like this

Code:
<control type="image" id="1180">
                <left>800</left>
                <width>200</width>
                <colordiffuse>floor</colordiffuse>
                <texture>$VAR[ColorFlagsRating]rating/$VAR[RatingFlagVar,,.png]</texture>
                <include>AudioFlagsVars</include>
                <visible>!Container.Content(tvshows) + !Container.Content(seasons) + !IsEmpty(ListItem.Title) + !Stringcompare(ListItem.Label,..)</visible>
            </control>
            <control type="image">
                <left>800</left>
                <width>200</width>
                <texture>$VAR[ColorFlagsRating]rating/MPAA_NR_Certificate_US.png</texture>
                <include>AudioFlagsVars</include>
                <visible>IsEmpty(Control.GetLabel(1180))</visible>
                <visible>!Container.Content(tvshows) + !Container.Content(seasons) + !IsEmpty(ListItem.Title) + !Stringcompare(ListItem.Label,..)</visible>
            </control>

You need to assign an id to your image like <control type="image" id="9876">, then in the label control for the 'label' you need to create the visible like this <visible>IsEmpty(Control.GetLabel(9876))</visible>

This should mean the label is only displayed when the image doesn't exist.
SKIN: Aeon Madnox
RIP Schimi2k, we miss you.
When I grow up I want to be a skilled skinner
Thank me by ⬇ adding to my + reputation
Reply
#3
(2016-02-12, 19:55)Mike_Doc Wrote: Hi,

the simplest way would be to use Control.Getlabel like this

Code:
<control type="image" id="1180">
                <left>800</left>
                <width>200</width>
                <colordiffuse>floor</colordiffuse>
                <texture>$VAR[ColorFlagsRating]rating/$VAR[RatingFlagVar,,.png]</texture>
                <include>AudioFlagsVars</include>
                <visible>!Container.Content(tvshows) + !Container.Content(seasons) + !IsEmpty(ListItem.Title) + !Stringcompare(ListItem.Label,..)</visible>
            </control>
            <control type="image">
                <left>800</left>
                <width>200</width>
                <texture>$VAR[ColorFlagsRating]rating/MPAA_NR_Certificate_US.png</texture>
                <include>AudioFlagsVars</include>
                <visible>IsEmpty(Control.GetLabel(1180))</visible>
                <visible>!Container.Content(tvshows) + !Container.Content(seasons) + !IsEmpty(ListItem.Title) + !Stringcompare(ListItem.Label,..)</visible>
            </control>

You need to assign an id to your image like <control type="image" id="9876">, then in the label control for the 'label' you need to create the visible like this <visible>IsEmpty(Control.GetLabel(9876))</visible>

This should mean the label is only displayed when the image doesn't exist.

Hi Mike

Thanks for this. Is this now correct? I have added the id number to the image as below.

<!-- Games Logo -->
<control type="image" id="9876">
<left>50</left>
<top>200</top>
<width>490</width>
<height>210</height>
<fadetime>100</fadetime>
<aspectratio align="center" aligny="center">keep</aspectratio>
<texture background="true">$INFO[Listitem.director]/Logo/logo.png</texture>
<visible>!Skin.HasSetting(Enable.Logo.clearart) | [Skin.HasSetting(Enable.Logo.clearart) + IsEmpty(ListItem.Art(clearart))]</visible>
</control>
<!-- End Games Logo -->

And I have added the control for the label as below:

<control type="group">
<visible>IsEmpty(ListItem.Art(clearlogo))</visible>
<visible>IsEmpty(Control.GetLabel(9876))</visible>
<control type="label">
<posx>0</posx>
<posy>250</posy>
<width>470</width>
<height>30</height>
<align>center</align>
<font>font14</font>
<scroll>true</scroll>
<scrollspeed>80</scrollspeed>
<textcolor>white</textcolor>
<label>$VAR[FloorLabelVar]</label>
</control>

But nothing seems to change?
Reply
#4
Did you reload or restart kodi after changing the xml?
SKIN: Aeon Madnox
RIP Schimi2k, we miss you.
When I grow up I want to be a skilled skinner
Thank me by ⬇ adding to my + reputation
Reply
#5
(2016-02-12, 20:34)Mike_Doc Wrote: Did you reload or restart kodi after changing the xml?

Yes I closed and restarted Kodi after change. I have messed around with it and have changed the label control to below

<visible>IsEmpty(ListItem.Art(clearlogo)) | IsEmpty[Listitem.director]/Logo/logo.png</visible>

Without adding the id number to the image this seems to work and does remove the label which is good.

Only problem is that after making this change it also removes the labels in the movies library for the files which I don't have logos for.

It seems to work for either movies or games but not both
Reply
#6
Code:
<visible>IsEmpty(ListItem.Art(clearlogo)) + !Window.IsActive(programs) | IsEmpty[Listitem.director]/Logo/logo.png + Window.IsActive(programs)</visible>
?
Reply
#7
Code:
<?xml version="1.0" encoding="UTF-8"?>
<includes>
    <!-- Logo -->
    <include name="LandscapeLogoLayout">
        <control type="image">
            <left>52</left>
            <top>178</top>
            <width>390</width>
            <height>164</height>
            <aspectratio aligny="bottom">keep</aspectratio>
            <texture background="true">$INFO[ListItem.Art(clearlogo)]</texture>
            <visible>!Skin.HasSetting(Enable.Logo.clearart) | [Skin.HasSetting(Enable.Logo.clearart) + IsEmpty(ListItem.Art(clearart))]</visible>
        </control>
        <!-- Games Logo -->
        <control type="image">
            <left>50</left>
            <top>200</top>
            <width>490</width>
            <height>210</height>
            <fadetime>100</fadetime>
            <aspectratio align="center" aligny="center">keep</aspectratio>
            <texture background="true">$INFO[Listitem.director]/Logo/logo.png</texture>
            <visible>!Skin.HasSetting(Enable.Logo.clearart) | [Skin.HasSetting(Enable.Logo.clearart) + IsEmpty(ListItem.Art(clearart))]</visible>
        </control>
        <!-- End Games Logo -->
        <control type="image">
            <left>52</left>
            <top>345</top>
            <width>390</width>
            <height>164</height>
            <aspectratio aligny="top">keep</aspectratio>
            <texture background="true" flipy="true">$INFO[ListItem.Art(clearlogo)]</texture>
            <animation effect="fade" start="15" end="15" time="160" tween="cubic" easing="inout" condition="true">Conditional</animation>
            <visible>!Skin.HasSetting(Enable.Logo.clearart) | [Skin.HasSetting(Enable.Logo.clearart) + IsEmpty(ListItem.Art(clearart))]</visible>
        </control>
        <control type="image">
            <left>52</left>
            <top>178</top>
            <width>390</width>
            <height>164</height>
            <aspectratio aligny="bottom">keep</aspectratio>
            <texture background="true">$INFO[ListItem.Art(clearart)]</texture>
            <visible>Skin.HasSetting(Enable.Logo.clearart)</visible>
        </control>
        <control type="image">
            <left>52</left>
            <top>345</top>
            <width>390</width>
            <height>164</height>
            <aspectratio aligny="top">keep</aspectratio>
            <texture background="true" flipy="true">$INFO[ListItem.Art(clearart)]</texture>
            <animation effect="fade" start="15" end="15" time="160" tween="cubic" easing="inout" condition="true">Conditional</animation>
            <visible>Skin.HasSetting(Enable.Logo.clearart)</visible>
        </control>
        <control type="group">
            <visible>IsEmpty(ListItem.Art(clearlogo)) + !Window.IsActive(programs) | IsEmpty[Listitem.director]/Logo/logo.png + Window.IsActive(programs)</visible>
            <control type="label">
                <posx>0</posx>
                <posy>250</posy>
                <width>470</width>
                <height>30</height>
                <align>center</align>
                <font>font14</font>
                <scroll>true</scroll>
                <scrollspeed>80</scrollspeed>
                <textcolor>white</textcolor>
                <label>[B]$VAR[FloorLabelVar][/B]</label>
            </control>
        </control>
        <control type="group">
            <left>20</left>
            <top>300</top>
            <include condition="Skin.HasSetting(Disable.UnwatchedIcon)">UnwatchedIcon</include>
        </control>
    </include>
    <include name="LogoFixed">
        <control type="fixedlist" id="59">
            <include>contents59list</include>
        </control>
    </include>
    <include name="LogoWrap">
        <control type="wraplist" id="59">
            <include>contents59list</include>
        </control>
    </include>
    <include name="contents59list">
        <left>-277</left>
        <top>565</top>
        <width>2475</width>
        <height>525</height>
        <onleft>59</onleft>
        <onright>59</onright>
        <onup>SetProperty(MediaMenu,True,home)</onup>
        <onup>SetFocus(9050)</onup>
        <ondown condition="Control.IsVisible(59060)">59060</ondown>
        <ondown condition="!Control.IsVisible(59060)">4400</ondown>
        <pagecontrol>59060</pagecontrol>
        <preloaditems>2</preloaditems>
        <focusposition>2</focusposition>
        <viewtype label="Logo">list</viewtype>
        <scrolltime tween="quadratic" easing="out">300</scrolltime>
        <visible>Container.Content(tvshows) | Container.Content(movies) | [SubString(Container.FolderPath,plugin.program.advanced.launcher)]</visible>
        <orientation>horizontal</orientation>
        <itemlayout width="495" height="450">
            <include>LandscapeLogoLayout</include>
        </itemlayout>
        <focusedlayout width="495" height="450">
            <control type="group">
                <animation effect="zoom" center="auto" start="100" end="122" time="480" tween="back" reversible="false">Focus</animation>
                <animation effect="zoom" center="auto" start="122" end="100" time="160" tween="back" reversible="false">UnFocus</animation>
                <include>LandscapeLogoLayout</include>
            </control>
        </focusedlayout>
    </include>
    <include name="View_59_Logo">
        <control type="group">
            <visible>Control.IsVisible(59) + !Window.IsActive(addoninformation)</visible>
            <include>ViewAnimation</include>
            <include condition="Skin.HasSetting(HorizontalListNav)">LogoFixed</include>
            <include condition="!Skin.HasSetting(HorizontalListNav)">LogoWrap</include>
            <control type="scrollbar" id="59060">
                <left>110</left>
                <top>935</top>
                <width>1680</width>
                <height>5</height>
                <onup>59</onup>
                <ondown>4400</ondown>
                <texturesliderbackground border="1">-</texturesliderbackground>
                <texturesliderbar>listselect_fo.png</texturesliderbar>
                <texturesliderbarfocus>listselect_fo.png</texturesliderbarfocus>
                <textureslidernib>-</textureslidernib>
                <textureslidernibfocus>-</textureslidernibfocus>
                <showonepage>false</showonepage>
                <orientation>horizontal</orientation>
                <animation effect="fade" start="100" end="0" time="500" delay="500" condition="!Control.HasFocus(59060) + !Container.Scrolling">Conditional</animation>
                <animation effect="zoom" start="100,100" end="100,200" center="auto" tween="sine" easing="inout" time="500" pulse="true" condition="Control.HasFocus(59060)">Conditional</animation>
            </control>
        </control>
    </include>
</includes>
Thanks Mike. I have included this in the label control but nothing changes. With the file as it is I get a clean looking view in artwork downloader displaying logos and no labels but in movies where I am not able to find logos for older films the label is not displayed.

Can you see anything wrong in the above? Sorry to be a pain. I'm not really used to changing things in the xml files
Reply
#8
Code:
<control type="image" id="99876">
            <left>50</left>
            <top>200</top>
            <width>490</width>
            <height>210</height>
            <fadetime>100</fadetime>
            <aspectratio align="center" aligny="center">keep</aspectratio>
            <texture fallback="empty.png" background="true">$INFO[Listitem.Director]/Logo/logo.png</texture>
        </control>

Code:
<control type="label">
                <posx>0</posx>
                <posy>250</posy>
                <width>470</width>
                <height>30</height>
                <align>center</align>
                <font>font14</font>
                <scroll>true</scroll>
                <scrollspeed>80</scrollspeed>
                <textcolor>white</textcolor>
                <label>[B]$VAR[FloorLabelVar][/B]</label>
                <visible>[Container.Content(movies) | Container.Content(tvshows)] + IsEmpty(ListItem.Art(clearlogo)) | SubString(Container.FolderPath,plugin.program.advanced.launcher) + Substring(Control.GetLabel(99876),empty.png)</visible>
            </control>
Huh
Edit: there was a typo
Reply
#9
(2016-02-12, 21:33)mikesilvo164 Wrote:
Code:
<control type="image" id="99876">
            <left>50</left>
            <top>200</top>
            <width>490</width>
            <height>210</height>
            <fadetime>100</fadetime>
            <aspectratio align="center" aligny="center">keep</aspectratio>
            <texture fallback="empty.png" background="true">$INFO[Listitem.Director]/Logo/logo.png</texture>
        </control>

Code:
<control type="label">
                <posx>0</posx>
                <posy>250</posy>
                <width>470</width>
                <height>30</height>
                <align>center</align>
                <font>font14</font>
                <scroll>true</scroll>
                <scrollspeed>80</scrollspeed>
                <textcolor>white</textcolor>
                <label>[B]$VAR[FloorLabelVar][/B]</label>
                <visible>[Container.Content(movies) | Container.Content(tvshows)] + IsEmpty(ListItem.Art(clearlogo)) | SubString(Container.FolderPath,plugin.program.advanced.launcher) + Substring(Control.GetLabel(99876),empty.png)</visible>
            </control>
Huh
Edit: there was a typo

Ok works brilliantly thanks mate.

I now have another problem. Worked great on my laptop testing rig. Tried to get it to work on my main rig, just copied the altered xml files over to ne machine and now I can't select the Logo view mode within advanced launcher. Logo view mode is listed there but when I select it, It just reverts back to list view. Any idea what could be wrong? Not sure if it could be something to do with the custom views 1130 xml.

I inserted this in to select logo in advanced launcher. Does it look right to you?

Code:
<item>
                        <label>Logo</label>
                        <onclick>Container.SetViewMode(59)</onclick>
                        <visible>[SubString(Container.FolderPath,plugin.program.advanced.launcher)] + !Skin.HasSetting(Disable.LogoView)</visible>
                    </item>
Reply
#10
(2016-02-12, 23:11)mattneed89 Wrote:
(2016-02-12, 21:33)mikesilvo164 Wrote:
Code:
<control type="image" id="99876">
            <left>50</left>
            <top>200</top>
            <width>490</width>
            <height>210</height>
            <fadetime>100</fadetime>
            <aspectratio align="center" aligny="center">keep</aspectratio>
            <texture fallback="empty.png" background="true">$INFO[Listitem.Director]/Logo/logo.png</texture>
        </control>

Code:
<control type="label">
                <posx>0</posx>
                <posy>250</posy>
                <width>470</width>
                <height>30</height>
                <align>center</align>
                <font>font14</font>
                <scroll>true</scroll>
                <scrollspeed>80</scrollspeed>
                <textcolor>white</textcolor>
                <label>[B]$VAR[FloorLabelVar][/B]</label>
                <visible>[Container.Content(movies) | Container.Content(tvshows)] + IsEmpty(ListItem.Art(clearlogo)) | SubString(Container.FolderPath,plugin.program.advanced.launcher) + Substring(Control.GetLabel(99876),empty.png)</visible>
            </control>
Huh
Edit: there was a typo

Ok works brilliantly thanks mate.

I now have another problem. Worked great on my laptop testing rig. Tried to get it to work on my main rig, just copied the altered xml files over to ne machine and now I can't select the Logo view mode within advanced launcher. Logo view mode is listed there but when I select it, It just reverts back to list view. Any idea what could be wrong? Not sure if it could be something to do with the custom views 1130 xml.

I inserted this in to select logo in advanced launcher. Does it look right to you?

Code:
<item>
                        <label>Logo</label>
                        <onclick>Container.SetViewMode(59)</onclick>
                        <visible>[SubString(Container.FolderPath,plugin.program.advanced.launcher)] + !Skin.HasSetting(Disable.LogoView)</visible>
                    </item>

Anyone help with the above?
Reply
#11
I thought you were using Helix Huh The custom view selector window is for Isengard and up. I can only suggest checking to make sure you have the correct visible in the contents59list include and there are no errors in the xml file. Troubleshooting would require manually reverting all the changes you made and checking the view by reloading the skin after every change till it works then you know where the problem is and can start from there to add everything back in. Take it one step at a time and make sure every line has an open and closing element including the entire control itself.

Example:
<control type="image">
<texture>$INFO[ListItem.Whatever]</texture>
</control>

Good Luck Smile
Reply
#12
(2016-02-14, 18:58)mikesilvo164 Wrote: I thought you were using Helix Huh The custom view selector window is for Isengard and up. I can only suggest checking to make sure you have the correct visible in the contents59list include and there are no errors in the xml file. Troubleshooting would require manually reverting all the changes you made and checking the view by reloading the skin after every change till it works then you know where the problem is and can start from there to add everything back in. Take it one step at a time and make sure every line has an open and closing element including the entire control itself.

Example:
<control type="image">
<texture>$INFO[ListItem.Whatever]</texture>
</control>

Good Luck Smile

Thanks for your help Mike.

I'm about ready to give in. To be honest I have absolutely no clue what I am doing when it comes to editing the xml files. I'm trying to teach myself what things mean but getting nowhere. I'm basically just butchering things and seeing if they work. And nothing seems to.

I know you have all ready helped out a lot and hell you've provided an all ready great skin in the first place. Is there any chance you could look into this any further for me?

I'm just getting nowhere here.

I know I had it working at some point but I can't work out how or what is wrong now. I think it is to do with the view file itself - ie what I've added to the file. Logo shows up in the list of available views but when I select it, it changes to list view instead of Logo.

Your help is and would be massively appreciated.
Reply
#13
If it's changing to List instead of Logo then it means the xml for Logo is not correctly built. This is a Kodi fallback, if you try to load an incorrectly formatted view xml then Kodi will default to loading the list view in it's place.

As Mike suggested you'll need to go through the logo xml and check your changes as somewhere along the line you've changed / added something that probably doesn't have the correct tags to it causing the xml to effectively break.

What are you using to modify the xml files?. For beginners I would suggest you use Notepad++ and install a plugin called XML Tools, this will help you as when you save the XML it should check it is formatted correctly and if not should usually give you a hint / message on what and where the problem is.
SKIN: Aeon Madnox
RIP Schimi2k, we miss you.
When I grow up I want to be a skilled skinner
Thank me by ⬇ adding to my + reputation
Reply
#14
(2016-02-15, 10:22)Mike_Doc Wrote: If it's changing to List instead of Logo then it means the xml for Logo is not correctly built. This is a Kodi fallback, if you try to load an incorrectly formatted view xml then Kodi will default to loading the list view in it's place.

As Mike suggested you'll need to go through the logo xml and check your changes as somewhere along the line you've changed / added something that probably doesn't have the correct tags to it causing the xml to effectively break.

What are you using to modify the xml files?. For beginners I would suggest you use Notepad++ and install a plugin called XML Tools, this will help you as when you save the XML it should check it is formatted correctly and if not should usually give you a hint / message on what and where the problem is.

I think it is the case what I've added into Logo view to pull the games logo from the games directory isn't correct.

I've got notepad++ with xml tools plugin and no errors show up.

To be honest I don't know what the commands mean that I'm adding.

Would there be any chance one of you could show me what I would need to add to the view file to make it search for a logo I have saved in my games directory and to make this work.

I have been a massive fan of Kodi and the SIlvo mod of Nox for years and love how it displays all my movies and TV shows cleanly. There just doesn't seem to be a clean view for advanced launcher right now so I'm really keen to get this working.
Reply
#15
Send me the xml via PM, just dropbox it or something if you can.

Let me know the changes you've done and what you're trying to do and I'll have a look for you.
SKIN: Aeon Madnox
RIP Schimi2k, we miss you.
When I grow up I want to be a skilled skinner
Thank me by ⬇ adding to my + reputation
Reply

Logout Mark Read Team Forum Stats Members Help
Logo View Labels0