1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
from Screen import Screen
from Components.ActionMap import NumberActionMap
from Components.ActionMap import ActionMap
from Components.ConfigList import ConfigList
from Components.config import *
from Components.MenuList import MenuList
from Components.NimManager import nimmanager
from Components.config import getConfigListEntry
class NimSetup(Screen):
def createSimpleSetup(self, nim, list, mode):
if mode == 0: #single Sat
list.append(getConfigListEntry(_("Satellite"), config.Nims[nim.slotid].diseqcA))
else: # > 1 Sats
list.append(getConfigListEntry(_("Port A"), config.Nims[nim.slotid].diseqcA))
if mode >= 1: # > 1 Sats
list.append(getConfigListEntry(_("Port B"), config.Nims[nim.slotid].diseqcB))
if mode >= 3: # > 2 Sats
list.append(getConfigListEntry(_("Port C"), config.Nims[nim.slotid].diseqcC))
list.append(getConfigListEntry(_("Port D"), config.Nims[nim.slotid].diseqcD))
def createPositionerSetup(self, nim, list):
list.append(getConfigListEntry(_("Longitude"), config.Nims[nim.slotid].longitude))
list.append(getConfigListEntry(_("Latitude"), config.Nims[nim.slotid].latitude))
pass
def createSetup(self):
self.list = [ ]
self.list.append(getConfigListEntry(_("Configmode"), config.Nims[self.nim.slotid].configMode))
if config.Nims[self.nim.slotid].configMode.value == 0: #simple setup
self.list.append(getConfigListEntry(_("Diseqcmode"), config.Nims[self.nim.slotid].diseqcMode))
if (0 <= config.Nims[self.nim.slotid].diseqcMode.value < 4):
self.createSimpleSetup(self.nim, self.list, config.Nims[self.nim.slotid].diseqcMode.value)
if (config.Nims[self.nim.slotid].diseqcMode.value == 4):
self.createPositionerSetup(self.nim, self.list)
else:
print "FIXME: implement advanced mode"
self["config"].list = self.list
self["config"].l.setList(self.list)
def newConfig(self):
if self["config"].getCurrent()[0] == _("Diseqcmode"):
self.createSetup()
if self["config"].getCurrent()[0] == _("Configmode"):
self.createSetup()
def keyLeft(self):
self["config"].handleKey(config.key["prevElement"])
self.newConfig()
def keyRight(self):
#forbid to enable advanced mode until its ready
if self["config"].getCurrent()[0] != _("Configmode"):
self["config"].handleKey(config.key["nextElement"])
self.newConfig()
def keyNumberGlobal(self, number):
print "You pressed number " + str(number)
if (self["config"].getCurrent()[1].parent.enabled == True):
self["config"].handleKey(config.key[str(number)])
def keySave(self):
for x in self["config"].list:
x[1].save()
nimmanager.sec.update()
self.close()
def keyCancel(self):
for x in self["config"].list:
x[1].cancel()
self.close()
def __init__(self, session, nim):
Screen.__init__(self, session)
self.nim = nim
self["actions"] = NumberActionMap(["SetupActions"],
{
"ok": self.keySave,
"cancel": self.keyCancel,
"left": self.keyLeft,
"right": self.keyRight,
"1": self.keyNumberGlobal,
"2": self.keyNumberGlobal,
"3": self.keyNumberGlobal,
"4": self.keyNumberGlobal,
"5": self.keyNumberGlobal,
"6": self.keyNumberGlobal,
"7": self.keyNumberGlobal,
"8": self.keyNumberGlobal,
"9": self.keyNumberGlobal,
"0": self.keyNumberGlobal
}, -1)
self.list = [ ]
self["config"] = ConfigList(self.list)
self.createSetup()
class NimSelection(Screen):
def __init__(self, session):
Screen.__init__(self, session)
self["nimlist"] = MenuList(nimmanager.nimList())
self["actions"] = ActionMap(["OkCancelActions"],
{
"ok": self.okbuttonClick ,
"cancel": self.close
}, -1)
def okbuttonClick(self):
selection = self["nimlist"].getCurrent()
if selection[1].nimType != -1: #unknown/empty
self.session.open(NimSetup, selection[1])
|