Forum Discussion
8 Replies
- RokuRobBStreaming StarThere is an undocumented grid screen API called SetListPosterStyles that you can use for this purpose, for example:
listStyles = ["landscape", "portrait", "landscape"]
screen.SetListPosterStyles(listStyles)
I will make a point to update the docs to include this function. - dustinhoodVisitorCan someone elaborate on this?
I need 4 rows, the first 3 need to be portrait and the 4th needs to be landscape. I've tried the using the code below with no luck. Any suggestions?
BTW, I also have the ContentType of each item set to movie on the first 3 rows and episode on the 4th.
listStyles = ["landscape","portrait", "portrait", "portrait"]
screen.SetGridStyle("mixed-aspect-ratio")
screen.SetListPosterStyles(listStyles) - TheEndlessChannel Surfer
"dustinhood" wrote:
Can someone elaborate on this?
I need 4 rows, the first 3 need to be portrait and the 4th needs to be landscape. I've tried the using the code below with no luck. Any suggestions?
BTW, I also have the ContentType of each item set to movie on the first 3 rows and episode on the 4th.
listStyles = ["landscape","portrait", "portrait", "portrait"]
screen.SetGridStyle("mixed-aspect-ratio")
screen.SetListPosterStyles(listStyles)
I believe you need to call SetupLists prior to calling SetListPosterStyles. - dustinhoodVisitor
"TheEndless" wrote:
"dustinhood" wrote:
Can someone elaborate on this?
I need 4 rows, the first 3 need to be portrait and the 4th needs to be landscape. I've tried the using the code below with no luck. Any suggestions?
BTW, I also have the ContentType of each item set to movie on the first 3 rows and episode on the 4th.
listStyles = ["landscape","portrait", "portrait", "portrait"]
screen.SetGridStyle("mixed-aspect-ratio")
screen.SetListPosterStyles(listStyles)
I believe you need to call SetupLists prior to calling SetListPosterStyles.
You are correct, putting screen.SetListPosterStyles() after screen.setupLists() did the trick! Thanks TheEndless!!!!
So here it is again for those that are having trouble:
screen.setupLists(categoryList.count())
screen.SetListNames(categoryList)
listStyles = ["landscape","portrait", "portrait", "portrait"]
screen.SetGridStyle("mixed-aspect-ratio")
screen.SetListPosterStyles(listStyles) - j_saterfielVisitorI've tried to make this undocumented grid functionality work without avail.
I tried to use this functionality with the same code for the grid screen but nothing seems to affect it:
Sub Main()
port = CreateObject("roMessagePort")
grid = CreateObject("roGridScreen")
grid.SetMessagePort(port)
rowTitles = CreateObject("roArray", 4, true)
for j = 0 to 3
rowTitles.Push("[Row Title " + j.toStr() + " ] ")
end for
grid.SetupLists(rowTitles.Count())
grid.SetListNames(rowTitles)
listStyles = ["landscape","portrait", "portrait", "portrait"]
grid.SetGridStyle("mixed-aspect-ratio")
grid.SetListPosterStyles(listStyles)
for j = 0 to 3
list = CreateObject("roArray", 10, true)
for i = 0 to 10
o = CreateObject("roAssociativeArray")
o.ContentType = "episode"
o.Title = "[Title" + i.toStr() + "]"
o.ShortDescriptionLine1 = "[ShortDescriptionLine1]"
o.ShortDescriptionLine2 = "[ShortDescriptionLine2]"
o.Description = ""
o.Description = "[Description] "
o.Rating = "NR"
o.StarRating = "75"
o.ReleaseDate = "[<mm/dd/yyyy]"
o.Length = 5400
o.Actors = []
o.Actors.Push("[Actor1]")
o.Actors.Push("[Actor2]")
o.Actors.Push("[Actor3]")
o.Director = "[Director]"
list.Push(o)
end for
grid.SetContentList(j, list)
end for
grid.Show()
while true
msg = wait(0, port)
if type(msg) = "roGridScreenEvent" then
if msg.isScreenClosed() then
return
else if msg.isListItemFocused()
print "Focused msg: ";msg.GetMessage();"row: ";msg.GetIndex();
print " col: ";msg.GetData()
else if msg.isListItemSelected()
print "Selected msg: ";msg.GetMessage();"row: ";msg.GetIndex();
print " col: ";msg.GetData()
endif
endif
end while
end Sub - TheEndlessChannel SurferTry calling SetGridStyle before calling SetupLists, SetListNames, and SetListPosterStyles.
- j_saterfielVisitorExcellent that fixed the issue thanks 😄
- MatroxRTVisitorLooks like ifGridScreen.SetListPosterStyles is no longer undocumented. 🙂