Multiimage help
#1
i need a little help with multiimage control, i am trying to have a ICON and a BACKDROP image on my home menu, but no matter what i do my ICON uses the same image as my BACKDROP is it not possible to have different images ?

i have tried setting <icon> to the image for my required ICON, & i have tried setting <thumb> to the BACKDROP image but BOTH image use the BACKDROP image.

also tried VICE-VERSA but it made NO difference.

PHP Code:
<control type="multiimage">
            <
posx>0</posx>
            <
posy>0</posy>
            <
width>1920</width>
            <
height>1080</height>
            <
imagepath background="true">$INFO[Container(9000).ListItem.Icon]</imagepath>
            <
timeperimage>8000</timeperimage>
            <
randomize>true</randomize>
            <
fadetime>1000</fadetime>
        </
control>
            <
control type="fixedlist" id="9000">
                <
hitrect x="50" y="50" w="495" h="930" />
                <
posx>-30</posx>
                <
posy>173</posy>
                <
width>600</width>
                <
height>714</height>
                <
onleft>10</onleft>
                <
onright>9001</onright>
                <
onup>9000</onup>
                <
ondown>9000</ondown>
                <
pagecontrol>-</pagecontrol>
                <
scrolltime>300</scrolltime>
                <
focusposition>3</focusposition>
                <
movement>2</movement>
                <
animation effect="fade" start="0" end="100" time="200">Visible</animation>
                <
itemlayout height="102" width="570">
                    <
control type="label">
                        <
posx>570</posx>
                        <
posy>30</posy>
                        <
width>570</width>
                        <
height>60</height>
                        <
font>Home_MainMenu</font>
                        <
textcolor>grey3</textcolor>
                        <
align>right</align>
                        <
aligny>center</aligny>
                        <
label>[UPPERCASE]$INFO
[ListItem.Label][/UPPERCASE]</label>
                        <
animation effect="zoom" start="65" end="65" center="570,51" time="0" condition="true">Conditional</animation>
                    </
control>
                </
itemlayout>
                <
focusedlayout height="102" width="570">
                    <
control type="label">
                        <
posx>570</posx>
                        <
posy>30</posy>
                        <
width>570</width>
                        <
height>60</height>
                        <
font>Home_MainMenu</font>
                        <
textcolor>white</textcolor>
                        <
align>right</align>
                        <
aligny>center</aligny>
                        <
animation type="Focus">
                            <
effect type="zoom" start="65" end="100" center="570,51" time="200" tween="cubic" easing="inout" /> 
                            <
effect type="fade" start="20" end="100" time="200" />        
                        </
animation>
                        <
animation type="UnFocus" condition="!ControlGroup(9001).HasFocus">
                            <
effect type="zoom" start="100" end="65" center="570,51" time="200" tween="cubic" easing="inout" /> 
                            <
effect type="fade" start="100" end="20" time="0" />        
                        </
animation>
                        <
label>[UPPERCASE]$INFO
[ListItem.Label][/UPPERCASE]</label>
                    </
control>
                    <
control type="image">
                        <
posx>200</posx>
                        <
posy>94</posy>
                        <
width>250</width>
                        <
height>250</height>
                        <
info>ListItem.Icon</info>
                    </
control>
                    <
control type="image">
                        <
posx>555</posx>
                        <
posy>94</posy>
                        <
width>27</width>
                        <
height>27</height>
                        <
texture>HomeHasSub.png</texture>
                    </
control>
                </
focusedlayout>
                <
content>
                    <
item id="2">
                        <
label>3</label>
                        <
onclick>ActivateWindow(Videos)</onclick>
                        <
thumb>special://skin/backgrounds/pictures.jpg</thumb>
                        
<icon fallback="special://skin/backgrounds/videos.jpg">$INFO[Skin.String(Home_Custom_Back_Video_Folder)]</icon>
                        <
visible>!Skin.HasSetting(HomeMenuNoVideosButton) + ![Skin.HasSetting(HomeMenuNoMoviesButton) + Skin.HasSetting(HomeMenuNoTVShowsButton)]</visible>
                    </
item>
                </
content>
            </
control
EDIT: Just realised that i had both set to use ListItem.Icon, now if i set one them to use ListItem.Thumb i get no image for that one, any ideas ?
Reply
#2
ListItem.Icon returns:

1. The thumb if it exists.
2. The icon if the thumb doesn't exist.

If you want the <icon> in all cases, use ListItem.ActualIcon.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


Image
Reply
#3
jmarshall Wrote:ListItem.Icon returns:

1. The thumb if it exists.
2. The icon if the thumb doesn't exist.

If you want the <icon> in all cases, use ListItem.ActualIcon.
I believe he mean that he use to multiimage container with the same path, that both show the same image, not randomly different. Both Container pick the same Image from the folderpath is given.
Reply
#4
jmarshall Wrote:ListItem.Icon returns:

1. The thumb if it exists.
2. The icon if the thumb doesn't exist.

