Your Digital Media Has Never Looked So Good

 
norcaljohnny
Topic Author
Posts: 99
Joined: Thu Apr 13, 2017 11:00 pm

Creating a Rowlist

Fri Mar 08, 2019 7:16 pm

Can some please tell me how to create a 1 row rowlist using the generic content reader and an xml file.
For some reason I just can not do it. 

Ive seen bloated examples but is there something as simple as creating it like one would a markupgrid or such.

Kind regards!
 
destruk
Posts: 2720
Joined: Sat Dec 18, 2010 4:58 pm

Re: Creating a Rowlist

Fri Mar 08, 2019 10:22 pm

 
norcaljohnny
Topic Author
Posts: 99
Joined: Thu Apr 13, 2017 11:00 pm

Re: Creating a Rowlist

Fri Mar 08, 2019 10:28 pm

destruk wrote:

 I was hoping you would help :)
Sadly, I still couldnt get it to work.
I was hoping of some example with an xml file. Using an rss feed it I get it to work but not a generic content reader and xml file..
Any other suggestions?
 
destruk
Posts: 2720
Joined: Sat Dec 18, 2010 4:58 pm

Re: Creating a Rowlist

Fri Mar 08, 2019 10:40 pm

I think you'll need to be more specific.  I mean, if you are already parsing the content into your content node set, and you already can give that set of content to your markupgrid, then you just need a few settings for the rowlist and put the content over there for it. Is it failing when it displays the content on the screen, when interacting with the highlight and selection, or something else?
 
g-se
Posts: 9
Joined: Wed Aug 08, 2018 1:03 pm

Re: Creating a Rowlist

Tue Mar 12, 2019 2:09 pm

I struggled with this for a while myself - I could never get the included sample content reader (from various examples) to load remote content, until I realized that those content readers weren't really coded to parse out the more complex rowlist structure. Here's the solution I came up with:

My XML format:
<rowlistdata>   
 <row title = "First Row" >
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 </row>
 <row title = "Second Row" >
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 </row>
</rowlistdata>


Then, I modified the content reader to parse this out:

sub getcontent()
 content = createObject("roSGNode", "ContentNode")
 contentxml = createObject("roXMLElement")

 readInternet = createObject("roUrlTransfer")
 readInternet.setUrl(m.top.contenturi)
 contentxml.parse(readInternet.GetToString())

 if contentxml.getName()="rowlistdata"
 'print "rowlist data found"
 for each item in contentxml.GetNamedElements("row")
 'print "creating row"
          itemcontent = content.createChild("ContentNode")
 itemcontent.setFields(item.getAttributes())
 for each rowitem in item.GetNamedElements("rowitem")
 'print "found row item"
 rowitemcontent=itemcontent.createChild("[size=85][font=monospace]ContentNode[/font][/size]")
 rowitemcontent.setFields(rowitem.getAttributes())
 end for
 end for
 end if
 m.top.content = content
end sub


Hope that helps some
 
norcaljohnny
Topic Author
Posts: 99
Joined: Thu Apr 13, 2017 11:00 pm

Re: Creating a Rowlist

Wed Mar 13, 2019 8:27 pm

g-se wrote:
I struggled with this for a while myself - I could never get the included sample content reader (from various examples) to load remote content, until I realized that those content readers weren't really coded to parse out the more complex rowlist structure. Here's the solution I came up with:

My XML format:
<rowlistdata>   
 <row title = "First Row" >
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 </row>
 <row title = "Second Row" >
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 <rowitem HDPosterUrl = "..." title = "..." />
 </row>
</rowlistdata>


Then, I modified the content reader to parse this out:

sub getcontent()
 content = createObject("roSGNode", "ContentNode")
 contentxml = createObject("roXMLElement")

 readInternet = createObject("roUrlTransfer")
 readInternet.setUrl(m.top.contenturi)
 contentxml.parse(readInternet.GetToString())

 if contentxml.getName()="rowlistdata"
 'print "rowlist data found"
 for each item in contentxml.GetNamedElements("row")
 'print "creating row"
          itemcontent = content.createChild("ContentNode")
 itemcontent.setFields(item.getAttributes())
 for each rowitem in item.GetNamedElements("rowitem")
 'print "found row item"
 rowitemcontent=itemcontent.createChild("[size=85][font=monospace]ContentNode[/font][/size]")
 rowitemcontent.setFields(rowitem.getAttributes())
 end for
 end for
 end if
 m.top.content = content
end sub


Hope that helps some

Works perfectly for my needs! 2000 thanks :)

Who is online

Users browsing this forum: No registered users and 7 guests