Thanks, I hadn't see that blog post. I had hoped there were some more examples but I've been able to get something simple up and running.
How would I design for SD and HD screens since the positioning is all pixel based?
"TheEndless" wrote:... assuming you force the resolution.
If you use roScreen, it'll automatically scale to SD. ...
' Get the TV's display size
di = CreateObject ("roDeviceInfo")
displaySize = di.GetDisplaySize ()
displayMode = di.GetDisplayMode ()
' Make use of the 'Action Safe Zone' for display dimensions
' HD->1150x646 starting at (64, 35)
' SD->648x432, starting at (36, 24)
if displayMode = "720p"
displayH% = 646
displayW% = 1150
displayX% = 64
displayY% = 35
else if displayMode = "480i"
displayH% = 432
displayW% = 648
displayX% = 36
displayY% = 24
else ' Unknown display type
displayH% = displaySize.H * 0.9
displayW% = displaySize.W * 0.9
displayX% = (displaySize.W - displayW%) / 2
displayY% = (displaySize.H - displayH%) / 2
I haven't used an roScreen yet, so I have no idea in which cases that would be more suitable than an roImageCanvas. However, I don't think the roScreen is even implemented on the older (Roku 1) devices. I try to target all versions of Roku as far as possible.
roScreen is available to all devices, including the legacy boxes. Generally speaking, you'd use it over roImageCanvas, if you needed a more responsive interface, particularly if you want animation.