If you want the <icon> in all cases, use ListItem.ActualIcon.

thanks but, that still returns the same image. i will try to explain better what i am after.

image1 = 1080p background pic of the menu item (ie Movie Seats)
image2 = 250x250 thumb image of the menu item (ie Film Roll)

so i would like <icon>to use image1 and image2 to use image2, but both to be displayed at the same time and change s i scroll through the fixedlist. so both images are different but need to be displayed together.
Reply
#5
ListItem.ActualIcon should show <icon> tag
and
ListItem.Thumb should show <thumb> tag
and
ListItem.Icon will show <icon> if <thumb> is empty
Reply
#6
ok, i must be doing something wrong then, because i just get the same image on both the background and the icon thumb.

this is what i have in my code.

PHP Code:
<control type="multiimage">
    <
posx>0</posx>
    <
posy>0</posy>
    <
width>1920</width>
    <
height>1080</height>
    <
imagepath background="true">$INFO[Container(9000).ListItem.Icon]</imagepath>
    <
timeperimage>8000</timeperimage>
    <
randomize>true</randomize>
    <
fadetime>1000</fadetime>
</
control>

<
control type="fixedlist" id="9000">
    <
hitrect x="50" y="50" w="495" h="930" />
    <
posx>-30</posx>
    <
posy>173</posy>
    <
width>600</width>
    <
height>714</height>
    <
onleft>10</onleft>
    <
onright>9001</onright>
    <
onup>9000</onup>
    <
ondown>9000</ondown>
    <
pagecontrol>-</pagecontrol>
    <
scrolltime>300</scrolltime>
    <
focusposition>3</focusposition>
    <
movement>2</movement>
    <
itemlayout height="102" width="570">
        <
control type="label">
            <
posx>570</posx>
            <
posy>30</posy>
            <
width>570</width>
            <
height>60</height>
            <
font>Home_MainMenu</font>
            <
textcolor>grey3</textcolor>
            <
align>right</align>
            <
aligny>center</aligny>
            <
label>[UPPERCASE]$INFO[ListItem.Label][/UPPERCASE]</label>
        </
control>
    </
itemlayout>
    <
focusedlayout height="102" width="570">
        <
control type="label">
            <
posx>570</posx>
            <
posy>30</posy>
            <
width>570</width>
            <
height>60</height>
            <
font>Home_MainMenu</font>
            <
textcolor>white</textcolor>
            <
align>right</align>
            <
aligny>center</aligny>
            <
label>[UPPERCASE]$INFO[ListItem.Label][/UPPERCASE]</label>
        </
control>
        <
control type="image">
            <
posx>300</posx>
            <
posy>-70</posy>
            <
width>250</width>
            <
height>250</height>
            <
info>ListItem.ActualIcon</info>
        </
control>
    </
focusedlayout>
    <
content>
        <
item id="1">
            <
label>3</label>
            <
onclick>ActivateWindow(Videos)</onclick>
            <
icon>special://skin/thumbs/videos.jpg</icon>
            
<thumb fallback="special://skin/backgrounds/videos.jpg">$INFO[Skin.String(Home_Custom_Back_Video_Folder)]</thumb>
            <
visible>!Skin.HasSetting(HomeMenuNoVideosButton) + ![Skin.HasSetting(HomeMenuNoMoviesButton) + Skin.HasSetting(HomeMenuNoTVShowsButton)]</visible>
        </
item>
        <
item id="2">
            <
label>20342</label>
            <
onclick>ActivateWindow(VideoLibrary,MovieTitles,return)</onclick>
            <
icon>special://skin/thumbs/movies.jpg</icon>
            
<thumb fallback="special://skin/backgrounds/movies.jpg">$INFO[Skin.String(Home_Custom_Back_Movies_Folder)]</thumb>
            <
visible>Skin.HasSetting(HomeMenuNoMoviesButton) + Library.HasContent(Movies)</visible>
        </
item>
    </
content>
</
control

and this is the result.
Image

and if i change the <imagepath background="true">$INFO[Container(9000).ListItem.Icon]</imagepath> to <imagepath background="true">$INFO[Container(9000).ListItem.Thumb]</imagepath> i don't get my background image, it just stays black.
Reply
#7
why are you using a multiimage to display the selected items thumb or icon? mutliimage must be pointed to a folder as it will use the images inside that folder and cycle them.

or am i missing something here Huh

so what your wanting is a backdrop and an icon you specify to be shown when you select a certain control?

if so you create a image control and point the texture field to the image you want displayed then you set the visible field to what ever your container id is and the position in that container.

so would be like this

icon code
Code:
<control type="image">
<posx></posx>
<posy></posy>
<width></width>
<height></height>
<texture>myicon.png</texture>
<visible>Container(9000).HasFocus(1)</visible>
</control>

or you can use this to get the info from the icon field

