Modding question
#1
First off, I love this skin, great work! Best one out there, imo, even better than AeonMQ, which I've used for years. I had a question, though. I've noticed that there aren't too many view options available, as in the size of the big poster/thumbnail and the smaller ones. That is, for things like addons such as Advanced Emulator Launcher, there's only the one square size, which doesn't look too good for non-square game covers, which is a great deal of them, and even less so for horizontal covers. I was wondering if anyone knew which xml file or files control these options since I thought I might tweak the skin in a bit in a mod so posters/thumbs in other sections can look as good as the ones in the movie/tv sections. Thanks for any help!
Reply
#2
Its a little bit old now and certain bits you may need to be adapted to suit this skin but this would be a good place to start with understanding how to add new views to a skin.

http://kodi.wiki/view/HOW-TO:Add_a_new_v...o_the_skin
Reply
#3
Thanks for the tip. I figured out where the view layouts were, in includes_view.xml, and managed to get rid of the text underneath the square thumbnails. But I want to add the existing poster view to the possible views for the addon section. I think if I can do that, I can figure out the rest from there, but I haven't been able to find out how to do it. Nothing I change seems to affect the available view types that can be cycles through, it's stuck at square and list. Any further help would be appreciated. Thanks!
Reply
#4
In Includes_View you need to add a visibility condition so that it will show up to the following section:

Code:
<include name="View_Posters">
        <control type="fixedlist" id="50">
            <visible>Container.Content(movies) | Container.Content(sets) | Container.Content(seasons) | [Container.Content(musicvideos) + Window.IsVisible(MyVideoNav.xml) + Skin.HasSetting(MusicVideoConcerts)] | [Container.Content(tvshows) + Skin.HasSetting(TvShowPosters)]</visible>
            <include>View_Posters_Layout</include>
        </control>
</include>

I assume AEL goes through programs section, so for a dirty hack, just add
Window.IsVisible(MyPrograms.xml)

So the line will be
Code:
<visible>Window.IsVisible(MyPrograms.xml) | Container.Content(movies) | Container.Content(sets) | Container.Content(seasons) | [Container.Content(musicvideos) + Window.IsVisible(MyVideoNav.xml) + Skin.HasSetting(MusicVideoConcerts)] | [Container.Content(tvshows) + Skin.HasSetting(TvShowPosters)]</visible>

The pipe symbol "|" means OR and the plus "+" means AND
Things in square brackets [] get treated as one condition together
Arctic Fuse - Alpha now available. Support me on Ko-fi.
Reply
#5
Thanks, jurial, that worked! I can switch to poster view in AEL now, but the big thumbnail is still a square. I assume that the code for it is in includes_views, I just don't know which part of it. I want it to look just like poster view does in the movie section, basically, and then have a view for horizontal covers for games like SNES and N64 games, with a larger horizontal thumbnail instead of the big square for that.
Reply
#6
Poster code is in Includes_Object.xml and is defined in MyPrograms.xml

In MyPrograms.xml
Find this section (lines 14 to 19)
Code:
<control type="group">
    <include>Animation_Bottombar</include>
    <include content="Object_BigPoster">
        <param name="height" value="504" />
    </include>
</control>

And delete it and replace it with:
Code:
<control type="group">
    <visible>!Control.IsVisible(50)</visible>
    <include>Animation_Bottombar</include>
    <include content="Object_BigPoster">
        <param name="height" value="504" />
        <param name="discart" value="false" />
    </include>
</control>
<control type="group">
    <visible>Control.IsVisible(50)</visible>
    <include>Animation_Bottombar</include>
    <include content="Object_BigPoster">
        <param name="discart" value="false" />
    </include>
</control>

That will use a big poster if the list is set to posters (id is 50) and square for everything else.


