1 from Screens.Screen import Screen
2 from Screens.MessageBox import MessageBox
3 from Components.Label import Label
4 from Components.ScrollLabel import ScrollLabel
5 from Components.ActionMap import NumberActionMap
6 from Components.Sources.StaticText import StaticText
7 from twisted.web import client
10 from Components.config import config
12 class CurlyTx(Screen):
14 <screen name="CurlyTx" position="center,center" size="560,400" title="CurlyTx" >
15 <ePixmap position="0,0" size="140,40" pixmap="skin_default/buttons/red.png" transparent="1" alphatest="on" />
16 <ePixmap position="140,0" size="140,40" pixmap="skin_default/buttons/green.png" transparent="1" alphatest="on" />
17 <ePixmap position="280,0" size="140,40" pixmap="skin_default/buttons/yellow.png" transparent="1" alphatest="on" />
18 <ePixmap position="420,0" size="140,40" pixmap="skin_default/buttons/blue.png" transparent="1" alphatest="on" />
19 <widget source="key_red" render="Label" position="0,0" zPosition="1" size="140,40" valign="center" halign="center" font="Regular;21" transparent="1" foregroundColor="white" shadowColor="black" shadowOffset="-1,-1" />
20 <widget source="key_green" render="Label" position="140,0" zPosition="1" size="140,40" valign="center" halign="center" font="Regular;21" transparent="1" foregroundColor="white" shadowColor="black" shadowOffset="-1,-1" />
21 <widget source="key_yellow" render="Label" position="280,0" zPosition="1" size="140,40" valign="center" halign="center" font="Regular;21" transparent="1" foregroundColor="white" shadowColor="black" shadowOffset="-1,-1" />
22 <widget source="key_blue" render="Label" position="420,0" zPosition="1" size="140,40" valign="center" halign="center" font="Regular;21" transparent="1" foregroundColor="white" shadowColor="black" shadowOffset="-1,-1" />
23 <widget name="text" position="5,45" size="550,350" font="Console;20" />
28 def __init__(self, session, args = None):
29 #self.skin = CurlyTx.skin
30 Screen.__init__(self, session)
31 #self.skinName = [ "CurlyTx", "Setup" ]
33 self["text"] = ScrollLabel("foo")
35 self["key_red"] = StaticText(_("Settings"))
36 self["key_green"] = StaticText(_("Reload"))
37 self["key_yellow"] = StaticText(_("Prev"))
38 self["key_blue"] = StaticText(_("Next"))
41 self["actions"] = NumberActionMap(["WizardActions", "ColorActions", "InputActions"], {
45 "down": self.pageDown,
47 "red": self.showSettings,
51 self.loadUrl("http://monitoring.home.cweiske.de/wetter/plain.txt")
57 self["text"].pageDown()
60 def mycallback(self, answer):
61 print "answer:", answer
63 raise Exception("test-crash")
67 self.loadUrl(self.currentUrl)
69 def loadUrl(self, url):
70 self["text"].setText("Loading ...\n" + url);
73 client.getPage(url).addCallback(self.urlLoaded).addErrback(self.urlFailed, url)
75 def urlLoaded(self, html):
76 self["text"].setText(html)
78 def urlFailed(self, error, url):
80 "Error fetching URL:\n " + error.getErrorMessage()
84 def showSettings(self):
85 #self.session.openWithCallback(self.setConf ,Pic_Setup)
86 from CurlyTxSettings import CurlyTxSettings
87 self.session.openWithCallback(self.onSettingsChanged, CurlyTxSettings)
89 def onSettingsChanged(self):