(2019-08-25, 19:15)edjalmo Wrote: (2019-08-25, 02:32)bsoriano Wrote: (2019-08-25, 01:47)edjalmo Wrote: Right! For what I could noticed I not overlap conditions yet
One thing I lost making this way was the shadow behind the images that is a feature of Amber. How can I use it?
@edjalmo, this is the code for shadowedimage, I think you can figure it out from there. Basically, it is the same image, offset by a few pixels, but with a colordiffuse of the shadow color.
xml:
<include name="ShadowedImage">
<param name="top">0</param>
<param name="left">0</param>
<param name="width"/>
<param name="height"/>
<param name="shadowoffset">8</param>
<param name="shadowcolor">HeavyShadow</param>
<param name="texture">$INFO[ListItem.Icon]</param>
<param name="aspect">keep</param>
<param name="align">center</param>
<param name="aligny">center</param>
<param name="visibility">true</param>
<definition>
<control type="group">
<top>$PARAM[top]</top>
<left>$PARAM[left]</left>
<visible>$PARAM[visibility]</visible>
<control type="image" description="Icon Shadow">
<top>$PARAM[shadowoffset]</top>
<left>$PARAM[shadowoffset]</left>
<width>$PARAM[width]</width>
<height>$PARAM[height]</height>
<texture colordiffuse="$PARAM[shadowcolor]">$PARAM[texture]</texture>
<aspectratio align="$PARAM" aligny="$PARAM[aligny]">$PARAM[aspect]</aspectratio>
</control>
<control type="image" description="Icon">
<width>$PARAM[width]</width>
<height>$PARAM[height]</height>
<texture>$PARAM[texture]</texture>
<aspectratio align="$PARAM" aligny="$PARAM[aligny]">$PARAM[aspect]</aspectratio>
</control>
</control>
</definition>
</include>
In fact, you can try using the include in your view, pass it a param "aspect" with the value "keep" for the back folder and all seasons images, and pass it the param "visibility" to match the visibility condition you have for each image type. For example, for the all seasons, it could be something like this:
xml:
<include content="ShadowedImage">
<param name="top">10</param>
<param name="left">185</param>
<param name="width">410</param>
<param name="height">231</param>
<param name="shadowoffset">8</param>
<param name="texture">DefaultFolder.png</param>
<param name="scale">keep</param>
<param name="visibility">[Container.Content(seasons) + String.IsEmpty(ListItem.Season)]</param>
</include>
Hope this helps.
Regards,
Bart
Thanks!
That's what I was looking for: how use aspectration inside a param
I have an problem here: if I use $PARAM[image] or $VAR[Fanart] as an image, they will show another DefaultFolder.png in background with aspect ration scaled. I think is because in some place $VAR[Fanart] was declared with DefaulFolder together.
What I did to contorn this was creating 4 ShadowedImage with different aspect ration and visibility condition: one for DefaultFolder(without image just aspectration=keep), one for episodes ($INFO[ListItem.Art(thumb)] and aspectration=scale), one for movies/tvshows/season/artist ($INFO[ListItem.Art(fanart)] and aspectration=scale) and one for albums/musicvideos/addon ($INFO[ListItem.Art(thumb)] and aspectration=keep).
The last thing here (I hope): how can I use animations inside param? I'm thinking in use something like this
xml:
<animation effect="zoom" end="110" center="auto" time="200">Focus</animation>
Current code: https://pastebin.com/aT4iKQEp
@
edjalmo , the first issue you mention is because one of the itemlayouts/focusedlayouts for BigList chooses $VAR[Square] as the image, and that has DefaultFolder.png as one of its values, if ListItem.IsParentFolder. Change that itemlayout/focusedlayout (it is around line 295 of your code).
As for animations as PARAMs, you can use them, they just need to be <include>s. Please take a look at this code from Arctic Zephyr 2 to understand what I am talking about:
xml:
<include name="View_Group">
<param name="infohide" default="true" />
<param name="animation" default="Animation_Common" />
<param name="bottom" default="view_bottom" />
<definition>
<include content="View_Pad">
<param name="bottom" value="$PARAM[bottom]" />
</include>
<include>$PARAM[animation]</include>
<include condition="$PARAM[infohide]">Defs_InfoDialog_Visible</include>
</definition>
</include>
And the Animation_Common is another include defined thus:
xml:
<include name="Animation_Common">
<animation type="WindowOpen" reversible="false" condition="!Window.Previous(SettingsCategory.xml) + !Window.Previous(SettingsSystemInfo.xml) + !Window.Previous(SkinSettings.xml) + !Window.Previous(SettingsProfile.xml) + !Window.Previous(eventlog)">
<effect type="fade" start="0" end="100" time="300" tween="sine" easing="in" />
<effect type="zoom" start="50" end="100" time="300" center="auto" tween="quadratic" easing="out" />
</animation>
<animation type="WindowClose" reversible="false" condition="!Window.Next(SettingsCategory.xml) + !Window.Next(SettingsSystemInfo.xml) + !Window.Next(SkinSettings.xml) + !Window.Next(SettingsProfile.xml) + !Window.Next(eventlog)">
<effect type="fade" end="0" start="100" time="200" tween="sine" easing="out" />
<effect type="zoom" end="75" start="100" time="200" center="auto" tween="quadratic" easing="in" />
</animation>
<animation type="Visible" reversible="false">
<effect type="fade" start="0" end="100" time="300" delay="300" tween="sine" easing="in" />
<effect type="zoom" start="115" end="100" time="300" delay="300" center="auto" tween="sine" easing="out" />
</animation>
<animation type="Hidden" reversible="false" condition="[![!Window.IsVisible(script-script.extendedinfo-VideoList.xml) + !Window.IsVisible(script-globalsearch-main.xml) + !Window.IsVisible(script-globalsearch-infodialog.xml) + !Window.IsVisible(DialogAddonInfo.xml) + !Window.IsVisible(DialogPVRInfo.xml) + !Window.IsVisible(DialogPVRGuideInfo.xml) + !Window.IsVisible(DialogMusicInfo.xml) + !Window.IsVisible(DialogVideoInfo.xml) + !Window.IsVisible(script-script.extendedinfo-DialogInfo.xml) + !Window.IsVisible(script-script.extendedinfo-DialogVideoInfo.xml)]]">
<effect type="zoom" start="100" end="85" center="auto" tween="sine" delay="0" easing="out" time="300" />
<effect type="fade" start="100" end="0" tween="cubic" easing="out" delay="0" time="300" />
</animation>
</include>
You can create an <include> with whatever name you want for your animation, and then pass that as a PARAM to another include, like the example shows.
Regards,
Bart