2011-08-02, 07:13
As discussed earlier in this thread:
http://forum.xbmc.org/showthread.php?tid=104870
I've been doing some work on cleaning up the XBMC side of the condition parsing. I've got to the point now where I've reviewed most of them and some are in need of change.
This will likely be a break of backwards compatibility, and hence I want to give you a heads up.
Conditions that are already removed:
bar.* (these used to be used in the LCD and system info but were always just wrappers for the corresponding system.* infolabel/bool).
system.freespace©
system.usedspace©
system.totalspace©
system.usedspacepercent©
system.freespacepercent©
lcd.freespace©
Conditions that are proposed to be removed:
Note that these will require manual intervention by you if you use these
lcd.*
fanart.image Only once the usage of it is taken care of by Listitem.property(fanart_image)
fanart.color1 .. color3
musicpartymode.* except musicpartymode.enabled
system.hasdrivef
system.hasdriveg
system.setting (seems to only work with "hidewatched")
Conditions that will be changed:
library.isscanningvideo -> library.isscanning(video)
library.isscanningmusic -> library.isscanning(music)
musicplayer.duration -> player.duration
musicplayer.time -> player.time
musicplayer.timeremaining -> player.timeremaining
musicplayer.timespeed -> player.timespeed
videoplayer.duration -> player.duration
videoplayer.time -> player.time
videoplayer.timeremaining -> player.timeremaining
videoplayer.timespeed -> player.timespeed
Suggested changes for others (comments welcome)
container.sort(rating) -> isequal(container.sort,rating)
container.sortdirection(ascending) -> isequal(container.sortdirection,ascending)
listitemnowrap(##) -> listitem(##,nowrap)
listitemposition(##) -> listitem(##,absolute) Really not sure about this one - container.position might be better - I need to check what it does!
skin.string(blah,foo) -> isequal(skin.string(blah),foo)
skin.currenttheme -> skin.theme
skin.currentcolortheme -> skin.colortheme
skin.hastheme(blah) -> isequal(skin.theme,blah)
window.isactive(id) -> window(id).isactive
window.istopmost(id) -> window(id).istopmost
window.isvisible(id) -> window(id).isvisible
window.previous(id) -> isequal(window.previous,id) OR isequal(gui.previouswindow,id)
window.next(id) -> isequal(window.next,id) OR isequal(gui.nextwindow,id)
control.hasfocus(id) -> control(id).hasfocus
control.isvisible(id) -> control(id).isvisible
control.isenabled(id) -> control(id).isenabled
control.getlabel(id) -> control(id).getlabel
system.platform.linux -> isequal(system.platform,linux) NOTE: introduce new label system.platform
system.platform.win32 -> isequal(system.platform,win32)
system.platform.osx -> isequal(system.platform,osx)
musicplayer.offset(##).* -> playlist.offset(##).*
musicplayer.position(##).* -> playlist.position(##).*
player.rewinding2x -> player.rewindspeed NOTE: These ones will involve manual changes - can't automate that
player.forwarding2x -> player.forwardingspeed NOTE: These ones will involve manual changes - can't automate that
It would be nice if there was a script to update skins - perhaps one of the python guys could write something?
Cheers,
Jonathan
http://forum.xbmc.org/showthread.php?tid=104870
I've been doing some work on cleaning up the XBMC side of the condition parsing. I've got to the point now where I've reviewed most of them and some are in need of change.
This will likely be a break of backwards compatibility, and hence I want to give you a heads up.
Conditions that are already removed:
bar.* (these used to be used in the LCD and system info but were always just wrappers for the corresponding system.* infolabel/bool).
system.freespace©
system.usedspace©
system.totalspace©
system.usedspacepercent©
system.freespacepercent©
lcd.freespace©
Conditions that are proposed to be removed:
Note that these will require manual intervention by you if you use these
lcd.*
fanart.image Only once the usage of it is taken care of by Listitem.property(fanart_image)
fanart.color1 .. color3
musicpartymode.* except musicpartymode.enabled
system.hasdrivef
system.hasdriveg
system.setting (seems to only work with "hidewatched")
Conditions that will be changed:
library.isscanningvideo -> library.isscanning(video)
library.isscanningmusic -> library.isscanning(music)
musicplayer.duration -> player.duration
musicplayer.time -> player.time
musicplayer.timeremaining -> player.timeremaining
musicplayer.timespeed -> player.timespeed
videoplayer.duration -> player.duration
videoplayer.time -> player.time
videoplayer.timeremaining -> player.timeremaining
videoplayer.timespeed -> player.timespeed
Suggested changes for others (comments welcome)
container.sort(rating) -> isequal(container.sort,rating)
container.sortdirection(ascending) -> isequal(container.sortdirection,ascending)
listitemnowrap(##) -> listitem(##,nowrap)
listitemposition(##) -> listitem(##,absolute) Really not sure about this one - container.position might be better - I need to check what it does!
skin.string(blah,foo) -> isequal(skin.string(blah),foo)
skin.currenttheme -> skin.theme
skin.currentcolortheme -> skin.colortheme
skin.hastheme(blah) -> isequal(skin.theme,blah)
window.isactive(id) -> window(id).isactive
window.istopmost(id) -> window(id).istopmost
window.isvisible(id) -> window(id).isvisible
window.previous(id) -> isequal(window.previous,id) OR isequal(gui.previouswindow,id)
window.next(id) -> isequal(window.next,id) OR isequal(gui.nextwindow,id)
control.hasfocus(id) -> control(id).hasfocus
control.isvisible(id) -> control(id).isvisible
control.isenabled(id) -> control(id).isenabled
control.getlabel(id) -> control(id).getlabel
system.platform.linux -> isequal(system.platform,linux) NOTE: introduce new label system.platform
system.platform.win32 -> isequal(system.platform,win32)
system.platform.osx -> isequal(system.platform,osx)
musicplayer.offset(##).* -> playlist.offset(##).*
musicplayer.position(##).* -> playlist.position(##).*
player.rewinding2x -> player.rewindspeed NOTE: These ones will involve manual changes - can't automate that
player.forwarding2x -> player.forwardingspeed NOTE: These ones will involve manual changes - can't automate that
It would be nice if there was a script to update skins - perhaps one of the python guys could write something?
Cheers,
Jonathan