Probably a pretty basic query but for the life of me I cant figure it out.
Im trying to modify the "Similar" window in Titan Bingie so that you can click on the posters. I've managed to add buttons to the posters but I cant figure out how to get the "onclick" command to fire.
And this is loading from the DialogVideoInfo.xml
The buttons appear and I can click them and it makes the GUI sound for clicking but the onclick command doesnt run. Ive tried telling it to focus on the buttons but I cant get it to work (ill worry about making the buttons work but have no visible button later once i get the click function to work).
Can anyone help me out?
I suspect its just something very simple but the documentation is pretty poor if you don't already have a good idea how skin xmls are supposed to work.
Im trying to modify the "Similar" window in Titan Bingie so that you can click on the posters. I've managed to add buttons to the posters but I cant figure out how to get the "onclick" command to fire.
Code:
<!--Similar List-->
<control type="panel" id="352">
<posx>600</posx>
<posy>250</posy>
<width>800</width>
<height>714</height>
<onleft>ClearProperty(AdditionalInfo)</onleft>
<onback>ClearProperty(AdditionalInfo)</onback>
<onback>8000</onback>
<onleft>SetFocus(8000)</onleft>
<scrolltime>200</scrolltime>
<orientation>vertical</orientation>
<focusposition>0</focusposition>
<viewtype label="actor list">list</viewtype>
<visible allowhiddenfocus="false">String.IsEqual(Window.Property(AdditionalInfo),similar)</visible>
<animation effect="fade" start="100" end="25" time="0" condition="Container(352).IsUpdating">Conditional</animation>
<animation effect="slide" start="0,0" end="0,1000" time="0" delay="0" condition="!String.IsEqual(Window.Property(AdditionalInfo),similar)">Conditional</animation>
<!-- itemlayout movies -->
<itemlayout height="357" width="240">
<control type="group">
<!-- ===BUTTON===-->
<defaultcontrol always="false">3521</defaultcontrol>
<!-- ===BUTTON===-->
<width>233</width>
<height>342</height>
<include>PosterPanelLayout</include>
<!-- ===BUTTON===-->
<control type="button" id="3521" >
<right>0</right>
<description>Close</description>
<label>$LOCALIZE[222]</label>
<width>100%</width>
<include>DialogButtonOther</include>
<texturefocus colordiffuse="FFFFAAFF">$INFO[Container(352).ListItem.Art(poster)]</texturefocus>
<texturenofocus colordiffuse="FFFFAAFF">$INFO[Container(352).ListItem.Art(poster)]</texturenofocus>
<height>100%</height>
<visible>true</visible>
<onclick>ActivateWindow(Settings)</onclick>
</control>
<!-- ===BUTTON===-->
</control>
</itemlayout>
<focusedlayout height="357" width="240">
<control type="group">
<!-- ===BUTTON===-->
<defaultcontrol always="false">3521</defaultcontrol>
<!-- ===BUTTON===-->
<width>233</width>
<height>342</height>
<include>PosterPanelLayoutFocus</include>
<!-- ===BUTTON===-->
<control type="button" id="3521" >
<right>0</right>
<description>Close</description>
<label>$LOCALIZE[222]</label>
<width>100%</width>
<include>DialogButtonOther</include>
<texturefocus colordiffuse="FFFFAAFF">$INFO[Container(352).ListItem.Art(poster)]</texturefocus>
<texturenofocus colordiffuse="FFFFAAFF">$INFO[Container(352).ListItem.Art(poster)]</texturenofocus>
<height>100%</height>
<visible>true</visible>
<pulseonselect>true</pulseonselect>
<onclick>ActivateWindow(Settings)</onclick>
</control>
<!-- ===BUTTON===-->
</control>
</focusedlayout>
<content>$VAR[similarInfo]</content>
</control>
<!-- similar info details -->
<control type="group">
<include>animation_window_open_close</include>
<visible>String.IsEqual(Window.Property(AdditionalInfo),similar)</visible>
<control type="group">
<right>50</right>
<posy>250</posy>
<width>530</width>
<height>67%</height>
<control type="image">
<aspectratio align="center" aligny="top" scalediffuse="true">scale</aspectratio>
<texture background="true" diffuse="diffuse/poster.png">$INFO[Container(352).ListItem.Art(poster)]</texture>
<fadetime>300</fadetime>
</control>
<!--Panel-->
<control type="image">
<bottom>-1</bottom>
<height>120</height>
<bordersize>0</bordersize>
<visible>false</visible>
<texture background="true" diffuse="diffuse/poster.png">colors/color_white.png</texture>
<colordiffuse>$INFO[Skin.String(TagOverlaysPanelColor)]</colordiffuse>
</control>
<control type="label">
<left>10</left>
<bottom>0</bottom>
<width>93%</width>
<height>120</height>
<align>left</align>
<visible>false</visible>
<label>$INFO[Container(352).ListItem.Label2,,[CR]]$INFO[Container(352).ListItem.Label]</label>
<font>Reg32</font>
<textcolor>$INFO[Skin.String(TagOverlaysTextColor)]</textcolor>
</control>
</control>
</control>
</control>
And this is loading from the DialogVideoInfo.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<!-- BINGIE -->
<window>
<defaultcontrol always="true">8000</defaultcontrol>
<onload>ClearProperty(ListItem.Property(IMDBNumber))</onload>
<onload>ClearProperty(ListItem.Property(TvShowTitle))</onload>
<onload condition="!String.IsEmpty(Window(Home).Property(ListItem.TVShowID))">ClearProperty(ListItem.TVShowID,Home)</onload>
<onload condition="Skin.HasSetting(UseBingieInfoDialog) + !String.IsEmpty(ListItem.DBID) + [String.IsEqual(ListItem.DBTYPE,episode) | String.IsEqual(ListItem.Property(DBTYPE),episode)]">RunScript(script.bingie.helper,action=gettvshowid,dbid=$INFO[ListItem.DBID])</onload>
<onload condition="!String.IsEmpty(Window(Home).Property(BaseWindow))">ClearProperty(BaseWindow,Home)</onload>
<onload condition="!String.IsEmpty(Window.Property(AdditionalInfo))">ClearProperty(AdditionalInfo,Home)</onload>
<onload condition="System.HasAlarm(preview_delay)">CancelAlarm(preview_delay,silent)</onload>
<!-- set trailerplaying property if started directly from PlayMedia command in previous window -->
<onload condition="$EXP[IsPlayingUnrecognizedContent]">SetProperty(TrailerOnLoad,windowed,Home)</onload>
<onload condition="$EXP[IsPlayingUnrecognizedContent]">SetProperty(TrailerPlaying,windowed,Home)</onload>
<!-- checks if TVShow is tagged 'mylist' (workaround for ListItem.Tag working inconsistently with tvshows) -->
<onload condition="Skin.HasSetting(UseBingieInfoDialog) + !String.IsEmpty(ListItem.DBID) + [String.IsEqual(ListItem.DBTYPE,tvshow) | String.IsEqual(ListItem.DBTYPE,movie) | String.IsEqual(ListItem.DBTYPE,episode)]">RunScript(script.bingie.helper,action=ismylist)</onload>
<include condition="Skin.HasSetting(UseExtendedInfoDialog)">ExtendedInfo_OnLoad_Action</include>
<include condition="!Skin.HasSetting(UseExtendedInfoDialog)">NoExtendedInfo_OnLoad_Action</include>
<onunload condition="!String.IsEmpty(Window(Home).Property(ListItem.TVShowID)) + String.IsEmpty(Window(Home).Property(KeepTVShowID))">ClearProperty(ListItem.TVShowID,Home)</onunload>
<onunload condition="!String.IsEmpty(Window(Home).Property(IsInMyList))">ClearProperty(IsInMyList,Home)</onunload>
<onunload condition="!String.IsEmpty(Window(Home).Property(RateTitle))">ClearProperty(RateTitle,Home)</onunload>
<onunload condition="!String.IsEmpty(Window(Home).Property(RateTitle.Action))">ClearProperty(RateTitle.Action,Home)</onunload>
<onunload condition="!String.IsEmpty(Window(Home).Property(TrailerPlaying)) + !String.IsEqual(Window(Home).Property(TrailerPlaying),fullscreen) + String.IsEmpty(Window(Home).Property(TrailerOnLoad))">PlayerControl(Stop)</onunload>
<onunload condition="!String.IsEmpty(Window(Home).Property(TrailerOnLoad))">ClearProperty(TrailerOnLoad,Home)</onunload>
<controls>
<include condition="Skin.HasSetting(UseBingieInfoDialog) + !Skin.HasSetting(UseExtendedInfoDialog)">BingieInfo</include>
<include condition="!Skin.HasSetting(UseBingieInfoDialog) + !Skin.HasSetting(UseExtendedInfoDialog)">TitanInfo</include>
<include condition="Skin.HasSetting(DebugGrid) | Skin.HasSetting(DebugInfo)">DebugInfo</include>
</controls>
</window>
The buttons appear and I can click them and it makes the GUI sound for clicking but the onclick command doesnt run. Ive tried telling it to focus on the buttons but I cant get it to work (ill worry about making the buttons work but have no visible button later once i get the click function to work).
Can anyone help me out?
I suspect its just something very simple but the documentation is pretty poor if you don't already have a good idea how skin xmls are supposed to work.