Stary2001

page

Jan 4th, 2013
15
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.70 KB | None | 0 0
  1. page={}
  2.  
  3. function getsize(node)
  4.  
  5. end
  6.  
  7. function strip(s)
  8. return string.gsub(string.gsub(s,"^%s+",""),"%s+$","")
  9. end
  10.  
  11. function parse(xmlPage)
  12. local t = {}
  13.  
  14. for k,v in ipairs(xmlPage) do
  15. if type(v)=="table" then
  16. t[#t+1] = layout.new(v.label,
  17. v["pos"],
  18. v["size"] or getsize(v),
  19. data,
  20. parse(v))
  21.  
  22. else
  23. v = strip(v)
  24.  
  25. t[#t+1] = layout.new("text",layout.nextpos(),{x=1,y=1},{},v)
  26. end
  27. end
  28.  
  29. return t
  30. end
  31.  
  32. function page.load(url)
  33. print("Loading '" .. url .. "'.")
  34. local proto,rest = string.gmatch(url,"(%a-)://(.+)")()
  35.  
  36. local xmlPage = xml.parse(protocols[proto].load(rest))
  37. xmlPage=xmlPage[1]
  38.  
  39. return parse(xmlPage)
  40. end
Advertisement
Add Comment
Please, Sign In to add comment