load configured pages on startup
authorChristian Weiske <cweiske@cweiske.de>
Wed, 16 Nov 2011 18:17:38 +0000 (19:17 +0100)
committerChristian Weiske <cweiske@cweiske.de>
Wed, 16 Nov 2011 18:17:38 +0000 (19:17 +0100)
src/CurlyTxSettings.py
src/config.py

index 2fc7d4a..309bf3e 100644 (file)
@@ -42,6 +42,7 @@ class CurlyTxSettings(ConfigListScreen, Screen):
         self["key_blue"]   = StaticText(_("Delete"))
 
         ConfigListScreen.__init__(self, self.getConfigList(), session = self.session)
+        self.onClose.append(self.abort)
 
     def getConfigList(self):
         list = [
@@ -73,6 +74,8 @@ class CurlyTxSettings(ConfigListScreen, Screen):
         id = self["config"].getCurrentIndex()
         del config.plugins.CurlyTx.pages[id]
 
+        config.plugins.CurlyTx.pages.save()
+
         self["config"].setList(self.getConfigList())
 
     def newPage(self):
@@ -86,13 +89,21 @@ class CurlyTxSettings(ConfigListScreen, Screen):
         if new:
             num = len(config.plugins.CurlyTx.pages)
             config.plugins.CurlyTx.pages.append(page)
+            #FIXME: save
 
         config.plugins.CurlyTx.pages[num].save()
-        config.plugins.CurlyTx.pages.save()
 
         self["config"].setList(self.getConfigList())
 
 
+    def keySave(self):
+        config.plugins.CurlyTx.pages.save()
+        ConfigListScreen.keySave(self)
+
+    def abort(self):
+        pass
+
+
 
 class CurlyTxPageEdit(Screen, ConfigListScreen):
     def __init__(self, session, page, new = False):
index 9a98357..81f7d5c 100644 (file)
@@ -1,19 +1,5 @@
 from Components.config import config, ConfigYesNo, ConfigSelection, ConfigNumber, ConfigText, ConfigSubsection, ConfigSubList
 
-#configuration setup
-config.plugins.CurlyTx = ConfigSubsection()
-config.plugins.CurlyTx.menuMain = ConfigYesNo(default = True)
-config.plugins.CurlyTx.menuTitle = ConfigText(default = "CurlyTx")
-config.plugins.CurlyTx.pages = ConfigSubList()
-#i = 0
-#while i < len(config.plugins.CurlyTx.pages):
-#    config.plugins.CurlyTx.pages.append(createPage)
-#    i += 1
-#    del s
-#del i
-#config.plugins.CurlyTx.defaultPage = ConfigNumber(default=0)
-
-
 def createPage():
     s = ConfigSubsection()
     s.uri   = ConfigText(default="http://", fixed_size=False)
@@ -22,3 +8,15 @@ def createPage():
         fixed_size = False
         )
     return s
+
+#configuration setup
+config.plugins.CurlyTx = ConfigSubsection()
+config.plugins.CurlyTx.menuMain = ConfigYesNo(default = True)
+config.plugins.CurlyTx.menuTitle = ConfigText(default = "CurlyTx")
+config.plugins.CurlyTx.pageCount = ConfigNumber(default = 0)
+config.plugins.CurlyTx.pages = ConfigSubList()
+
+for id,value in config.plugins.CurlyTx.pages.stored_values.iteritems():
+    config.plugins.CurlyTx.pages.append(createPage())
+
+#config.plugins.CurlyTx.defaultPage = ConfigNumber(default=0)