$INFO[Container(9000).ListItem(1).Icon] that will only show the icon from the icon field for control 1 but again you cant use a image in a multiimage has to be a folder.
Reply
#8
Rocky5 Wrote:why are you using a multiimage to display the selected items thumb or icon? mutliimage must be pointed to a folder as it will use the images inside that folder and cycle them.

or am i missing something here Huh

so what your wanting is a backdrop and an icon you specify to be shown when you select a certain control?

if so you create a image control and point the texture field to the image you want displayed then you set the visible field to what ever your container id is and the position in that container.

so would be like this

icon code
Code:
<control type="image">
<posx></posx>
<posy></posy>
<width></width>
<height></height>
<texture>myicon.png</texture>
<visible>Container(9000).HasFocus(1)</visible>
</control>

or you can use this to get the info from the icon field

$INFO[Container(9000).ListItem(1).Icon] that will only show the icon from the icon field for control 1 but again you cant use a image in a multiimage has to be a folder.

but that mean have to have loads of controls (one for each menu item), surely there a better way ?.
Reply
#9
nay you could just use $INFO[Container(9000).ListItem.ActualIcon] in an image control to display the current icon then you can just use conditional animations to move it if it need moving if not then your fine.

the above post was incorrect you need to use ActualIcon sorry
Reply
#10
Rocky5 Wrote:nay you could just use $INFO[Container(9000).ListItem.ActualIcon] in an image control to display the current icon then you can just use conditional animations to move it if it need moving if not then your fine.

the above post was incorrect you need to use ActualIcon sorry


sorry you have gotten me lost could you do mockup for me, so i have both icon and background working ?
Reply
#11
andyblac Wrote:sorry you have gotten me lost could you do mockup for me, so i have both icon and background working ?

PHP Code:
<!-- Thumb Code -->
<
control type="multiimage">
    <
posx>0</posx>
    <
posy>0</posy>
    <
width>1920</width>
    <
height>1080</height>
    <
imagepath background="true">$INFO[Container(9000).ListItem.Thumb]</imagepath>
    <
timeperimage>8000</timeperimage>
    <
randomize>true</randomize>
    <
fadetime>1000</fadetime>
</
control>
<!-- 
Icon Code -->
<
control type="image">
    <
posx>0</posx>
    <
posy>0</posy>
    <
width>200</width>
    <
height>200</height>
    <
texture background="true">$INFO[Container(9000).ListItem.ActualIcon]</texture>
</
control
Reply
#12
just tried it, and got nothing, no images for either Sad

using this code for the <item>

PHP Code:
<item id="2">
                        <
label>3</label>
                        <
onclick>ActivateWindow(Videos)</onclick>
                        <
icon>special://skin/thumbs/videos.jpg</icon>
                        
<thumb fallback="special://skin/backgrounds/videos.jpg">$INFO[Skin.String(Home_Custom_Back_Video_Folder)]</thumb>
                        <
visible>!Skin.HasSetting(HomeMenuNoVideosButton) + ![Skin.HasSetting(HomeMenuNoMoviesButton) + Skin.HasSetting(HomeMenuNoTVShowsButton)]</visible>
                    </
item
Reply
#13
andyblac Wrote:just tried it, and got nothing, no images for either Sad

using this code for the <item>

PHP Code:
<item id="2">
                        <
label>3</label>
                        <
onclick>ActivateWindow(Videos)</onclick>
                        <
icon>special://skin/thumbs/videos.jpg</icon>
                        
<thumb fallback="special://skin/backgrounds/videos.jpg">$INFO[Skin.String(Home_Custom_Back_Video_Folder)]</thumb>
                        <
visible>!Skin.HasSetting(HomeMenuNoVideosButton) + ![Skin.HasSetting(HomeMenuNoMoviesButton) + Skin.HasSetting(HomeMenuNoTVShowsButton)]</visible>
                    </
item

i updated the above code but have you set the path for the video folder as you have a skin hassetting there so you need to set the path first then try again (if you haven't coded in that part yet just put the path in there to test)

this code works as it displays the correct info on my home screen and i use a static list for doing that.
Reply
#14
i really do appreciate your help. but i cant for the life of me get it working. could you post your working code for me to take a look at.

cheers

EDIT: ok, i seem to have got it working. well sort of, it seems a) no fallback can use used, & b) it HAS to be a folder not a single image
Reply
#15
andyblac Wrote:i really do appreciate your help. but i cant for the life of me get it working. could you post your working code for me to take a look at.

cheers

EDIT: ok, i seem to have got it working. well sort of, it seems a) no fallback can use used, & b) it HAS to be a folder not a single image

Thats what i said lol Multiimages are folders only in your thumb field you have a skin setting for a folder location well from the name i guess it is but the icon is a image so you use an image control to display that that's where ActualIcon comes in it will use the image from <icon> and thumb will use the image or path from <thumb>.

Multiimage = Folder only
everything = direct path to image
Reply

Logout Mark Read Team Forum Stats Members Help
Multiimage help0