2005-12-30, 04:47
a couple more changes went in, that are fairly minor, but as many of you have already released v1.85 skins, i figured i should bump the version up again (it's completely backward compatible)
version now is 1.86.
changes are:
1. all slide starting positions (startx and starty attributes) are now relative to the control (or window) origin. this actually makes things easier in most cases to work out the slide. subtracting off the posx and posy values in your 1.85 skins will take care of this.
2. the volume bar and volume label are now handled by the new infolabel player.volume - the id's no longer matter.
3. new infolabel player.volume (both integer for slider, and label including the db string)
4. new built in functions player.mute and player.setvolume(percent).
5. dialogs can now have different origins for different base windows. it works as follows:
<coordinates>
<system>1</system>
<posx>50</posx>
<posy>50</posy>
<origin x="100" y="100">window.isactive(home)</origin>
<origin x="500" y="400">window.isactive(myvideos)</origin>
</coordinates>
this will cause the dialog to normally be displayed at (50,50), but on the home window it'll display at (100,100) and on the myvideos window it'll display at (500,400).
the origin's are evaluated in the order given - the first one matching takes priority. the conditionals can be whatever you like, though window.isactive() seems to be the most useful.
you can also do <origin x="50" y="50">true</origin> in place of the <posx> and <posy> tags.
the future
i'm toying with the idea of splitting up the animation effect from the visibility condition. this will allow more effects in the future (such as a focus effect, and separate window start and window end effects) plus will clean it up a little bit. one thought i had was something like this:
<visible allowhiddenfocus="true">conditions for visibility</visible>
<animation effect="fade" time="2000">visible</animation>
<animation effect="slide" time="1000" start="-40,-40" end="40,40">start</animation>
<animation effect="slide" time="1000" start="40,40" end="50,50">focus</animation>
the above defines 3 animations for the control.
on window start, it's slided from offset (-40,-40) to offset (40,40). on focus, it slides from offset (40,40) to (50,50), and if it's hidden at any stage due to the visibility condition, it'll fade out over 2 seconds. all animations are reversible - ie if it becomes visible again due to a change in visibility it'll fade back in, when it loses focus it'll return to (40,40), and on window exit it'll go back to (-40,-40).
as you can appreciate, it's a reasonably large change, so thought needs to be taken to get it right! opinions are wanted.
cheers,
jonathan
version now is 1.86.
changes are:
1. all slide starting positions (startx and starty attributes) are now relative to the control (or window) origin. this actually makes things easier in most cases to work out the slide. subtracting off the posx and posy values in your 1.85 skins will take care of this.
2. the volume bar and volume label are now handled by the new infolabel player.volume - the id's no longer matter.
3. new infolabel player.volume (both integer for slider, and label including the db string)
4. new built in functions player.mute and player.setvolume(percent).
5. dialogs can now have different origins for different base windows. it works as follows:
<coordinates>
<system>1</system>
<posx>50</posx>
<posy>50</posy>
<origin x="100" y="100">window.isactive(home)</origin>
<origin x="500" y="400">window.isactive(myvideos)</origin>
</coordinates>
this will cause the dialog to normally be displayed at (50,50), but on the home window it'll display at (100,100) and on the myvideos window it'll display at (500,400).
the origin's are evaluated in the order given - the first one matching takes priority. the conditionals can be whatever you like, though window.isactive() seems to be the most useful.
you can also do <origin x="50" y="50">true</origin> in place of the <posx> and <posy> tags.
the future
i'm toying with the idea of splitting up the animation effect from the visibility condition. this will allow more effects in the future (such as a focus effect, and separate window start and window end effects) plus will clean it up a little bit. one thought i had was something like this:
<visible allowhiddenfocus="true">conditions for visibility</visible>
<animation effect="fade" time="2000">visible</animation>
<animation effect="slide" time="1000" start="-40,-40" end="40,40">start</animation>
<animation effect="slide" time="1000" start="40,40" end="50,50">focus</animation>
the above defines 3 animations for the control.
on window start, it's slided from offset (-40,-40) to offset (40,40). on focus, it slides from offset (40,40) to (50,50), and if it's hidden at any stage due to the visibility condition, it'll fade out over 2 seconds. all animations are reversible - ie if it becomes visible again due to a change in visibility it'll fade back in, when it loses focus it'll return to (40,40), and on window exit it'll go back to (-40,-40).
as you can appreciate, it's a reasonably large change, so thought needs to be taken to get it right! opinions are wanted.
cheers,
jonathan