reenable editing of network settings by adding an action for every number
[vuplus_dvbapp] / lib / python / Screens / NetworkSetup.py
1 from Screen import Screen
2 from Components.ActionMap import ActionMap
3 from Components.ConfigList import ConfigList
4 from Components.config import config
5 from Components.config import getConfigListEntry
6
7 class NetworkSetup(Screen):
8     def __init__(self, session):
9         Screen.__init__(self, session)
10         
11         self["actions"] = ActionMap(["SetupActions"],
12         {
13             "ok": self.keySave,
14             "cancel": self.keyCancel,
15             "left": self.keyLeft,
16             "right": self.keyRight,
17             "1": self.keyNumber1,
18             "2": self.keyNumber2,
19             "3": self.keyNumber3,
20             "4": self.keyNumber4,
21             "5": self.keyNumber5,
22             "6": self.keyNumber6,
23             "7": self.keyNumber7,
24             "8": self.keyNumber8,
25             "9": self.keyNumber9,
26             "0": self.keyNumber0
27         }, -1)
28
29         self.list = []
30         self["config"] = ConfigList(self.list)
31         self.createSetup()
32         
33     def createSetup(self):
34         self.list = []
35         
36         self.list.append(getConfigListEntry("Use DHCP", config.network.dhcp))
37         if (config.network.dhcp.value == 0):
38             self.list.append(getConfigListEntry("IP Address", config.network.ip))
39             self.list.append(getConfigListEntry("Netmask", config.network.netmask))
40             self.list.append(getConfigListEntry("Gateway", config.network.gateway))
41             self.list.append(getConfigListEntry("Nameserver", config.network.dns))
42         
43         self["config"].list = self.list
44         self["config"].l.setList(self.list)
45         
46     def newConfig(self):
47         print self["config"].getCurrent()
48         if self["config"].getCurrent()[0] == "Use DHCP":
49             self.createSetup()
50
51     def keyLeft(self):
52         self["config"].handleKey(config.key["prevElement"])
53         self.newConfig()
54
55     def keyRight(self):
56         self["config"].handleKey(config.key["nextElement"])
57         self.newConfig()
58     
59     def keyNumberGlobal(self, number):
60         print "You pressed number " + str(number)
61         if (self["config"].getCurrent()[1].parent.enabled == True):
62             self["config"].handleKey(config.key[str(number)])
63         
64     def keyNumber1(self):
65         self.keyNumberGlobal(1)
66     def keyNumber2(self):
67         self.keyNumberGlobal(2)
68     def keyNumber3(self):
69         self.keyNumberGlobal(3)
70     def keyNumber4(self):
71         self.keyNumberGlobal(4)
72     def keyNumber5(self):
73         self.keyNumberGlobal(5)
74     def keyNumber6(self):
75         self.keyNumberGlobal(6)
76     def keyNumber7(self):
77         self.keyNumberGlobal(7)
78     def keyNumber8(self):
79         self.keyNumberGlobal(8)
80     def keyNumber9(self):
81         self.keyNumberGlobal(9)
82     def keyNumber0(self):
83         self.keyNumberGlobal(0)        
84
85     def keySave(self):
86         #for x in self["config"].list:
87             #x[1].save()
88         self.close()
89
90     def keyCancel(self):
91         for x in self["config"].list:
92             x[1].cancel()
93         self.close()