Kodi Community Forum

Full Version: XBMC skin-structure updates/changes!
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
this post is meant to inform skinners & users about
changes made in xbmc which can affect custom skins

19-11-2003
committed extra stuff for my music like the top100
this will likely break exisiting skins like the hifi skin

22-11-2003
screen/movie calibration changed.
-settingsmoviecalibration.xml replaced with settingsscreencalibration.xml

-new texture added (calibrate_pixelratio.png) and ids changed in settingsscreencalibration.xml

15-12-2003
- settings are extended with:
- settings->screen->subtitles

17-12-2003
-checkmark control has been changed. it now uses 2 gfx
called check-box.png & check-boxnf.ong
-osd added.
frodo



you can see the changes here.

but i only see two colors changed in the last update.  
http://cvs.sourceforge.net/viewcvs....r2=1.15
Huh (maybe thats due to the lag between the real and the anon cvs?)



hmm.
i can see the skin-files and versions, but no date.
it's better to have a look here:
http://sourceforge.net/mailarchive/forum...m=xbmc-cvs
(onkel bouncy @ nov. 19 2003,23:18 Wrote:hmm.
i can see the skin-files and versions, but no date.
it's better to have a look here:
http://sourceforge.net/mailarchive/forum...m=xbmc-cvs
well you can see the age of the files. that should give you an idea which one has been changed lately. but the best way would be to subscribe to the cvs mailinglist. Smile
with the recent changes to skinning people have been having a few problems getting their skins to display correctly. so here is what you need to know about the skin directory structure to get your skins to load correctly.

in your skin directory you should create a file called skin.xml (details below), you must place all your other xml in resolution specific directorys.
you may use any or all of the following:
pal - for pal 4:3 720x576 resolution
pal16x9 - for pal 16:9 720x576 resolution
ntsc - for ntsc/hdtv 4:3 720x480 resolution
ntsc16x9 - for ntsc/hdtv 16:9 720x480 resolution
720p - for hdtv 16:9 1280x720 resolution
1080i - for hdtv 16:9 1920x1080 resolution

any xml files in a particular resolution directory must conform to that screen resolution. so if the xml is in ntsc the maximum position of a control is 720x480.

when loading a skin the code checks in two places, first the resolution specific directory for the current resolution is checked. if the xml is present it is loaded and displayed unscaled. otherwise the default directory (set in skin.xml) is checked and if the xml is present it is loaded and rescaled to fit the current resolution. if neither are present then no xml is loaded and the window will look like a black screen.

sample contents of skin.xml:
Quote:<skin>
<defaultresolution>pal</defaultresolution>
<credits>
<skinname>butcher's wonderskin</skinname>
<name>butcher</name>
</credits>
</skin>
the defaultresolution tag sets the directory to search if the xml is not present in the current resolution directory. only the directory names above are valid for defaultresolution.
the credits set the credits for the (displayed in the credits screen), you may have up to 5 authors. also note that space is limited so you should try to keep the skin name below ~15 chars.
hi all.

first off, thanks for all your hardwork in making xbmc skins Smile

some of you might have noticed that since ttf support was added, there were some changes made to the listcontrols as the textoffset stuff wasn't working quite nicely. basically, we changed it so that all text was centered vertically. this, however, produced problems for the albums icon view, in which the two labels need to be separated vertically (album and artist).

to solve this, a further tag <aligny>center</aligny> has been added to listcontrols.

basically, this tag should be set in references.xml so that all listcontrols are by default centered vertically. the one listcontrol that doesn't need this (in mymusicalbums.xml) can then have <aligny>top</aligny> so that it uses the <textoffset> tags to display correctly.

sorry that this needed to be added while officially in a skin freeze. it doesn't change functionality, but just makes sure that everything is displayed nicely in as many languages as possible.

note that buttons also have the <aligny> tags and in most cases should be centered. the <textoffset> tags do not have to be used anymore, unless ofcourse you want to use them.

please pm me (or post here) if there's any questions.

thanks again,

jonathan
just some questions to better understand how the align tag work:
1. <aligny>center</aligny> will center the label on the center of the button indipendently of the font size?
2. does the <aligny> tag work for the checkmarks and spincontrols too?
tnx to you jonathan. :thumbsup:
1. yes - that's right. it's centered vertically regardless of font size.

2. spin controls, radio buttons yes. checkmarks no. i believe that checkmarks however draw the checkmark based on where the text is, so this is likely not needed.

happy skinning.
tnx jonathan once again, but the checkmarks in my skin are not centered with the label and i don't understand why.
they look ok in the others skin but non mine, if you'll add the align for that in a near future i'll really appreciate.
for now i'll make a new texture for the checkmarks to make them center the label.
bye. Cool
from the code, the checkmark's text is positioned so that it is centered vertically with the checkmark's texture.
ok sorry again, it was my fault.
:bowdown: