XBMC Community Forum
[WIP] The Carmichael - a new skin for XBMC - Printable Version

+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Help and Support (/forumdisplay.php?fid=33)
+--- Forum: Skin Help and Support (/forumdisplay.php?fid=67)
+---- Forum: Carmichael (/forumdisplay.php?fid=187)
+---- Thread: [WIP] The Carmichael - a new skin for XBMC (/showthread.php?tid=84970)

Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44


- mcborzu - 2011-01-06 05:16

Update 1-5
-Added trailer option to Movies on Home
-New Landscape view
-Changed way TV info displayed

Pressing 'Enter' now brings up a option to play movie or trailer
[Image: hometrailer.png]


New Landscape TV level
[Image: new-land.png]


New Landscape on Episode level, also info display is changed
[Image: new-land-epi.png]


- Rygrath - 2011-01-06 06:36

Awesome changes. Big kudos to you. Great use of landscape thumbs and I love the episode information change. Feels like a natural fit to see the episode information there. This skin is definitely a favorite in the family room. Easy to use, navigate and has a universal look throughout the skin.

The only niggle I still have is TV Tunes stops working after playing any type of media and requires a restart to get it going again. As I said before though, I can live without it as the skin more than makes up for it. That issue is a bit of a head scratcher though since the code for it is pretty straight forward :shrug:

Thanks for the update, great changes.


- supertom44 - 2011-01-06 12:33

The new changes look ace, cant wait to test them out.

Cracking Job.


- oblonhor - 2011-01-06 13:03

Great changes, a step in the right direction, wanted to make some suggestions:

1. Is it possible to have pressing "I" working on random movies, trailers was a good choice but not all movies have them and to see plot etc. would be nice.

2. When browsing the cast on movie info screen, could you show the actor's picture instead of the movie cover? It helps to recognize the actor when you don't know the name.

3. There's a small bug when exporting a library, Single or Separate or overlapping.

Thanks for this magnificent skin!


- ppic - 2011-01-06 13:37

i don't think I is available on home screen.


- supertom44 - 2011-01-06 13:55

Pressing I might not be available but Aeon MQ2 provides plot on the home screen for items in the recently added box.


- DJXFMA - 2011-01-06 14:18

supertom44 Wrote:Pressing I might not be available but Aeon MQ2 provides plot on the home screen for items in the recently added box.

The best thing to do here is or use <ondown></ondown> with focusses on a own build dialog witch holds the movie/episode/album information. Or build in a delay witch foccusses after 2 seconds so the information will just popup. Should be possible.

I am working on a theme myself now and I will try some different way's to display it. I will post the information right here so it can help for this theme.

Getting better and better Smile, only missing the Season number in the episode screen..


Get info/fanart/icon on home screen - DJXFMA - 2011-01-06 20:31

Ok here it is hope it is some use to U if you want to use it.

First make an include wich holds the information and fanart and icon. Like my code here, not finished yet just to prove it can without much effort, it did cost me one hour to find it out but anyway...
  • <visible>Control.HasFocus(8010)</visible> use this that it will only be visible when the container for latest movies is viewed. the id must me on the list control
  • fanart $INFO[Container(8010).ListItem.Property(FanartImage)] as you can see this will load the propery of the container from latest added movies(8010) and gets the FanartImage wich holds obviously the Fanart image Smile
  • plot $INFO[Container(8010).ListItem.Property(Plot)] same way
  • icon ...
  • label ...

PHP Code:
    <!-- HomeRecentAddedMovieInfo -->
    <include 
name="HomeRecentAddedMovieInfo">
        <
control type="group">
            <
visible>Control.HasFocus(8010)</visible>
            <!-- 
fanart -->
            <
control type="image">
                <
posx>519r</posx>
                <
posy>155</posy>
                <
width>500</width>
                <
height>300</height>
                <
texture background="true">$INFO[Container(8010).ListItem.Property(FanartImage)]</texture>
                <
aspectratio>scale</aspectratio>
                <
fadetime>200</fadetime>
                <include>
VisibleFadeEffect</include>
            </
control>
            <!-- 
icon -->
            <
control type="image">
                <
posx>663r</posx>
                <
posy>151</posy>
                <
width>170</width>
                <
height>224</height>
                <
texture>home/poster_shadow.png</texture>
                <
aspectratio scalediffuse="false">stretch</aspectratio>
            </
control>
            <
control type="image">
                <
posx>665r</posx>
                <
posy>155</posy>
                <
width>146</width>
                <
height>219</height>
                <
