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
|
from Screen import Screen
from Components.ActionMap import ActionMap
from Components.ConfigList import ConfigList
from Components.config import *
from Components.MenuList import MenuList
from Components.NimManager import nimmanager
class NimSetup(Screen):
def createSimpleSetup(self, nim, list, mode):
b = config.Nims[nim.slotid].diseqcA
item = b.controlType(b)
if mode == 0: #single Sat
list.append( ("Satellite", item) )
else: # > 1 Sats
list.append( ("Port A", item) )
if mode >= 1: # > 1 Sats
b = config.Nims[nim.slotid].diseqcB
item = b.controlType(b)
list.append( ("Port B", item) )
if mode >= 3: # > 2 Sats
b = config.Nims[nim.slotid].diseqcC
item = b.controlType(b)
list.append( ("Port C", item) )
b = config.Nims[nim.slotid].diseqcD
item = b.controlType(b)
list.append( ("Port D", item) )
def createSetup(self):
self.list = [ ]
b = config.Nims[self.nim.slotid].configMode
item = b.controlType(b)
self.list.append( ("Configmode", item) )
if b.value == 0: #simple setup
b = config.Nims[self.nim.slotid].diseqcMode
item = b.controlType(b)
self.list.append( ("Diseqcmode", item) )
self.createSimpleSetup(self.nim, self.list, b.value)
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):
self["config"].handleKey(config.key["nextElement"])
self.newConfig()
def keySave(self):
for x in self["config"].list:
x[1].save()
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"] = ActionMap(["SetupActions"],
{
"ok": self.keySave,
"cancel": self.keyCancel,
"left": self.keyLeft,
"right": self.keyRight
}, -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])
|