2 from Screens.Screen import Screen
3 from Screens.MessageBox import MessageBox
4 from Components.ActionMap import NumberActionMap
5 from Components.Label import Label
6 from Components.MenuList import MenuList
7 from Components.GUIComponent import *
8 from Components.ChoiceList import ChoiceEntryComponent, ChoiceList
12 class PiPSetup(Screen):
13 def __init__(self, session, pip):
14 Screen.__init__(self, session)
18 self.pos = (self.pip.instance.position().x(), self.pip.instance.position().y())
19 self.orgpos = self.pos
21 self.size = self.pip.getSize()
25 self["text"] = Label(_("Please use direction keys to move the PiP window.\nPress Bouquet +/- to resize the window.\nPress OK to go back to the TV mode or EXIT to cancel the moving."))
27 self["actions"] = NumberActionMap(["PiPSetupActions", "NumberActions"],
30 "cancel": self.cancel,
36 "size-": self.smaller,
37 "1": self.keyNumberGlobal,
38 "2": self.keyNumberGlobal,
39 "3": self.keyNumberGlobal,
40 "4": self.keyNumberGlobal,
41 "5": self.keyNumberGlobal,
42 "6": self.keyNumberGlobal,
43 "7": self.keyNumberGlobal,
44 "8": self.keyNumberGlobal,
45 "9": self.keyNumberGlobal,
46 "0": self.keyNumberGlobal
53 self.movePiP(self.orgpos[0], self.orgpos[1])
57 def movePiP(self, x, y):
65 def resizePiP(self, resize):
66 w = int(self.size[0] * self.resize / 100)
67 h = int(self.size[1] * self.resize / 100)
72 self.movePiP(self.pos[0], self.pos[1] - 10)
75 self.movePiP(self.pos[0], self.pos[1] + 10)
78 self.movePiP(self.pos[0] - 10, self.pos[1])
81 self.movePiP(self.pos[0] + 10, self.pos[1])
84 self.resizePiP(self.resize + 5)
87 self.resizePiP(self.resize - 5)
89 def keyNumberGlobal(self, number):
90 size = int(240 / self.size[0] * 100)
91 actions = [((self.orgpos[0], self.orgpos[1]), size),
102 self.movePiP(actions[number][0][0], actions[number][0][1])
103 self.resizePiP(actions[number][1])