texture background="true">default_cover.png</texture>
                <
aspectratio scalediffuse="false">stretch</aspectratio>
            </
control>
            <
control type="image">
                <
posx>665r</posx>
                <
posy>155</posy>
                <
width>146</width>
                <
height>219</height>
                <
texture background="true">$INFO[ListItem.ActualIcon]</texture>
                <
aspectratio scalediffuse="false">stretch</aspectratio>
            </
control>
            <
control type="image">
                <
posx>665r</posx>
                <
posy>155</posy>
                <
width>146</width>
                <
height>219</height>
                <
texture background="true">$INFO[Container(8010).ListItem.Property(Icon)]</texture>
                <
aspectratio>scale</aspectratio>
                <
fadetime>200</fadetime>
                <include>
VisibleFadeEffect</include>
            </
control>
            <!-- 
label -->
            <
control type="label">
                <
posx>505r</posx>
                <
posy>160</posy>
                <
height>20</height>
                <
width>300</width>
                <
label>$INFO[Container(8010).ListItem.Property(Label)]</label>
                <
align>left</align>
                <
aligny>center</aligny>
                <
font>font24_title</font>
                <
textcolor>white</textcolor>
                <
shadowcolor>black</shadowcolor>
            </
control>
            <!-- 
plot -->
            <
control type="textbox">
                <
posx>505r</posx>
                <
posy>180</posy>
                <
height>200</height>
                <
width>400</width>
                <
label>$INFO[Container(8010).ListItem.Property(Plot)]</label>
                <
align>justify</align>
                <
font>font12</font>
                <
textcolor>white</textcolor>
                <
autoscroll time="2000" delay="8000" repeat="5000">Skin.HasSetting(AutoScroll)</autoscroll>
            </
control>
        </
control>
    </include> 


Then in Home.xml load the include in the top of youre theme about like this, could be different to yours because of the other layers of controls..

PHP Code:
<window id="0">
    <
defaultcontrol always="true">8999</defaultcontrol>
    <
allowoverlay>no</allowoverlay>    
    <
controls>
        
        
        <!-- 
main_background -->
        <
control type="image">
            <
posx>0</posx>
            <
posy>0</posy>
            <
width>1280</width>
            <
height>720</height>
            <
texture>home/background.jpg</texture>
            <
aspectratio scalediffuse="false">stretch</aspectratio>
        </
control>
        
        
[
b]        <!-- HomeRecentAddedMovieFanart -->
        <include>
HomeRecentAddedMovieInfo</include>[/b]
        
        <!-- 
CommonMediaPlayingBackground -->
        <include>
CommonMediaPlayingBackground</include>
        
        
        
        <!-- 
main_container -->
        <
control type="group">
............................................ 


Now you need to added youre recently/latest movie control list.
The list must have the same ID number like stated above for this example it is 8010. Then in this control list add the following to youre already existing items.

PHP Code:
                <control type="list" id="8010">
                    <
posx>10</posx>
                    <
posy>475</posy>
                    <
width>1280</width>
                    <
height>400</height>
                    <
onup>9000</onup>
                    <
ondown>9000</ondown>
                    <
orientation>horizontal</orientation>
                    <
pagecontrol>-</pagecontrol>
                    <
scrolltime>0</scrolltime>
                    <
itemlayout width="164" height="300">
                        <
control type="group">
                            <
posx>0</posx>
                            <
posy>10</posy>
                                <
control type="image">
                                    <
posx>-2</posx>
                                    <
posy>-4</posy>
                                    <
width>170</width>
                                    <
height>224</height>
                                    <
texture>home/poster_shadow.png</texture>
                                    <
aspectratio scalediffuse="false">stretch</aspectratio>
                                </
control>
                                <
control type="image">
                                    <
posx>10</posx>
                                    <
posy>0</posy>
                                    <
width>146</width>
                                    <
height>219</height>
                                    <
texture background="true">default_cover.png</texture>
                                    <
aspectratio scalediffuse="false">stretch</aspectratio>
                                </
control>
                                <
control type="image">
                                    <
posx>10</posx>
                                    <
posy>0</posy>
                                    <
width>146</width>
                                    <
height>219</height>
                                    <
texture background="true">$INFO[ListItem.ActualIcon]</texture>
                                    <
aspectratio scalediffuse="false">stretch</aspectratio>
                                </
control>
                        </
control>
                    </
itemlayout>
                    <
focusedlayout width="164" height="300">
                        <
control type="group">
                            <
posx>0</posx>
                            <
posy>10</posy>
                            <
