]> git.basschouten.com Git - openhab-addons.git/blob
a946742911b92e623b0e1a0cf6fb500b8c8ed260
[openhab-addons.git] /
1 /**
2  * Copyright (c) 2010-2024 Contributors to the openHAB project
3  *
4  * See the NOTICE file(s) distributed with this work for additional
5  * information.
6  *
7  * This program and the accompanying materials are made available under the
8  * terms of the Eclipse Public License 2.0 which is available at
9  * http://www.eclipse.org/legal/epl-2.0
10  *
11  * SPDX-License-Identifier: EPL-2.0
12  */
13 package org.openhab.binding.samsungtv.internal.protocol;
14
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16
17 /**
18  * The {@link KeyCode} presents all available key codes of Samsung TV.
19  *
20  * @see <a
21  *      href="http://wiki.samygo.tv/index.php5/D-Series_Key_Codes">http://wiki.samygo.tv/index.php5/D-Series_Key_Codes
22  *      </a>
23  * 
24  *
25  * @author Pauli Anttila - Initial contribution
26  * @author Nick Waterton - added KEY_AMBIENT, KEY_BT_VOICE
27  */
28 @NonNullByDefault
29 public enum KeyCode {
30
31     KEY_0,
32     KEY_1,
33     KEY_2,
34     KEY_3,
35     KEY_4,
36     KEY_5,
37     KEY_6,
38     KEY_7,
39     KEY_8,
40     KEY_9,
41     KEY_11,
42     KEY_12,
43     KEY_3SPEED,
44     KEY_4_3,
45     KEY_16_9,
46     KEY_AD,
47     KEY_ADDDEL,
48     KEY_ALT_MHP,
49     KEY_AMBIENT,
50     KEY_ANGLE,
51     KEY_ANTENA,
52     KEY_ANYNET,
53     KEY_ANYVIEW,
54     KEY_APP_LIST,
55     KEY_ASPECT,
56     KEY_AUTO_ARC_ANTENNA_AIR,
57     KEY_AUTO_ARC_ANTENNA_CABLE,
58     KEY_AUTO_ARC_ANTENNA_SATELLITE,
59     KEY_AUTO_ARC_ANYNET_AUTO_START,
60     KEY_AUTO_ARC_ANYNET_MODE_OK,
61     KEY_AUTO_ARC_AUTOCOLOR_FAIL,
62     KEY_AUTO_ARC_AUTOCOLOR_SUCCESS,
63     KEY_AUTO_ARC_CAPTION_ENG,
64     KEY_AUTO_ARC_CAPTION_KOR,
65     KEY_AUTO_ARC_CAPTION_OFF,
66     KEY_AUTO_ARC_CAPTION_ON,
67     KEY_AUTO_ARC_C_FORCE_AGING,
68     KEY_AUTO_ARC_JACK_IDENT,
69     KEY_AUTO_ARC_LNA_OFF,
70     KEY_AUTO_ARC_LNA_ON,
71     KEY_AUTO_ARC_PIP_CH_CHANGE,
72     KEY_AUTO_ARC_PIP_DOUBLE,
73     KEY_AUTO_ARC_PIP_LARGE,
74     KEY_AUTO_ARC_PIP_LEFT_BOTTOM,
75     KEY_AUTO_ARC_PIP_LEFT_TOP,
76     KEY_AUTO_ARC_PIP_RIGHT_BOTTOM,
77     KEY_AUTO_ARC_PIP_RIGHT_TOP,
78     KEY_AUTO_ARC_PIP_SMALL,
79     KEY_AUTO_ARC_PIP_SOURCE_CHANGE,
80     KEY_AUTO_ARC_PIP_WIDE,
81     KEY_AUTO_ARC_RESET,
82     KEY_AUTO_ARC_USBJACK_INSPECT,
83     KEY_AUTO_FORMAT,
84     KEY_AUTO_PROGRAM,
85     KEY_AV1,
86     KEY_AV2,
87     KEY_AV3,
88     KEY_BACK_MHP,
89     KEY_BOOKMARK,
90     KEY_BT_VOICE,
91     KEY_CALLER_ID,
92     KEY_CAPTION,
93     KEY_CATV_MODE,
94     KEY_CHDOWN,
95     KEY_CHUP,
96     KEY_CH_LIST,
97     KEY_CLEAR,
98     KEY_CLOCK_DISPLAY,
99     KEY_COMPONENT1,
100     KEY_COMPONENT2,
101     KEY_CONTENTS,
102     KEY_CONVERGENCE,
103     KEY_CONVERT_AUDIO_MAINSUB,
104     KEY_CUSTOM,
105     KEY_CYAN,
106     KEY_BLUE(KEY_CYAN),
107     KEY_DEVICE_CONNECT,
108     KEY_DISC_MENU,
109     KEY_DMA,
110     KEY_DNET,
111     KEY_DNIE,
112     KEY_DNSE,
113     KEY_DOOR,
114     KEY_DOWN,
115     KEY_DSS_MODE,
116     KEY_DTV,
117     KEY_DTV_LINK,
118     KEY_DTV_SIGNAL,
119     KEY_DVD_MODE,
120     KEY_DVI,
121     KEY_DVR,
122     KEY_DVR_MENU,
123     KEY_DYNAMIC,
124     KEY_ENTER,
125     KEY_ENTERTAINMENT,
126     KEY_ESAVING,
127     KEY_EXIT,
128     KEY_EXT1,
129     KEY_EXT2,
130     KEY_EXT3,
131     KEY_EXT4,
132     KEY_EXT5,
133     KEY_EXT6,
134     KEY_EXT7,
135     KEY_EXT8,
136     KEY_EXT9,
137     KEY_EXT10,
138     KEY_EXT11,
139     KEY_EXT12,
140     KEY_EXT13,
141     KEY_EXT14,
142     KEY_EXT15,
143     KEY_EXT16,
144     KEY_EXT17,
145     KEY_EXT18,
146     KEY_EXT19,
147     KEY_EXT20,
148     KEY_EXT21,
149     KEY_EXT22,
150     KEY_EXT23,
151     KEY_EXT24,
152     KEY_EXT25,
153     KEY_EXT26,
154     KEY_EXT27,
155     KEY_EXT28,
156     KEY_EXT29,
157     KEY_EXT30,
158     KEY_EXT31,
159     KEY_EXT32,
160     KEY_EXT33,
161     KEY_EXT34,
162     KEY_EXT35,
163     KEY_EXT36,
164     KEY_EXT37,
165     KEY_EXT38,
166     KEY_EXT39,
167     KEY_EXT40,
168     KEY_EXT41,
169     KEY_FACTORY,
170     KEY_FAVCH,
171     KEY_FF,
172     KEY_FM_RADIO,
173     KEY_GAME,
174     KEY_GREEN,
175     KEY_GUIDE,
176     KEY_HDMI,
177     KEY_HDMI1,
178     KEY_HDMI2,
179     KEY_HDMI3,
180     KEY_HDMI4,
181     KEY_HELP,
182     KEY_HOME,
183     KEY_ID_INPUT,
184     KEY_ID_SETUP,
185     KEY_INFO,
186     KEY_INSTANT_REPLAY,
187     KEY_LEFT,
188     KEY_LINK,
189     KEY_LIVE,
190     KEY_MAGIC_BRIGHT,
191     KEY_MAGIC_CHANNEL,
192     KEY_MDC,
193     KEY_MENU,
194     KEY_MIC,
195     KEY_MORE,
196     KEY_MOVIE1,
197     KEY_MS,
198     KEY_MTS,
199     KEY_MULTI_VIEW,
200     KEY_MUTE,
201     KEY_NINE_SEPERATE,
202     KEY_OPEN,
203     KEY_PANNEL_CHDOWN,
204     KEY_PANNEL_CHUP,
205     KEY_PANNEL_ENTER,
206     KEY_PANNEL_MENU,
207     KEY_PANNEL_POWER,
208     KEY_PANNEL_SOURCE,
209     KEY_PANNEL_VOLDOW,
210     KEY_PANNEL_VOLUP,
211     KEY_PANORAMA,
212     KEY_PAUSE,
213     KEY_PCMODE,
214     KEY_PERPECT_FOCUS,
215     KEY_PICTURE_SIZE,
216     KEY_PIP_CHDOWN,
217     KEY_PIP_CHUP,
218     KEY_PIP_ONOFF,
219     KEY_PIP_SCAN,
220     KEY_PIP_SIZE,
221     KEY_PIP_SWAP,
222     KEY_PLAY,
223     KEY_PLUS100,
224     KEY_PMODE,
225     KEY_POWER,
226     KEY_POWEROFF,
227     KEY_POWERON,
228     KEY_PRECH,
229     KEY_PRINT,
230     KEY_PROGRAM,
231     KEY_QUICK_REPLAY,
232     KEY_REC,
233     KEY_RED,
234     KEY_REPEAT,
235     KEY_RESERVED1,
236     KEY_RETURN,
237     KEY_REWIND,
238     KEY_RIGHT,
239     KEY_RSS,
240     KEY_INTERNET(KEY_RSS),
241     KEY_RSURF,
242     KEY_SCALE,
243     KEY_SEFFECT,
244     KEY_SETUP_CLOCK_TIMER,
245     KEY_SLEEP,
246     KEY_SOUND_MODE,
247     KEY_SOURCE,
248     KEY_SRS,
249     KEY_STANDARD,
250     KEY_STB_MODE,
251     KEY_STILL_PICTURE,
252     KEY_STOP,
253     KEY_SUB_TITLE,
254     KEY_SVIDEO1,
255     KEY_SVIDEO2,
256     KEY_SVIDEO3,
257     KEY_TOOLS,
258     KEY_TOPMENU,
259     KEY_TTX_MIX,
260     KEY_TTX_SUBFACE,
261     KEY_TURBO,
262     KEY_TV,
263     KEY_TV_MODE,
264     KEY_UP,
265     KEY_VCHIP,
266     KEY_VCR_MODE,
267     KEY_VOLDOWN,
268     KEY_VOLUP,
269     KEY_WHEEL_LEFT,
270     KEY_WHEEL_RIGHT,
271     KEY_W_LINK,
272     KEY_YELLOW,
273     KEY_ZOOM1,
274     KEY_ZOOM2,
275     KEY_ZOOM_IN,
276     KEY_ZOOM_MOVE,
277     KEY_ZOOM_OUT;
278
279     private final String value;
280
281     KeyCode() {
282         value = "";
283     }
284
285     KeyCode(String value) {
286         this.value = value;
287     }
288
289     KeyCode(KeyCode otherKey) {
290         this(otherKey.getValue());
291     }
292
293     public String getValue() {
294         if ("".equals(value)) {
295             return this.name();
296         }
297         return value;
298     }
299 }