Adding per-keyset editable data
[pierogi] / keysets / loewe.cpp
1 #include "loewe.h"
2 #include "protocols/rc5protocol.h"
3 #include "protocols/necprotocol.h"
4 #include "protocols/rc6protocol.h"
5
6 LoeweTV1::LoeweTV1(
7   unsigned int index)
8   : PIRKeysetMetaData(
9       "TV Keyset 1",
10       Loewe_Make,
11       index)
12 {
13 }
14
15
16 void LoeweTV1::populateProtocol(
17   QObject *guiObject)
18 {
19   if (threadableProtocol)
20   {
21     // Keyset already populated.
22     return;
23   }
24
25   threadableProtocol = new RC5Protocol(guiObject, index, 0x40);
26
27   addKey("Up", Up_Key, 0x20, 6);
28   addKey("Up", ChannelUp_Key, 0x20, 6);
29   addKey("Down", Down_Key, 0x21, 6);
30   addKey("Down", ChannelDown_Key, 0x21, 6);
31   addKey("Left", Left_Key, 0x11, 6);
32   addKey("Right", Right_Key, 0x10, 6);
33   addKey("Ok", Select_Key, 0x26, 6);
34   addKey("Red", Red_Key, 0x1B, 6);
35   addKey("Green", Green_Key, 0x1A, 6);
36   addKey("Yellow", Yellow_Key, 0x2B, 6);
37   addKey("Blue", Blue_Key, 0x28, 6);
38   addKey("1", One_Key, 0x01, 6);
39   addKey("2", Two_Key, 0x02, 6);
40   addKey("3", Three_Key, 0x03, 6);
41   addKey("4", Four_Key, 0x04, 6);
42   addKey("5", Five_Key, 0x05, 6);
43   addKey("6", Six_Key, 0x06, 6);
44   addKey("7", Seven_Key, 0x07, 6);
45   addKey("8", Eight_Key, 0x08, 6);
46   addKey("9", Nine_Key, 0x09, 6);
47   addKey("0", Zero_Key, 0x00, 6);
48   addKey("T", Unmapped_Key, 0x3C, 6);
49   addKey("M", Unmapped_Key, 0x0B, 6);
50   addKey("E", Unmapped_Key, 0x3F, 6);
51   addKey("I", Unmapped_Key, 0x27, 6);
52   addKey("Power", Power_Key, 0x0C, 6);
53   addKey("Mute", Mute_Key, 0x0D, 6);
54   addKey("Video", PictureMode_Key, 0x23, 6);
55   addKey("Audio", SoundMode_Key, 0x35, 6);
56   addKey("PiP", PIP_Key, 0x0A, 6);
57   addKey("V=", Unmapped_Key, 0x31, 6);
58   addKey("Timer", Sleep_Key, 0x0F, 6);
59 }
60
61
62 LoeweVCR1::LoeweVCR1(
63   unsigned int index)
64   : PIRKeysetMetaData(
65       "VCR Keyset 1",
66       Loewe_Make,
67       index)
68 {
69   addControlledDevice(Loewe_Make, "ViewVision 3600H", VCR_Device);
70   addControlledDevice(Loewe_Make, "ViewVision 8500H", VCR_Device);
71 }
72
73
74 void LoeweVCR1::populateProtocol(
75   QObject *guiObject)
76 {
77   if (threadableProtocol)
78   {
79     // Keyset already populated.
80     return;
81   }
82
83   threadableProtocol = new NECProtocol(guiObject, index, false, true);
84
85   setPreData(0x6E, 8);
86
87   addKey("POWER", Power_Key, 0x14, 8);
88   addKey("SHOW", Unmapped_Key, 0x47, 8);
89   addKey("1", One_Key, 0x05, 8);
90   addKey("2", Two_Key, 0x06, 8);
91   addKey("3", Three_Key, 0x07, 8);
92   addKey("4", Four_Key, 0x0C, 8);
93   addKey("5", Five_Key, 0x0D, 8);
94   addKey("6", Six_Key, 0x0E, 8);
95   addKey("7", Seven_Key, 0x0F, 8);
96   addKey("8", Eight_Key, 0x1C, 8);
97   addKey("9", Nine_Key, 0x1D, 8);
98   addKey("0", Zero_Key, 0x04, 8);
99   addKey("AV", CompositeInput_Key, 0x56, 8); // need to fix this
100   addKey("MENU", Menu_Key, 0x16, 8);
101   addKey("UP", Up_Key, 0x18, 8);
102   addKey("UP", ChannelUp_Key, 0x18, 8);
103   addKey("DOWN", Down_Key, 0x19, 8);
104   addKey("DOWN", ChannelDown_Key, 0x19, 8);
105   addKey("RIGHT", Right_Key, 0x90, 8);
106   addKey("LEFT", Left_Key, 0x83, 8);
107   addKey("OK", Select_Key, 0x8E, 8);
108   addKey("STILL", Pause_Key, 0x0B, 8);
109   addKey("REC", Record_Key, 0x09, 8);
110   addKey("STOP", Stop_Key, 0x01, 8);
111   addKey("REW", Rewind_Key, 0x02, 8);
112   addKey("PLAY", Play_Key, 0x08, 8);
113   addKey("FF", FastForward_Key, 0x03, 8);
114   addKey("A/T", AutoTracking_Key, 0x5F, 8);
115   addKey("TV", Input_Key, 0x15, 8);
116   addKey("LP", VHSSpeed_Key, 0x48, 8);
117   addKey("REST", Clock_Key, 0x4C, 8);
118   addKey("VISS", IndexSearch_Key, 0x41, 8);
119   addKey("MARK", IndexMark_Key, 0x50, 8);
120   addKey("ERASE", IndexErase_Key, 0x42, 8);
121   addKey("0000", Reset_Key, 0x4D, 8);
122 }
123
124
125 LoeweDVD1::LoeweDVD1(
126   unsigned int index)
127   : PIRKeysetMetaData(
128       "DVD Keyset 1",
129       Loewe_Make,
130       index)
131 {
132 }
133
134
135 void LoeweDVD1::populateProtocol(
136   QObject *guiObject)
137 {
138   if (threadableProtocol)
139   {
140     // Keyset already populated.
141     return;
142   }
143
144   threadableProtocol = new RC6Protocol(guiObject, index, 0x04);
145
146   addKey("Up", Up_Key, 0x58, 8);
147   addKey("Down", Down_Key, 0x59, 8);
148   addKey("Left", Left_Key, 0x5A, 8);
149   addKey("Right", Right_Key, 0x5B, 8);
150   addKey("Ok", Select_Key, 0x5C, 8);
151   addKey("Red", Red_Key, 0x21, 8);
152   addKey("Green", Green_Key, 0x31, 8);
153   addKey("Yellow", Yellow_Key, 0x2C, 8);
154   addKey("Blue", Blue_Key, 0x20, 8);
155   addKey("T", Unmapped_Key, 0x30, 8);
156   addKey("M", Unmapped_Key, 0xD1, 8);
157   addKey("E", Unmapped_Key, 0x83, 8);
158   addKey("I", Unmapped_Key, 0x22, 8);
159   addKey("1", One_Key, 0x01, 8);
160   addKey("2", Two_Key, 0x02, 8);
161   addKey("3", Three_Key, 0x03, 8);
162   addKey("4", Four_Key, 0x04, 8);
163   addKey("5", Five_Key, 0x05, 8);
164   addKey("6", Six_Key, 0x06, 8);
165   addKey("7", Seven_Key, 0x07, 8);
166   addKey("8", Eight_Key, 0x08, 8);
167   addKey("9", Nine_Key, 0x09, 8);
168   addKey("0", Zero_Key, 0x00, 8);
169   addKey("Power", Power_Key, 0x0C, 8);
170   addKey("Video", PictureMode_Key, 0x4B, 8);
171   addKey("Audio", SoundMode_Key, 0x4E, 8);
172   addKey("Mute", Mute_Key, 0x0F, 8);
173   addKey("Timer", Sleep_Key, 0xC8, 8);
174   addKey("V=", Unmapped_Key, 0x1D, 8);
175   addKey("PiP", PIP_Key, 0x85, 8);
176 }