animation type="Focus" reversible="false">
                                <
effect type="zoom" center="auto" start="60" end="104" time="600" tween="back" easing="out" />
                            </
animation>
                            <
control type="image">
                                <
posx>-2</posx>
                                <
posy>-4</posy>
                                <
width>170</width>
                                <
height>224</height>
                                <
texture>home/poster_shadow.png</texture>
                                <
aspectratio scalediffuse="false">stretch</aspectratio>
                            </
control>
                            <
control type="image">
                                <
posx>10</posx>
                                <
posy>0</posy>
                                <
width>146</width>
                                <
height>219</height>
                                <
texture background="true">default_cover.png</texture>
                                <
aspectratio scalediffuse="false">stretch</aspectratio>
                            </
control>
                            <
control type="image">
                                <
posx>10</posx>
                                <
posy>0</posy>
                                <
width>146</width>
                                <
height>219</height>
                                <
texture background="true">$INFO[ListItem.ActualIcon]</texture>
                                <
aspectratio scalediffuse="false">stretch</aspectratio>
                            </
control>
                        </
control>
                    </
focusedlayout>
                    <
content>
                        <
item id="1">
                            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.1.Path)])</onclick>
                            <
icon>$INFO[Window.Property(LatestMovie.1.Thumb)]</icon>
                            <
property name="Icon">$INFO[Window.Property(LatestMovie.1.Thumb)]</property>
                            <
property name="FanartImage">$INFO[Window.Property(LatestMovie.1.Fanart)]</property>
                            <
property name="Label">$INFO[Window.Property(LatestMovie.1.Title)]</property>
                            <
property name="Plot">$INFO[Window.Property(LatestMovie.1.Plot)]</property>
                        </
item>
                        <
item id="2">
                            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.2.Path)])</onclick>
                            <
icon>$INFO[Window.Property(LatestMovie.2.Thumb)]</icon>
                            <
property name="Icon">$INFO[Window.Property(LatestMovie.2.Thumb)]</property>
                            <
property name="FanartImage">$INFO[Window.Property(LatestMovie.2.Fanart)]</property>
                            <
property name="Label">$INFO[Window.Property(LatestMovie.2.Title)]</property>
                            <
property name="Plot">$INFO[Window.Property(LatestMovie.2.Plot)]</property>
                        </
item

Fast example of above property list:
PHP Code:
                    <content>
                        <
item id="1">
                            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.1.Path)])</onclick>
                            <
icon>$INFO[Window.Property(LatestMovie.1.Thumb)]</icon>
                            <
property name="Icon">$INFO[Window.Property(LatestMovie.1.Thumb)]</property>
                            <
property name="FanartImage">$INFO[Window.Property(LatestMovie.1.Fanart)]</property>
                            <
property name="Label">$INFO[Window.Property(LatestMovie.1.Title)]</property>
                            <
property name="Plot">$INFO[Window.Property(LatestMovie.1.Plot)]</property>
                        </
item>
                        <
item id="2">
                            <
onclick>PlayMedia($INFO[Window.Property(LatestMovie.2.Path)])</onclick>
                            <
icon>$INFO[Window.Property(LatestMovie.2.Thumb)]</icon>
                            <
property name="Icon">$INFO[Window.Property(LatestMovie.2.Thumb)]</property>
                            <
property name="FanartImage">$INFO[Window.Property(LatestMovie.2.Fanart)]</property>
                            <
property name="Label">$INFO[Window.Property(LatestMovie.2.Title)]</property>
                            <
property name="Plot">$INFO[Window.Property(LatestMovie.2.Plot)]</property>
                        </
item


Just an example image from the theme I am currently working on..

Home screen with info from Latest selected movie
[Image: snowleopardhomeinfo.png]

Home screen normal
[Image: snowleopardhome.png]


- Rastan - 2011-01-07 00:03

@DJXFMA Nice work as proof of concept, hopefully Mcborzu will take your idea onboard and work some of his magic to intergrate it or something similar into this skin. Also your skin looks like its coming on well! Big Grin

Mcborzu I just noticed a little glitch when playing music with the visualisation. If you play a track the text "Now Playing: Album name Track Name" appears at the top centre of screen but it doesnt have the solid grey text background behind it. When you move the mouse the grey text background appears but the text thats supposed to be on top of it then dissapears. I hope I am correct in the assumption that the now playing text is supposed to have that grey solid background behind it to make the text stand out over any background. (I hope that made sense)


- mcborzu - 2011-01-07 05:23

Update 1-6
-New Cast Display


[Image: cast.png]