Getting a large horizontal big thumbnail is not really going to be possible without some significant changes to the skin. Thought you can also enable the landscape view type for programs in the same way that you added "Window.IsVisible(MyPrograms.xml) | " to the start of the poster view visibility. Landscape view is defined in <include name="View_Landscape"> so just add to its visible line which will become:
Code:
<visible>Window.IsVisible(MyPrograms.xml) | Container.Content(episodes) | Container.Content(videos) | [Container.Content(tvshows) + !Skin.HasSetting(TvShowPosters)]</visible>
Arctic Fuse - Alpha now available. Support me on Ko-fi.
Reply
#7
Thanks again, that did it! I guess I understand about the big horizontal thumbnail, users can just rotate those covers I guess or use the more recent vertical versions that have been made. Though I wonder if it's possible to add the landscape view like you said but have the art for the big poster rotated so it doesn't go horizontally across the space but fills it vertically like in the poster view while sill having the smaller thumbnails be horizontal the way the landscape view already is.
Reply
#8
Also, how would I increase the size of the square thumbnails in the square view (the smaller ones) to be the same height (but still square, so the width and spacing would be adjusted as well) so that the height would match that of the other small thumbnails in the poster and landscape views? Sorry for all the questions, still learning about how the code works and all. I've done some tweaking to other skins in the past, mainly AeonMQ (mostly just font changes) but nothing really complex. I really appreciate all the help!

After thinking about it some more, I think it might be fine for the landscape poster if it could be done by simply reducing the height down to the appropriate level and keeping the width the same as the normal poster and square. It would still be bigger than the small landscape thumbnails without having to alter the rest of the skin. I'm just not sure how to do it. And would it be possible in the pictures section for the big square thumbnails to have the thumbnail zoomed and cropped like in the smaller ones so there's no gray space? Thanks again for your help!
Reply
#9
The views are all defined in Includes_View.xml
Square view is defined in <include name="View_Square_Layout">

But basically it isn't really possible to have square thumbs as the ratios don't work out properly and either you have incorrect alignment on the right side of the view (doesn't line up with end of scrollbar) or you have to introduce massive amounts of spacing between each item.

Regarding rotating artwork, there isn't really any easy way to do it. You can use a rotate animation, but that's about it and they are a bit tricky to get correct.

The big thumbnail is defined in Includes_Object.xml under <include name="Object_BigPoster">
On line 150 you have to change aspectratio from keep to scale for the pics to be zoomed in.
The include is called in the various MyXXXX.xml windows -- if you look in MyVideoNav.xml you can see how the height changing works depending on content type (there are two object_bigposter items called, one that has a different height defined than the default, and visible conditions determine which is shown).

If you want to do skin mods I recommend reading the Skinning Manual if you haven't already:
http://kodi.wiki/view/Skinning_Manual
Arctic Fuse - Alpha now available. Support me on Ko-fi.
Reply
#10
Thanks, jurial. I can live with the square thumbs being the size they are, they look fine, and rotating the big landscape thumbnails sounds like more trouble than it's worth. The fix you mentioned for the pictures worked perfectly, btw. For the main landscape thumbnail, I tried adding this to MyVideoNav.xml:

Quote:<control type="group">
<include>Animation_Bottombar</include>
<visible>![Container.Content(files) | Container.Content(movies) | Container.Content(episodes) | Container.Content(seasons) | Container.Content(sets) | Container.Content(actors) | Container.Content(tvshows) | Container.Content(videos)]</visible>
<include content="Object_BigPoster">
<param name="height" value="336" />
<param name="discart" value="false" />
</include>
<visible>!Window.IsVisible(DialogVideoInfo.xml)</visible>
</control>

But nothing's changed, it still uses the square thumbnail in the landscape view. How do I tell it to use the 336 height thumbnail instead?

I'll check out the manual too, I've skimmed through it before but I should probably take a longer look sometime. I wonder how feasible it would be for someone to create a visual skinning guide. That is, taking screenshots of a basic skin like confluence or estuary and putting on their which files and sections of code affect which part so people can actually see it. Just a thought, though.
Reply
#11
One other thing. Is it possible to change where it says "Programs • Advanced Emulator Launcher" to "(year) • (publisher)" as drawn from the scraper or .nfo file? And in pictures, the thumbnails for different picture sources don't show on the big thumbnail, only on the small ones.
Reply

Logout Mark Read Team Forum Stats Members Help
Modding question0