1 /*
2  *  Copyright (C) 2005-2018 Team Kodi
3  *  This file is part of Kodi - https://kodi.tv
4  *
5  *  SPDX-License-Identifier: GPL-2.0-or-later
6  *  See LICENSES/README.md for more information.
7  */
8 
9 #pragma once
10 
11 #define PLAYER_HAS_MEDIA              1
12 #define PLAYER_HAS_AUDIO              2
13 #define PLAYER_HAS_VIDEO              3
14 #define PLAYER_PLAYING                4
15 #define PLAYER_PAUSED                 5
16 #define PLAYER_REWINDING              6
17 #define PLAYER_REWINDING_2x           7
18 #define PLAYER_REWINDING_4x           8
19 #define PLAYER_REWINDING_8x           9
20 #define PLAYER_REWINDING_16x         10
21 #define PLAYER_REWINDING_32x         11
22 #define PLAYER_FORWARDING            12
23 #define PLAYER_FORWARDING_2x         13
24 #define PLAYER_FORWARDING_4x         14
25 #define PLAYER_FORWARDING_8x         15
26 #define PLAYER_FORWARDING_16x        16
27 #define PLAYER_FORWARDING_32x        17
28 #define PLAYER_CACHING               20
29 #define PLAYER_DISPLAY_AFTER_SEEK    21
30 #define PLAYER_PROGRESS              22
31 #define PLAYER_SEEKBAR               23
32 #define PLAYER_SEEKTIME              24
33 #define PLAYER_SEEKING               25
34 #define PLAYER_SHOWTIME              26
35 #define PLAYER_TIME                  27
36 #define PLAYER_TIME_REMAINING        28
37 #define PLAYER_DURATION              29
38 // unused 30
39 #define PLAYER_SHOWINFO              31
40 #define PLAYER_VOLUME                32
41 #define PLAYER_MUTED                 33
42 #define PLAYER_HASDURATION           34
43 #define PLAYER_CHAPTER               35
44 #define PLAYER_CHAPTERCOUNT          36
45 #define PLAYER_TIME_SPEED            37
46 #define PLAYER_FINISH_TIME           38
47 #define PLAYER_CACHELEVEL            39
48 #define PLAYER_CHAPTERNAME           41
49 #define PLAYER_SUBTITLE_DELAY        42
50 #define PLAYER_AUDIO_DELAY           43
51 #define PLAYER_PASSTHROUGH           44
52 // unused 45
53 // unused 46
54 #define PLAYER_SEEKOFFSET            47
55 #define PLAYER_PROGRESS_CACHE        48
56 #define PLAYER_ITEM_ART              49
57 #define PLAYER_CAN_PAUSE             50
58 #define PLAYER_CAN_SEEK              51
59 #define PLAYER_START_TIME            52
60 // unused 53
61 #define PLAYER_ISINTERNETSTREAM      54
62 // unused 55
63 #define PLAYER_SEEKSTEPSIZE          56
64 #define PLAYER_IS_CHANNEL_PREVIEW_ACTIVE  57
65 #define PLAYER_SUPPORTS_TEMPO        58
66 #define PLAYER_IS_TEMPO              59
67 #define PLAYER_PLAYSPEED             60
68 #define PLAYER_SEEKNUMERIC           61
69 #define PLAYER_HAS_GAME              62
70 #define PLAYER_HAS_PROGRAMS          63
71 #define PLAYER_HAS_RESOLUTIONS       64
72 #define PLAYER_FRAMEADVANCE          65
73 #define PLAYER_ICON                  66
74 #define PLAYER_CUTLIST               67
75 #define PLAYER_CHAPTERS              68
76 // Keep player infolabels that work with offset and position together
77 #define PLAYER_PATH                  81
78 #define PLAYER_FILEPATH              82
79 #define PLAYER_TITLE                 83
80 #define PLAYER_FILENAME              84
81 
82 // Range of player infolabels that work with offset and position
83 #define PLAYER_OFFSET_POSITION_FIRST PLAYER_PATH
84 #define PLAYER_OFFSET_POSITION_LAST PLAYER_FILENAME
85 
86 #define WEATHER_CONDITIONS_TEXT     100
87 #define WEATHER_TEMPERATURE         101
88 #define WEATHER_LOCATION            102
89 #define WEATHER_IS_FETCHED          103
90 #define WEATHER_FANART_CODE         104
91 #define WEATHER_PLUGIN              105
92 #define WEATHER_CONDITIONS_ICON     106
93 
94 #define SYSTEM_TEMPERATURE_UNITS    107
95 #define SYSTEM_PROGRESS_BAR         108
96 #define SYSTEM_LANGUAGE             109
97 #define SYSTEM_TIME                 110
98 #define SYSTEM_DATE                 111
99 #define SYSTEM_CPU_TEMPERATURE      112
100 #define SYSTEM_GPU_TEMPERATURE      113
101 #define SYSTEM_FAN_SPEED            114
102 #define SYSTEM_FREE_SPACE_C         115
103 // #define SYSTEM_FREE_SPACE_D         116 //116 is reserved for space on D
104 #define SYSTEM_FREE_SPACE_E         117
105 #define SYSTEM_FREE_SPACE_F         118
106 #define SYSTEM_FREE_SPACE_G         119
107 #define SYSTEM_BUILD_VERSION        120
108 #define SYSTEM_BUILD_DATE           121
109 #define SYSTEM_ETHERNET_LINK_ACTIVE 122
110 #define SYSTEM_FPS                  123
111 #define SYSTEM_ALWAYS_TRUE          125   // useful for <visible fade="10" start="hidden">true</visible>, to fade in a control
112 #define SYSTEM_ALWAYS_FALSE         126   // used for <visible fade="10">false</visible>, to fade out a control (ie not particularly useful!)
113 #define SYSTEM_MEDIA_DVD            127
114 #define SYSTEM_DVDREADY             128
115 #define SYSTEM_HAS_ALARM            129
116 #define SYSTEM_SUPPORTS_CPU_USAGE   130
117 #define SYSTEM_SCREEN_MODE          132
118 #define SYSTEM_SCREEN_WIDTH         133
119 #define SYSTEM_SCREEN_HEIGHT        134
120 #define SYSTEM_CURRENT_WINDOW       135
121 #define SYSTEM_CURRENT_CONTROL      136
122 #define SYSTEM_CURRENT_CONTROL_ID   137
123 #define SYSTEM_DVD_LABEL            138
124 #define SYSTEM_HASLOCKS             140
125 #define SYSTEM_ISMASTER             141
126 #define SYSTEM_TRAYOPEN             142
127 #define SYSTEM_SHOW_EXIT_BUTTON     143
128 #define SYSTEM_ALARM_POS            144
129 #define SYSTEM_LOGGEDON             145
130 #define SYSTEM_PROFILENAME          146
131 #define SYSTEM_PROFILETHUMB         147
132 #define SYSTEM_HAS_LOGINSCREEN      148
133 #define SYSTEM_HAS_ACTIVE_MODAL_DIALOG  149
134 #define SYSTEM_HDD_SMART            150
135 #define SYSTEM_HDD_TEMPERATURE      151
136 #define SYSTEM_HDD_MODEL            152
137 #define SYSTEM_HDD_SERIAL           153
138 #define SYSTEM_HDD_FIRMWARE         154
139 #define SYSTEM_HAS_VISIBLE_MODAL_DIALOG  155
140 #define SYSTEM_HDD_PASSWORD         156
141 #define SYSTEM_HDD_LOCKSTATE        157
142 #define SYSTEM_HDD_LOCKKEY          158
143 #define SYSTEM_INTERNET_STATE       159
144 #define SYSTEM_HAS_INPUT_HIDDEN     160
145 #define SYSTEM_HAS_PVR_ADDON        161
146 #define SYSTEM_ALARM_LESS_OR_EQUAL  180
147 #define SYSTEM_PROFILECOUNT         181
148 #define SYSTEM_ISFULLSCREEN         182
149 #define SYSTEM_ISSTANDALONE         183
150 #define SYSTEM_ISINHIBIT            184
151 #define SYSTEM_HAS_SHUTDOWN         185
152 #define SYSTEM_HAS_PVR              186
153 #define SYSTEM_STARTUP_WINDOW       187
154 #define SYSTEM_STEREOSCOPIC_MODE    188
155 #define SYSTEM_BUILD_VERSION_SHORT  189
156 
157 #define NETWORK_IP_ADDRESS          190
158 #define NETWORK_MAC_ADDRESS         191
159 #define NETWORK_IS_DHCP             192
160 #define NETWORK_LINK_STATE          193
161 #define NETWORK_SUBNET_MASK         194
162 #define NETWORK_GATEWAY_ADDRESS     195
163 #define NETWORK_DNS1_ADDRESS        196
164 #define NETWORK_DNS2_ADDRESS        197
165 #define NETWORK_DHCP_ADDRESS        198
166 
167 // Keep musicplayer infolabels that work with offset and position together
168 #define MUSICPLAYER_TITLE           200
169 #define MUSICPLAYER_ALBUM           201
170 #define MUSICPLAYER_ARTIST          202
171 #define MUSICPLAYER_GENRE           203
172 #define MUSICPLAYER_YEAR            204
173 #define MUSICPLAYER_DURATION        205
174 #define MUSICPLAYER_TRACK_NUMBER    208
175 #define MUSICPLAYER_COVER           210
176 #define MUSICPLAYER_BITRATE         211
177 #define MUSICPLAYER_PLAYLISTLEN     212
178 #define MUSICPLAYER_PLAYLISTPOS     213
179 #define MUSICPLAYER_CHANNELS        214
180 #define MUSICPLAYER_BITSPERSAMPLE   215
181 #define MUSICPLAYER_SAMPLERATE      216
182 #define MUSICPLAYER_CODEC           217
183 #define MUSICPLAYER_DISC_NUMBER     218
184 #define MUSICPLAYER_RATING          219
185 #define MUSICPLAYER_COMMENT         220
186 #define MUSICPLAYER_LYRICS          221
187 #define MUSICPLAYER_ALBUM_ARTIST    222
188 #define MUSICPLAYER_PLAYCOUNT       223
189 #define MUSICPLAYER_LASTPLAYED      224
190 #define MUSICPLAYER_USER_RATING     225
191 #define MUSICPLAYER_RATING_AND_VOTES     226
192 #define MUSICPLAYER_VOTES           227
193 #define MUSICPLAYER_MOOD            228
194 #define MUSICPLAYER_CONTRIBUTORS    229
195 #define MUSICPLAYER_CONTRIBUTOR_AND_ROLE 230
196 #define MUSICPLAYER_DBID            231
197 #define MUSICPLAYER_DISC_TITLE      232
198 #define MUSICPLAYER_RELEASEDATE     233
199 #define MUSICPLAYER_ORIGINALDATE    234
200 #define MUSICPLAYER_BPM             235
201 
202 // Range of musicplayer infolabels that work with offset and position
203 #define MUSICPLAYER_OFFSET_POSITION_FIRST MUSICPLAYER_TITLE
204 #define MUSICPLAYER_OFFSET_POSITION_LAST MUSICPLAYER_BPM
205 
206 #define MUSICPLAYER_PROPERTY        236
207 #define MUSICPLAYER_CHANNEL_NAME    237
208 #define MUSICPLAYER_CHANNEL_GROUP   238
209 #define MUSICPLAYER_CHANNEL_NUMBER  239
210 #define MUSICPLAYER_TOTALDISCS      240
211 #define MUSICPLAYER_STATIONNAME     241
212 
213 // Musicplayer infobools
214 #define MUSICPLAYER_HASPREVIOUS     242
215 #define MUSICPLAYER_HASNEXT         243
216 #define MUSICPLAYER_EXISTS          244
217 #define MUSICPLAYER_PLAYLISTPLAYING 245
218 #define MUSICPLAYER_CONTENT         246
219 #define MUSICPLAYER_ISMULTIDISC     247
220 
221 // Keep videoplayer infolabels that work with offset and position together
222 #define VIDEOPLAYER_TITLE             250
223 #define VIDEOPLAYER_GENRE             251
224 #define VIDEOPLAYER_DIRECTOR          252
225 #define VIDEOPLAYER_YEAR              253
226 #define VIDEOPLAYER_COVER             254
227 #define VIDEOPLAYER_ORIGINALTITLE     255
228 #define VIDEOPLAYER_PLOT              256
229 #define VIDEOPLAYER_PLOT_OUTLINE      257
230 #define VIDEOPLAYER_EPISODE           258
231 #define VIDEOPLAYER_SEASON            259
232 #define VIDEOPLAYER_RATING            260
233 #define VIDEOPLAYER_TVSHOW            261
234 #define VIDEOPLAYER_PREMIERED         262
235 #define VIDEOPLAYER_STUDIO            263
236 #define VIDEOPLAYER_MPAA              264
237 #define VIDEOPLAYER_ARTIST            265
238 #define VIDEOPLAYER_ALBUM             266
239 #define VIDEOPLAYER_WRITER            267
240 #define VIDEOPLAYER_TAGLINE           268
241 #define VIDEOPLAYER_TOP250            269
242 #define VIDEOPLAYER_RATING_AND_VOTES  270
243 #define VIDEOPLAYER_TRAILER           271
244 #define VIDEOPLAYER_COUNTRY           272
245 #define VIDEOPLAYER_PLAYCOUNT         273
246 #define VIDEOPLAYER_LASTPLAYED        274
247 #define VIDEOPLAYER_VOTES             275
248 #define VIDEOPLAYER_IMDBNUMBER        276
249 #define VIDEOPLAYER_USER_RATING       277
250 #define VIDEOPLAYER_DBID              278
251 #define VIDEOPLAYER_TVSHOWDBID        279
252 
253 // Range of videoplayer infolabels that work with offset and position
254 #define VIDEOPLAYER_OFFSET_POSITION_FIRST VIDEOPLAYER_TITLE
255 #define VIDEOPLAYER_OFFSET_POSITION_LAST VIDEOPLAYER_TVSHOWDBID
256 
257 #define VIDEOPLAYER_AUDIO_BITRATE     281
258 #define VIDEOPLAYER_VIDEO_BITRATE     282
259 #define VIDEOPLAYER_VIDEO_CODEC       283
260 #define VIDEOPLAYER_VIDEO_RESOLUTION  284
261 #define VIDEOPLAYER_AUDIO_CODEC       285
262 #define VIDEOPLAYER_AUDIO_CHANNELS    286
263 #define VIDEOPLAYER_VIDEO_ASPECT      287
264 #define VIDEOPLAYER_SUBTITLES_LANG    288
265 #define VIDEOPLAYER_AUDIO_LANG        290
266 #define VIDEOPLAYER_STEREOSCOPIC_MODE 291
267 #define VIDEOPLAYER_CAST              292
268 #define VIDEOPLAYER_CAST_AND_ROLE     293
269 #define VIDEOPLAYER_UNIQUEID          294
270 
271 // Videoplayer infobools
272 #define VIDEOPLAYER_HASSUBTITLES      300
273 #define VIDEOPLAYER_SUBTITLESENABLED  301
274 #define VIDEOPLAYER_USING_OVERLAYS    302
275 #define VIDEOPLAYER_ISFULLSCREEN      303
276 #define VIDEOPLAYER_HASMENU           304
277 #define VIDEOPLAYER_PLAYLISTLEN       305
278 #define VIDEOPLAYER_PLAYLISTPOS       306
279 #define VIDEOPLAYER_CONTENT           307
280 #define VIDEOPLAYER_HAS_INFO          308
281 #define VIDEOPLAYER_HASTELETEXT       309
282 #define VIDEOPLAYER_IS_STEREOSCOPIC   310
283 
284 // PVR infolabels
285 #define VIDEOPLAYER_EVENT             313
286 #define VIDEOPLAYER_EPISODENAME       314
287 #define VIDEOPLAYER_STARTTIME         315
288 #define VIDEOPLAYER_ENDTIME           316
289 #define VIDEOPLAYER_NEXT_TITLE        317
290 #define VIDEOPLAYER_NEXT_GENRE        318
291 #define VIDEOPLAYER_NEXT_PLOT         319
292 #define VIDEOPLAYER_NEXT_PLOT_OUTLINE 320
293 #define VIDEOPLAYER_NEXT_STARTTIME    321
294 #define VIDEOPLAYER_NEXT_ENDTIME      322
295 #define VIDEOPLAYER_NEXT_DURATION     323
296 #define VIDEOPLAYER_CHANNEL_NAME      324
297 #define VIDEOPLAYER_CHANNEL_GROUP     325
298 #define VIDEOPLAYER_PARENTAL_RATING   326
299 #define VIDEOPLAYER_CHANNEL_NUMBER    327
300 
301 // PVR infobools
302 #define VIDEOPLAYER_HAS_EPG           328
303 #define VIDEOPLAYER_CAN_RESUME_LIVE_TV 329
304 
305 #define RETROPLAYER_VIDEO_FILTER      330
306 #define RETROPLAYER_STRETCH_MODE      331
307 #define RETROPLAYER_VIDEO_ROTATION    332
308 
309 #define CONTAINER_HAS_PARENT_ITEM    341
310 #define CONTAINER_CAN_FILTER         342
311 #define CONTAINER_CAN_FILTERADVANCED 343
312 #define CONTAINER_FILTERED           344
313 
314 #define CONTAINER_SCROLL_PREVIOUS   345
315 #define CONTAINER_MOVE_PREVIOUS     346
316 // unused 347
317 #define CONTAINER_MOVE_NEXT         348
318 #define CONTAINER_SCROLL_NEXT       349
319 #define CONTAINER_ISUPDATING        350
320 #define CONTAINER_HASFILES          351
321 #define CONTAINER_HASFOLDERS        352
322 #define CONTAINER_STACKED           353
323 #define CONTAINER_FOLDERNAME        354
324 #define CONTAINER_SCROLLING         355
325 #define CONTAINER_PLUGINNAME        356
326 #define CONTAINER_PROPERTY          357
327 #define CONTAINER_SORT_DIRECTION    358
328 #define CONTAINER_NUM_ITEMS         359
329 #define CONTAINER_FOLDERPATH        360
330 #define CONTAINER_CONTENT           361
331 #define CONTAINER_HAS_THUMB         362
332 #define CONTAINER_SORT_METHOD       363
333 #define CONTAINER_CURRENT_ITEM      364
334 #define CONTAINER_ART               365
335 #define CONTAINER_HAS_FOCUS         366
336 #define CONTAINER_ROW               367
337 #define CONTAINER_COLUMN            368
338 #define CONTAINER_POSITION          369
339 #define CONTAINER_VIEWMODE          370
340 #define CONTAINER_HAS_NEXT          371
341 #define CONTAINER_HAS_PREVIOUS      372
342 #define CONTAINER_SUBITEM           373
343 #define CONTAINER_NUM_PAGES         374
344 #define CONTAINER_CURRENT_PAGE      375
345 #define CONTAINER_SHOWPLOT          376
346 #define CONTAINER_TOTALTIME         377
347 #define CONTAINER_SORT_ORDER        378
348 #define CONTAINER_TOTALWATCHED      379
349 #define CONTAINER_TOTALUNWATCHED    380
350 #define CONTAINER_VIEWCOUNT         381
351 #define CONTAINER_SHOWTITLE         382
352 #define CONTAINER_PLUGINCATEGORY    383
353 #define CONTAINER_NUM_ALL_ITEMS     384
354 #define CONTAINER_NUM_NONFOLDER_ITEMS 385
355 
356 #define MUSICPM_ENABLED             390
357 #define MUSICPM_SONGSPLAYED         391
358 #define MUSICPM_MATCHINGSONGS       392
359 #define MUSICPM_MATCHINGSONGSPICKED 393
360 #define MUSICPM_MATCHINGSONGSLEFT   394
361 #define MUSICPM_RELAXEDSONGSPICKED  395
362 #define MUSICPM_RANDOMSONGSPICKED   396
363 
364 #define PLAYLIST_LENGTH             400
365 #define PLAYLIST_POSITION           401
366 #define PLAYLIST_RANDOM             402
367 #define PLAYLIST_REPEAT             403
368 #define PLAYLIST_ISRANDOM           404
369 #define PLAYLIST_ISREPEAT           405
370 #define PLAYLIST_ISREPEATONE        406
371 
372 #define VISUALISATION_LOCKED        410
373 #define VISUALISATION_PRESET        411
374 #define VISUALISATION_NAME          412
375 #define VISUALISATION_ENABLED       413
376 #define VISUALISATION_HAS_PRESETS   414
377 
378 #define STRING_IS_EMPTY             420
379 #define STRING_IS_EQUAL             421
380 #define STRING_STARTS_WITH          422
381 #define STRING_ENDS_WITH            423
382 #define STRING_CONTAINS             424
383 
384 #define INTEGER_IS_EQUAL            450
385 #define INTEGER_GREATER_THAN        451
386 #define INTEGER_GREATER_OR_EQUAL    452
387 #define INTEGER_LESS_THAN           453
388 #define INTEGER_LESS_OR_EQUAL       454
389 #define INTEGER_EVEN                455
390 #define INTEGER_ODD                 456
391 
392 #define SKIN_BOOL                   600
393 #define SKIN_STRING                 601
394 #define SKIN_STRING_IS_EQUAL        602
395 #define SKIN_THEME                  604
396 #define SKIN_COLOUR_THEME           605
397 #define SKIN_HAS_THEME              606
398 #define SKIN_ASPECT_RATIO           607
399 #define SKIN_FONT                   608
400 
401 #define SYSTEM_ADDON_UPDATE_COUNT   642
402 #define SYSTEM_PRIVACY_POLICY       643
403 #define SYSTEM_TOTAL_MEMORY         644
404 #define SYSTEM_CPU_USAGE            645
405 #define SYSTEM_USED_MEMORY_PERCENT  646
406 #define SYSTEM_USED_MEMORY          647
407 #define SYSTEM_FREE_MEMORY          648
408 #define SYSTEM_FREE_MEMORY_PERCENT  649
409 #define SYSTEM_UPTIME               654
410 #define SYSTEM_TOTALUPTIME          655
411 #define SYSTEM_CPUFREQUENCY         656
412 #define SYSTEM_SCREEN_RESOLUTION    659
413 #define SYSTEM_VIDEO_ENCODER_INFO   660
414 #define SYSTEM_OS_VERSION_INFO      667
415 #define SYSTEM_FREE_SPACE           679
416 #define SYSTEM_USED_SPACE           680
417 #define SYSTEM_TOTAL_SPACE          681
418 #define SYSTEM_USED_SPACE_PERCENT   682
419 #define SYSTEM_FREE_SPACE_PERCENT   683
420 #define SYSTEM_ADDON_IS_ENABLED     703
421 #define SYSTEM_GET_BOOL             704
422 #define SYSTEM_GET_CORE_USAGE       705
423 #define SYSTEM_HAS_CORE_ID          706
424 #define SYSTEM_RENDER_VENDOR        707
425 #define SYSTEM_RENDER_RENDERER      708
426 #define SYSTEM_RENDER_VERSION       709
427 #define SYSTEM_SETTING              710
428 #define SYSTEM_HAS_ADDON            711
429 #define SYSTEM_ADDON_TITLE          712
430 #define SYSTEM_ADDON_ICON           713
431 #define SYSTEM_BATTERY_LEVEL        714
432 #define SYSTEM_IDLE_TIME            715
433 #define SYSTEM_FRIENDLY_NAME        716
434 #define SYSTEM_SCREENSAVER_ACTIVE   717
435 #define SYSTEM_ADDON_VERSION        718
436 #define SYSTEM_DPMS_ACTIVE          719
437 
438 #define LIBRARY_HAS_MUSIC           720
439 #define LIBRARY_HAS_VIDEO           721
440 #define LIBRARY_HAS_MOVIES          722
441 #define LIBRARY_HAS_MOVIE_SETS      723
442 #define LIBRARY_HAS_TVSHOWS         724
443 #define LIBRARY_HAS_MUSICVIDEOS     725
444 #define LIBRARY_HAS_SINGLES         726
445 #define LIBRARY_HAS_COMPILATIONS    727
446 #define LIBRARY_IS_SCANNING         728
447 #define LIBRARY_IS_SCANNING_VIDEO   729
448 #define LIBRARY_IS_SCANNING_MUSIC   730
449 #define LIBRARY_HAS_ROLE            735
450 #define LIBRARY_HAS_BOXSETS         736
451 #define LIBRARY_HAS_NODE            737
452 
453 #define SYSTEM_PLATFORM_LINUX       741
454 #define SYSTEM_PLATFORM_WINDOWS     742
455 #define SYSTEM_PLATFORM_DARWIN      743
456 #define SYSTEM_PLATFORM_DARWIN_OSX  744
457 #define SYSTEM_PLATFORM_DARWIN_IOS  745
458 #define SYSTEM_PLATFORM_UWP         746
459 #define SYSTEM_PLATFORM_ANDROID     747
460 #define SYSTEM_PLATFORM_WINDOWING   748
461 #define SYSTEM_PLATFORM_WIN10       749
462 
463 #define SYSTEM_CAN_POWERDOWN        750
464 #define SYSTEM_CAN_SUSPEND          751
465 #define SYSTEM_CAN_HIBERNATE        752
466 #define SYSTEM_CAN_REBOOT           753
467 #define SYSTEM_MEDIA_AUDIO_CD       754
468 
469 #define SYSTEM_PLATFORM_DARWIN_TVOS 755
470 
471 #define SLIDESHOW_ISPAUSED          800
472 #define SLIDESHOW_ISRANDOM          801
473 #define SLIDESHOW_ISACTIVE          802
474 #define SLIDESHOW_ISVIDEO           803
475 
476 #define SLIDESHOW_LABELS_START          900
477 #define SLIDESHOW_FILE_NAME             (SLIDESHOW_LABELS_START)
478 #define SLIDESHOW_FILE_PATH             (SLIDESHOW_LABELS_START + 1)
479 #define SLIDESHOW_FILE_SIZE             (SLIDESHOW_LABELS_START + 2)
480 #define SLIDESHOW_FILE_DATE             (SLIDESHOW_LABELS_START + 3)
481 #define SLIDESHOW_INDEX                 (SLIDESHOW_LABELS_START + 4)
482 #define SLIDESHOW_RESOLUTION            (SLIDESHOW_LABELS_START + 5)
483 #define SLIDESHOW_COMMENT               (SLIDESHOW_LABELS_START + 6)
484 #define SLIDESHOW_COLOUR                (SLIDESHOW_LABELS_START + 7)
485 #define SLIDESHOW_PROCESS               (SLIDESHOW_LABELS_START + 8)
486 
487 #define SLIDESHOW_EXIF_LONG_DATE        (SLIDESHOW_LABELS_START + 17)
488 #define SLIDESHOW_EXIF_LONG_DATE_TIME   (SLIDESHOW_LABELS_START + 18)
489 #define SLIDESHOW_EXIF_DATE             (SLIDESHOW_LABELS_START + 19) /* Implementation only to just get localized date */
490 #define SLIDESHOW_EXIF_DATE_TIME        (SLIDESHOW_LABELS_START + 20)
491 #define SLIDESHOW_EXIF_DESCRIPTION      (SLIDESHOW_LABELS_START + 21)
492 #define SLIDESHOW_EXIF_CAMERA_MAKE      (SLIDESHOW_LABELS_START + 22)
493 #define SLIDESHOW_EXIF_CAMERA_MODEL     (SLIDESHOW_LABELS_START + 23)
494 #define SLIDESHOW_EXIF_COMMENT          (SLIDESHOW_LABELS_START + 24)
495 #define SLIDESHOW_EXIF_SOFTWARE         (SLIDESHOW_LABELS_START + 25)
496 #define SLIDESHOW_EXIF_APERTURE         (SLIDESHOW_LABELS_START + 26)
497 #define SLIDESHOW_EXIF_FOCAL_LENGTH     (SLIDESHOW_LABELS_START + 27)
498 #define SLIDESHOW_EXIF_FOCUS_DIST       (SLIDESHOW_LABELS_START + 28)
499 #define SLIDESHOW_EXIF_EXPOSURE         (SLIDESHOW_LABELS_START + 29)
500 #define SLIDESHOW_EXIF_EXPOSURE_TIME    (SLIDESHOW_LABELS_START + 30)
501 #define SLIDESHOW_EXIF_EXPOSURE_BIAS    (SLIDESHOW_LABELS_START + 31)
502 #define SLIDESHOW_EXIF_EXPOSURE_MODE    (SLIDESHOW_LABELS_START + 32)
503 #define SLIDESHOW_EXIF_FLASH_USED       (SLIDESHOW_LABELS_START + 33)
504 #define SLIDESHOW_EXIF_WHITE_BALANCE    (SLIDESHOW_LABELS_START + 34)
505 #define SLIDESHOW_EXIF_LIGHT_SOURCE     (SLIDESHOW_LABELS_START + 35)
506 #define SLIDESHOW_EXIF_METERING_MODE    (SLIDESHOW_LABELS_START + 36)
507 #define SLIDESHOW_EXIF_ISO_EQUIV        (SLIDESHOW_LABELS_START + 37)
508 #define SLIDESHOW_EXIF_DIGITAL_ZOOM     (SLIDESHOW_LABELS_START + 38)
509 #define SLIDESHOW_EXIF_CCD_WIDTH        (SLIDESHOW_LABELS_START + 39)
510 #define SLIDESHOW_EXIF_GPS_LATITUDE     (SLIDESHOW_LABELS_START + 40)
511 #define SLIDESHOW_EXIF_GPS_LONGITUDE    (SLIDESHOW_LABELS_START + 41)
512 #define SLIDESHOW_EXIF_GPS_ALTITUDE     (SLIDESHOW_LABELS_START + 42)
513 #define SLIDESHOW_EXIF_ORIENTATION      (SLIDESHOW_LABELS_START + 43)
514 #define SLIDESHOW_EXIF_XPCOMMENT        (SLIDESHOW_LABELS_START + 44)
515 
516 #define SLIDESHOW_IPTC_SUBLOCATION      (SLIDESHOW_LABELS_START + 57)
517 #define SLIDESHOW_IPTC_IMAGETYPE        (SLIDESHOW_LABELS_START + 58)
518 #define SLIDESHOW_IPTC_TIMECREATED      (SLIDESHOW_LABELS_START + 59)
519 #define SLIDESHOW_IPTC_SUP_CATEGORIES   (SLIDESHOW_LABELS_START + 60)
520 #define SLIDESHOW_IPTC_KEYWORDS         (SLIDESHOW_LABELS_START + 61)
521 #define SLIDESHOW_IPTC_CAPTION          (SLIDESHOW_LABELS_START + 62)
522 #define SLIDESHOW_IPTC_AUTHOR           (SLIDESHOW_LABELS_START + 63)
523 #define SLIDESHOW_IPTC_HEADLINE         (SLIDESHOW_LABELS_START + 64)
524 #define SLIDESHOW_IPTC_SPEC_INSTR       (SLIDESHOW_LABELS_START + 65)
525 #define SLIDESHOW_IPTC_CATEGORY         (SLIDESHOW_LABELS_START + 66)
526 #define SLIDESHOW_IPTC_BYLINE           (SLIDESHOW_LABELS_START + 67)
527 #define SLIDESHOW_IPTC_BYLINE_TITLE     (SLIDESHOW_LABELS_START + 68)
528 #define SLIDESHOW_IPTC_CREDIT           (SLIDESHOW_LABELS_START + 69)
529 #define SLIDESHOW_IPTC_SOURCE           (SLIDESHOW_LABELS_START + 70)
530 #define SLIDESHOW_IPTC_COPYRIGHT_NOTICE (SLIDESHOW_LABELS_START + 71)
531 #define SLIDESHOW_IPTC_OBJECT_NAME      (SLIDESHOW_LABELS_START + 72)
532 #define SLIDESHOW_IPTC_CITY             (SLIDESHOW_LABELS_START + 73)
533 #define SLIDESHOW_IPTC_STATE            (SLIDESHOW_LABELS_START + 74)
534 #define SLIDESHOW_IPTC_COUNTRY          (SLIDESHOW_LABELS_START + 75)
535 #define SLIDESHOW_IPTC_TX_REFERENCE     (SLIDESHOW_LABELS_START + 76)
536 #define SLIDESHOW_IPTC_DATE             (SLIDESHOW_LABELS_START + 77)
537 #define SLIDESHOW_IPTC_URGENCY          (SLIDESHOW_LABELS_START + 78)
538 #define SLIDESHOW_IPTC_COUNTRY_CODE     (SLIDESHOW_LABELS_START + 79)
539 #define SLIDESHOW_IPTC_REF_SERVICE      (SLIDESHOW_LABELS_START + 80)
540 #define SLIDESHOW_LABELS_END            SLIDESHOW_IPTC_REF_SERVICE
541 
542 #define FANART_COLOR1               1000
543 #define FANART_COLOR2               1001
544 #define FANART_COLOR3               1002
545 #define FANART_IMAGE                1003
546 
547 #define SYSTEM_PROFILEAUTOLOGIN     1004
548 
549 #define SYSTEM_HAS_CMS              1006
550 #define SYSTEM_BUILD_VERSION_CODE 1007
551 #define SYSTEM_BUILD_VERSION_GIT 1008
552 
553 #define PVR_CONDITIONS_START        1100
554 #define PVR_IS_RECORDING            (PVR_CONDITIONS_START)
555 #define PVR_HAS_TIMER               (PVR_CONDITIONS_START + 1)
556 #define PVR_HAS_NONRECORDING_TIMER  (PVR_CONDITIONS_START + 2)
557 #define PVR_IS_PLAYING_TV           (PVR_CONDITIONS_START + 3)
558 #define PVR_IS_PLAYING_RADIO        (PVR_CONDITIONS_START + 4)
559 #define PVR_IS_PLAYING_RECORDING    (PVR_CONDITIONS_START + 5)
560 #define PVR_ACTUAL_STREAM_ENCRYPTED (PVR_CONDITIONS_START + 6)
561 #define PVR_HAS_TV_CHANNELS         (PVR_CONDITIONS_START + 7)
562 #define PVR_HAS_RADIO_CHANNELS      (PVR_CONDITIONS_START + 8)
563 #define PVR_IS_TIMESHIFTING         (PVR_CONDITIONS_START + 9)
564 #define PVR_IS_RECORDING_TV               (PVR_CONDITIONS_START + 10)
565 #define PVR_HAS_TV_TIMER                  (PVR_CONDITIONS_START + 11)
566 #define PVR_HAS_NONRECORDING_TV_TIMER     (PVR_CONDITIONS_START + 12)
567 #define PVR_IS_RECORDING_RADIO            (PVR_CONDITIONS_START + 13)
568 #define PVR_HAS_RADIO_TIMER               (PVR_CONDITIONS_START + 14)
569 #define PVR_HAS_NONRECORDING_RADIO_TIMER  (PVR_CONDITIONS_START + 15)
570 #define PVR_IS_PLAYING_EPGTAG       (PVR_CONDITIONS_START + 16)
571 #define PVR_CAN_RECORD_PLAYING_CHANNEL    (PVR_CONDITIONS_START + 17)
572 #define PVR_IS_RECORDING_PLAYING_CHANNEL  (PVR_CONDITIONS_START + 18)
573 #define PVR_IS_PLAYING_ACTIVE_RECORDING   (PVR_CONDITIONS_START + 19)
574 #define PVR_CONDITIONS_END          PVR_IS_PLAYING_ACTIVE_RECORDING
575 
576 #define PVR_STRINGS_START           1200
577 #define PVR_NEXT_RECORDING_CHANNEL  (PVR_STRINGS_START)
578 #define PVR_NEXT_RECORDING_CHAN_ICO (PVR_STRINGS_START + 1)
579 #define PVR_NEXT_RECORDING_DATETIME (PVR_STRINGS_START + 2)
580 #define PVR_NEXT_RECORDING_TITLE    (PVR_STRINGS_START + 3)
581 #define PVR_NOW_RECORDING_CHANNEL   (PVR_STRINGS_START + 4)
582 #define PVR_NOW_RECORDING_CHAN_ICO  (PVR_STRINGS_START + 5)
583 #define PVR_NOW_RECORDING_DATETIME  (PVR_STRINGS_START + 6)
584 #define PVR_NOW_RECORDING_TITLE     (PVR_STRINGS_START + 7)
585 #define PVR_BACKEND_NAME            (PVR_STRINGS_START + 8)
586 #define PVR_BACKEND_VERSION         (PVR_STRINGS_START + 9)
587 #define PVR_BACKEND_HOST            (PVR_STRINGS_START + 10)
588 #define PVR_BACKEND_DISKSPACE       (PVR_STRINGS_START + 11)
589 #define PVR_BACKEND_CHANNELS        (PVR_STRINGS_START + 12)
590 #define PVR_BACKEND_TIMERS          (PVR_STRINGS_START + 13)
591 #define PVR_BACKEND_RECORDINGS      (PVR_STRINGS_START + 14)
592 #define PVR_BACKEND_DELETED_RECORDINGS (PVR_STRINGS_START + 15)
593 #define PVR_BACKEND_NUMBER          (PVR_STRINGS_START + 16)
594 #define PVR_TOTAL_DISKSPACE         (PVR_STRINGS_START + 17)
595 #define PVR_NEXT_TIMER              (PVR_STRINGS_START + 18)
596 #define PVR_EPG_EVENT_DURATION      (PVR_STRINGS_START + 19)
597 #define PVR_EPG_EVENT_ELAPSED_TIME  (PVR_STRINGS_START + 20)
598 #define PVR_EPG_EVENT_PROGRESS      (PVR_STRINGS_START + 21)
599 #define PVR_ACTUAL_STREAM_CLIENT    (PVR_STRINGS_START + 22)
600 #define PVR_ACTUAL_STREAM_DEVICE    (PVR_STRINGS_START + 23)
601 #define PVR_ACTUAL_STREAM_STATUS    (PVR_STRINGS_START + 24)
602 #define PVR_ACTUAL_STREAM_SIG       (PVR_STRINGS_START + 25)
603 #define PVR_ACTUAL_STREAM_SNR       (PVR_STRINGS_START + 26)
604 #define PVR_ACTUAL_STREAM_SIG_PROGR (PVR_STRINGS_START + 27)
605 #define PVR_ACTUAL_STREAM_SNR_PROGR (PVR_STRINGS_START + 28)
606 #define PVR_ACTUAL_STREAM_BER       (PVR_STRINGS_START + 29)
607 #define PVR_ACTUAL_STREAM_UNC       (PVR_STRINGS_START + 30)
608 #define PVR_ACTUAL_STREAM_CRYPTION  (PVR_STRINGS_START + 34)
609 #define PVR_ACTUAL_STREAM_SERVICE   (PVR_STRINGS_START + 35)
610 #define PVR_ACTUAL_STREAM_MUX       (PVR_STRINGS_START + 36)
611 #define PVR_ACTUAL_STREAM_PROVIDER  (PVR_STRINGS_START + 37)
612 #define PVR_BACKEND_DISKSPACE_PROGR (PVR_STRINGS_START + 38)
613 #define PVR_TIMESHIFT_START_TIME    (PVR_STRINGS_START + 39)
614 #define PVR_TIMESHIFT_END_TIME      (PVR_STRINGS_START + 40)
615 #define PVR_TIMESHIFT_PLAY_TIME     (PVR_STRINGS_START + 41)
616 #define PVR_TIMESHIFT_PROGRESS      (PVR_STRINGS_START + 42)
617 #define PVR_TV_NOW_RECORDING_TITLE     (PVR_STRINGS_START + 43)
618 #define PVR_TV_NOW_RECORDING_CHANNEL   (PVR_STRINGS_START + 44)
619 #define PVR_TV_NOW_RECORDING_CHAN_ICO  (PVR_STRINGS_START + 45)
620 #define PVR_TV_NOW_RECORDING_DATETIME  (PVR_STRINGS_START + 46)
621 #define PVR_TV_NEXT_RECORDING_TITLE    (PVR_STRINGS_START + 47)
622 #define PVR_TV_NEXT_RECORDING_CHANNEL  (PVR_STRINGS_START + 48)
623 #define PVR_TV_NEXT_RECORDING_CHAN_ICO (PVR_STRINGS_START + 49)
624 #define PVR_TV_NEXT_RECORDING_DATETIME (PVR_STRINGS_START + 50)
625 #define PVR_RADIO_NOW_RECORDING_TITLE     (PVR_STRINGS_START + 51)
626 #define PVR_RADIO_NOW_RECORDING_CHANNEL   (PVR_STRINGS_START + 52)
627 #define PVR_RADIO_NOW_RECORDING_CHAN_ICO  (PVR_STRINGS_START + 53)
628 #define PVR_RADIO_NOW_RECORDING_DATETIME  (PVR_STRINGS_START + 54)
629 #define PVR_RADIO_NEXT_RECORDING_TITLE    (PVR_STRINGS_START + 55)
630 #define PVR_RADIO_NEXT_RECORDING_CHANNEL  (PVR_STRINGS_START + 56)
631 #define PVR_RADIO_NEXT_RECORDING_CHAN_ICO (PVR_STRINGS_START + 57)
632 #define PVR_RADIO_NEXT_RECORDING_DATETIME (PVR_STRINGS_START + 58)
633 #define PVR_CHANNEL_NUMBER_INPUT          (PVR_STRINGS_START + 59)
634 #define PVR_EPG_EVENT_REMAINING_TIME      (PVR_STRINGS_START + 60)
635 #define PVR_EPG_EVENT_FINISH_TIME         (PVR_STRINGS_START + 61)
636 #define PVR_TIMESHIFT_OFFSET              (PVR_STRINGS_START + 62)
637 #define PVR_EPG_EVENT_SEEK_TIME           (PVR_STRINGS_START + 63)
638 #define PVR_TIMESHIFT_PROGRESS_PLAY_POS   (PVR_STRINGS_START + 64)
639 #define PVR_TIMESHIFT_PROGRESS_DURATION   (PVR_STRINGS_START + 65)
640 #define PVR_TIMESHIFT_PROGRESS_EPG_START  (PVR_STRINGS_START + 66)
641 #define PVR_TIMESHIFT_PROGRESS_EPG_END    (PVR_STRINGS_START + 67)
642 #define PVR_TIMESHIFT_PROGRESS_BUFFER_START (PVR_STRINGS_START + 68)
643 #define PVR_TIMESHIFT_PROGRESS_BUFFER_END (PVR_STRINGS_START + 69)
644 #define PVR_TIMESHIFT_PROGRESS_START_TIME (PVR_STRINGS_START + 70)
645 #define PVR_TIMESHIFT_PROGRESS_END_TIME   (PVR_STRINGS_START + 71)
646 #define PVR_EPG_EVENT_ICON                (PVR_STRINGS_START + 72)
647 #define PVR_TIMESHIFT_SEEKBAR             (PVR_STRINGS_START + 73)
648 #define PVR_STRINGS_END                   PVR_TIMESHIFT_SEEKBAR
649 
650 #define RDS_DATA_START              1400
651 #define RDS_HAS_RDS                 (RDS_DATA_START)
652 #define RDS_HAS_RADIOTEXT           (RDS_DATA_START + 1)
653 #define RDS_HAS_RADIOTEXT_PLUS      (RDS_DATA_START + 2)
654 #define RDS_GET_RADIOTEXT_LINE      (RDS_DATA_START + 3)
655 #define RDS_TITLE                   (RDS_DATA_START + 4)
656 #define RDS_BAND                    (RDS_DATA_START + 5)
657 #define RDS_ARTIST                  (RDS_DATA_START + 6)
658 #define RDS_COMPOSER                (RDS_DATA_START + 7)
659 #define RDS_CONDUCTOR               (RDS_DATA_START + 8)
660 #define RDS_ALBUM                   (RDS_DATA_START + 9)
661 #define RDS_ALBUM_TRACKNUMBER       (RDS_DATA_START + 10)
662 #define RDS_GET_RADIO_STYLE         (RDS_DATA_START + 11)
663 #define RDS_COMMENT                 (RDS_DATA_START + 12)
664 #define RDS_INFO_NEWS               (RDS_DATA_START + 13)
665 #define RDS_INFO_NEWS_LOCAL         (RDS_DATA_START + 14)
666 #define RDS_INFO_STOCK              (RDS_DATA_START + 15)
667 #define RDS_INFO_STOCK_SIZE         (RDS_DATA_START + 16)
668 #define RDS_INFO_SPORT              (RDS_DATA_START + 17)
669 #define RDS_INFO_SPORT_SIZE         (RDS_DATA_START + 18)
670 #define RDS_INFO_LOTTERY            (RDS_DATA_START + 19)
671 #define RDS_INFO_LOTTERY_SIZE       (RDS_DATA_START + 20)
672 #define RDS_INFO_WEATHER            (RDS_DATA_START + 21)
673 #define RDS_INFO_WEATHER_SIZE       (RDS_DATA_START + 22)
674 #define RDS_INFO_CINEMA             (RDS_DATA_START + 23)
675 #define RDS_INFO_CINEMA_SIZE        (RDS_DATA_START + 24)
676 #define RDS_INFO_HOROSCOPE          (RDS_DATA_START + 25)
677 #define RDS_INFO_HOROSCOPE_SIZE     (RDS_DATA_START + 26)
678 #define RDS_INFO_OTHER              (RDS_DATA_START + 27)
679 #define RDS_INFO_OTHER_SIZE         (RDS_DATA_START + 28)
680 #define RDS_PROG_STATION            (RDS_DATA_START + 29)
681 #define RDS_PROG_NOW                (RDS_DATA_START + 30)
682 #define RDS_PROG_NEXT               (RDS_DATA_START + 31)
683 #define RDS_PROG_HOST               (RDS_DATA_START + 32)
684 #define RDS_PROG_EDIT_STAFF         (RDS_DATA_START + 33)
685 #define RDS_PROG_HOMEPAGE           (RDS_DATA_START + 34)
686 #define RDS_PROG_STYLE              (RDS_DATA_START + 35)
687 #define RDS_PHONE_HOTLINE           (RDS_DATA_START + 36)
688 #define RDS_PHONE_STUDIO            (RDS_DATA_START + 37)
689 #define RDS_SMS_STUDIO              (RDS_DATA_START + 38)
690 #define RDS_EMAIL_HOTLINE           (RDS_DATA_START + 39)
691 #define RDS_EMAIL_STUDIO            (RDS_DATA_START + 40)
692 #define RDS_HAS_HOTLINE_DATA        (RDS_DATA_START + 41)
693 #define RDS_HAS_STUDIO_DATA         (RDS_DATA_START + 42)
694 #define RDS_AUDIO_LANG              (RDS_DATA_START + 43)
695 #define RDS_CHANNEL_COUNTRY         (RDS_DATA_START + 44)
696 #define RDS_DATA_END                RDS_CHANNEL_COUNTRY
697 
698 #define PLAYER_PROCESS              1500
699 #define PLAYER_PROCESS_VIDEODECODER (PLAYER_PROCESS)
700 #define PLAYER_PROCESS_DEINTMETHOD (PLAYER_PROCESS + 1)
701 #define PLAYER_PROCESS_PIXELFORMAT (PLAYER_PROCESS + 2)
702 #define PLAYER_PROCESS_VIDEOWIDTH (PLAYER_PROCESS + 3)
703 #define PLAYER_PROCESS_VIDEOHEIGHT (PLAYER_PROCESS + 4)
704 #define PLAYER_PROCESS_VIDEOFPS (PLAYER_PROCESS + 5)
705 #define PLAYER_PROCESS_VIDEODAR (PLAYER_PROCESS + 6)
706 #define PLAYER_PROCESS_VIDEOHWDECODER (PLAYER_PROCESS + 7)
707 #define PLAYER_PROCESS_AUDIODECODER (PLAYER_PROCESS + 8)
708 #define PLAYER_PROCESS_AUDIOCHANNELS (PLAYER_PROCESS + 9)
709 #define PLAYER_PROCESS_AUDIOSAMPLERATE (PLAYER_PROCESS + 10)
710 #define PLAYER_PROCESS_AUDIOBITSPERSAMPLE (PLAYER_PROCESS + 11)
711 
712 #define WINDOW_PROPERTY             9993
713 #define WINDOW_IS_VISIBLE           9995
714 #define WINDOW_NEXT                 9996
715 #define WINDOW_PREVIOUS             9997
716 #define WINDOW_IS_MEDIA             9998
717 #define WINDOW_IS_ACTIVE            9999
718 #define WINDOW_IS                   10000
719 #define WINDOW_IS_DIALOG_TOPMOST    10001
720 #define WINDOW_IS_MODAL_DIALOG_TOPMOST 10002
721 
722 #define CONTROL_GET_LABEL           29996
723 #define CONTROL_IS_ENABLED          29997
724 #define CONTROL_IS_VISIBLE          29998
725 #define CONTROL_GROUP_HAS_FOCUS     29999
726 #define CONTROL_HAS_FOCUS           30000
727 
728 #define LISTITEM_START              35000
729 #define LISTITEM_THUMB              (LISTITEM_START)
730 #define LISTITEM_LABEL              (LISTITEM_START + 1)
731 #define LISTITEM_TITLE              (LISTITEM_START + 2)
732 #define LISTITEM_TRACKNUMBER        (LISTITEM_START + 3)
733 #define LISTITEM_ARTIST             (LISTITEM_START + 4)
734 #define LISTITEM_ALBUM              (LISTITEM_START + 5)
735 #define LISTITEM_YEAR               (LISTITEM_START + 6)
736 #define LISTITEM_GENRE              (LISTITEM_START + 7)
737 #define LISTITEM_ICON               (LISTITEM_START + 8)
738 #define LISTITEM_DIRECTOR           (LISTITEM_START + 9)
739 #define LISTITEM_OVERLAY            (LISTITEM_START + 10)
740 #define LISTITEM_LABEL2             (LISTITEM_START + 11)
741 #define LISTITEM_FILENAME           (LISTITEM_START + 12)
742 #define LISTITEM_DATE               (LISTITEM_START + 13)
743 #define LISTITEM_SIZE               (LISTITEM_START + 14)
744 #define LISTITEM_RATING             (LISTITEM_START + 15)
745 #define LISTITEM_PROGRAM_COUNT      (LISTITEM_START + 16)
746 #define LISTITEM_DURATION           (LISTITEM_START + 17)
747 #define LISTITEM_ISPLAYING          (LISTITEM_START + 18)
748 #define LISTITEM_ISSELECTED         (LISTITEM_START + 19)
749 #define LISTITEM_PLOT               (LISTITEM_START + 20)
750 #define LISTITEM_PLOT_OUTLINE       (LISTITEM_START + 21)
751 #define LISTITEM_EPISODE            (LISTITEM_START + 22)
752 #define LISTITEM_SEASON             (LISTITEM_START + 23)
753 #define LISTITEM_TVSHOW             (LISTITEM_START + 24)
754 #define LISTITEM_PREMIERED          (LISTITEM_START + 25)
755 #define LISTITEM_COMMENT            (LISTITEM_START + 26)
756 #define LISTITEM_ACTUAL_ICON        (LISTITEM_START + 27)
757 #define LISTITEM_PATH               (LISTITEM_START + 28)
758 #define LISTITEM_PICTURE_PATH       (LISTITEM_START + 29)
759 
760 #define LISTITEM_PICTURE_START      (LISTITEM_START + 30)
761 #define LISTITEM_PICTURE_RESOLUTION (LISTITEM_PICTURE_START) // => SLIDESHOW_RESOLUTION
762 #define LISTITEM_PICTURE_LONGDATE   (LISTITEM_START + 31)    // => SLIDESHOW_EXIF_LONG_DATE
763 #define LISTITEM_PICTURE_LONGDATETIME (LISTITEM_START + 32)    // => SLIDESHOW_EXIF_LONG_DATE_TIME
764 #define LISTITEM_PICTURE_DATE       (LISTITEM_START + 33)    // => SLIDESHOW_EXIF_DATE
765 #define LISTITEM_PICTURE_DATETIME   (LISTITEM_START + 34)    // => SLIDESHOW_EXIF_DATE_TIME
766 #define LISTITEM_PICTURE_COMMENT    (LISTITEM_START + 35)    // => SLIDESHOW_COMMENT
767 #define LISTITEM_PICTURE_CAPTION    (LISTITEM_START + 36)    // => SLIDESHOW_IPTC_CAPTION
768 #define LISTITEM_PICTURE_DESC       (LISTITEM_START + 37)    // => SLIDESHOW_EXIF_DESCRIPTION
769 #define LISTITEM_PICTURE_KEYWORDS   (LISTITEM_START + 38)    // => SLIDESHOW_IPTC_KEYWORDS
770 #define LISTITEM_PICTURE_CAM_MAKE   (LISTITEM_START + 39)    // => SLIDESHOW_EXIF_CAMERA_MAKE
771 #define LISTITEM_PICTURE_CAM_MODEL  (LISTITEM_START + 40)    // => SLIDESHOW_EXIF_CAMERA_MODEL
772 #define LISTITEM_PICTURE_APERTURE   (LISTITEM_START + 41)    // => SLIDESHOW_EXIF_APERTURE
773 #define LISTITEM_PICTURE_FOCAL_LEN  (LISTITEM_START + 42)    // => SLIDESHOW_EXIF_FOCAL_LENGTH
774 #define LISTITEM_PICTURE_FOCUS_DIST (LISTITEM_START + 43)    // => SLIDESHOW_EXIF_FOCUS_DIST
775 #define LISTITEM_PICTURE_EXP_MODE   (LISTITEM_START + 44)    // => SLIDESHOW_EXIF_EXPOSURE_MODE
776 #define LISTITEM_PICTURE_EXP_TIME   (LISTITEM_START + 45)    // => SLIDESHOW_EXIF_EXPOSURE_TIME
777 #define LISTITEM_PICTURE_ISO        (LISTITEM_START + 46)    // => SLIDESHOW_EXIF_ISO_EQUIV
778 #define LISTITEM_PICTURE_AUTHOR           (LISTITEM_START + 47) // => SLIDESHOW_IPTC_AUTHOR
779 #define LISTITEM_PICTURE_BYLINE           (LISTITEM_START + 48) // => SLIDESHOW_IPTC_BYLINE
780 #define LISTITEM_PICTURE_BYLINE_TITLE     (LISTITEM_START + 49) // => SLIDESHOW_IPTC_BYLINE_TITLE
781 #define LISTITEM_PICTURE_CATEGORY         (LISTITEM_START + 50) // => SLIDESHOW_IPTC_CATEGORY
782 #define LISTITEM_PICTURE_CCD_WIDTH        (LISTITEM_START + 51) // => SLIDESHOW_EXIF_CCD_WIDTH
783 #define LISTITEM_PICTURE_CITY             (LISTITEM_START + 52) // => SLIDESHOW_IPTC_CITY
784 #define LISTITEM_PICTURE_URGENCY          (LISTITEM_START + 53) // => SLIDESHOW_IPTC_URGENCY
785 #define LISTITEM_PICTURE_COPYRIGHT_NOTICE (LISTITEM_START + 54) // => SLIDESHOW_IPTC_COPYRIGHT_NOTICE
786 #define LISTITEM_PICTURE_COUNTRY          (LISTITEM_START + 55) // => SLIDESHOW_IPTC_COUNTRY
787 #define LISTITEM_PICTURE_COUNTRY_CODE     (LISTITEM_START + 56) // => SLIDESHOW_IPTC_COUNTRY_CODE
788 #define LISTITEM_PICTURE_CREDIT           (LISTITEM_START + 57) // => SLIDESHOW_IPTC_CREDIT
789 #define LISTITEM_PICTURE_IPTCDATE         (LISTITEM_START + 58) // => SLIDESHOW_IPTC_DATE
790 #define LISTITEM_PICTURE_DIGITAL_ZOOM     (LISTITEM_START + 59) // => SLIDESHOW_EXIF_DIGITAL_ZOOM
791 #define LISTITEM_PICTURE_EXPOSURE         (LISTITEM_START + 60) // => SLIDESHOW_EXIF_EXPOSURE
792 #define LISTITEM_PICTURE_EXPOSURE_BIAS    (LISTITEM_START + 61) // => SLIDESHOW_EXIF_EXPOSURE_BIAS
793 #define LISTITEM_PICTURE_FLASH_USED       (LISTITEM_START + 62) // => SLIDESHOW_EXIF_FLASH_USED
794 #define LISTITEM_PICTURE_HEADLINE         (LISTITEM_START + 63) // => SLIDESHOW_IPTC_HEADLINE
795 #define LISTITEM_PICTURE_COLOUR           (LISTITEM_START + 64) // => SLIDESHOW_COLOUR
796 #define LISTITEM_PICTURE_LIGHT_SOURCE     (LISTITEM_START + 65) // => SLIDESHOW_EXIF_LIGHT_SOURCE
797 #define LISTITEM_PICTURE_METERING_MODE    (LISTITEM_START + 66) // => SLIDESHOW_EXIF_METERING_MODE
798 #define LISTITEM_PICTURE_OBJECT_NAME      (LISTITEM_START + 67) // => SLIDESHOW_IPTC_OBJECT_NAME
799 #define LISTITEM_PICTURE_ORIENTATION      (LISTITEM_START + 68) // => SLIDESHOW_EXIF_ORIENTATION
800 #define LISTITEM_PICTURE_PROCESS          (LISTITEM_START + 69) // => SLIDESHOW_PROCESS
801 #define LISTITEM_PICTURE_REF_SERVICE      (LISTITEM_START + 70) // => SLIDESHOW_IPTC_REF_SERVICE
802 #define LISTITEM_PICTURE_SOURCE           (LISTITEM_START + 71) // => SLIDESHOW_IPTC_SOURCE
803 #define LISTITEM_PICTURE_SPEC_INSTR       (LISTITEM_START + 72) // => SLIDESHOW_IPTC_SPEC_INSTR
804 #define LISTITEM_PICTURE_STATE            (LISTITEM_START + 73) // => SLIDESHOW_IPTC_STATE
805 #define LISTITEM_PICTURE_SUP_CATEGORIES   (LISTITEM_START + 74) // => SLIDESHOW_IPTC_SUP_CATEGORIES
806 #define LISTITEM_PICTURE_TX_REFERENCE     (LISTITEM_START + 75) // => SLIDESHOW_IPTC_TX_REFERENCE
807 #define LISTITEM_PICTURE_WHITE_BALANCE    (LISTITEM_START + 76) // => SLIDESHOW_EXIF_WHITE_BALANCE
808 #define LISTITEM_PICTURE_IMAGETYPE        (LISTITEM_START + 77) // => SLIDESHOW_IPTC_IMAGETYPE
809 #define LISTITEM_PICTURE_SUBLOCATION      (LISTITEM_START + 78) // => SLIDESHOW_IPTC_SUBLOCATION
810 #define LISTITEM_PICTURE_TIMECREATED      (LISTITEM_START + 79) // => SLIDESHOW_IPTC_TIMECREATED
811 #define LISTITEM_PICTURE_GPS_LAT    (LISTITEM_START + 80)    // => SLIDESHOW_EXIF_GPS_LATITUDE
812 #define LISTITEM_PICTURE_GPS_LON    (LISTITEM_START + 81)    // => SLIDESHOW_EXIF_GPS_LONGITUDE
813 #define LISTITEM_PICTURE_GPS_ALT    (LISTITEM_START + 82)    // => SLIDESHOW_EXIF_GPS_ALTITUDE
814 #define LISTITEM_PICTURE_END        (LISTITEM_PICTURE_GPS_ALT)
815 
816 #define LISTITEM_STUDIO             (LISTITEM_START + 83)
817 #define LISTITEM_MPAA               (LISTITEM_START + 84)
818 #define LISTITEM_CAST               (LISTITEM_START + 85)
819 #define LISTITEM_CAST_AND_ROLE      (LISTITEM_START + 86)
820 #define LISTITEM_WRITER             (LISTITEM_START + 87)
821 #define LISTITEM_TAGLINE            (LISTITEM_START + 88)
822 #define LISTITEM_TOP250             (LISTITEM_START + 89)
823 #define LISTITEM_RATING_AND_VOTES   (LISTITEM_START + 90)
824 #define LISTITEM_TRAILER            (LISTITEM_START + 91)
825 #define LISTITEM_APPEARANCES        (LISTITEM_START + 92)
826 #define LISTITEM_FILENAME_AND_PATH  (LISTITEM_START + 93)
827 #define LISTITEM_SORT_LETTER        (LISTITEM_START + 94)
828 #define LISTITEM_ALBUM_ARTIST       (LISTITEM_START + 95)
829 #define LISTITEM_FOLDERNAME         (LISTITEM_START + 96)
830 #define LISTITEM_VIDEO_CODEC        (LISTITEM_START + 97)
831 #define LISTITEM_VIDEO_RESOLUTION   (LISTITEM_START + 98)
832 #define LISTITEM_VIDEO_ASPECT       (LISTITEM_START + 99)
833 #define LISTITEM_AUDIO_CODEC        (LISTITEM_START + 100)
834 #define LISTITEM_AUDIO_CHANNELS     (LISTITEM_START + 101)
835 #define LISTITEM_AUDIO_LANGUAGE     (LISTITEM_START + 102)
836 #define LISTITEM_SUBTITLE_LANGUAGE  (LISTITEM_START + 103)
837 #define LISTITEM_IS_FOLDER          (LISTITEM_START + 104)
838 #define LISTITEM_ORIGINALTITLE      (LISTITEM_START + 105)
839 #define LISTITEM_COUNTRY            (LISTITEM_START + 106)
840 #define LISTITEM_PLAYCOUNT          (LISTITEM_START + 107)
841 #define LISTITEM_LASTPLAYED         (LISTITEM_START + 108)
842 #define LISTITEM_FOLDERPATH         (LISTITEM_START + 109)
843 #define LISTITEM_DISC_NUMBER        (LISTITEM_START + 110)
844 #define LISTITEM_FILE_EXTENSION     (LISTITEM_START + 111)
845 #define LISTITEM_IS_RESUMABLE       (LISTITEM_START + 112)
846 #define LISTITEM_PERCENT_PLAYED     (LISTITEM_START + 113)
847 #define LISTITEM_DATE_ADDED         (LISTITEM_START + 114)
848 #define LISTITEM_DBTYPE             (LISTITEM_START + 115)
849 #define LISTITEM_DBID               (LISTITEM_START + 116)
850 #define LISTITEM_ART                (LISTITEM_START + 117)
851 #define LISTITEM_STARTTIME          (LISTITEM_START + 118)
852 #define LISTITEM_ENDTIME            (LISTITEM_START + 119)
853 #define LISTITEM_STARTDATE          (LISTITEM_START + 120)
854 #define LISTITEM_ENDDATE            (LISTITEM_START + 121)
855 #define LISTITEM_NEXT_TITLE         (LISTITEM_START + 122)
856 #define LISTITEM_NEXT_GENRE         (LISTITEM_START + 123)
857 #define LISTITEM_NEXT_PLOT          (LISTITEM_START + 124)
858 #define LISTITEM_NEXT_PLOT_OUTLINE  (LISTITEM_START + 125)
859 #define LISTITEM_NEXT_STARTTIME     (LISTITEM_START + 126)
860 #define LISTITEM_NEXT_ENDTIME       (LISTITEM_START + 127)
861 #define LISTITEM_NEXT_STARTDATE     (LISTITEM_START + 128)
862 #define LISTITEM_NEXT_ENDDATE       (LISTITEM_START + 129)
863 #define LISTITEM_NEXT_DURATION      (LISTITEM_START + 130)
864 #define LISTITEM_CHANNEL_NAME       (LISTITEM_START + 131)
865 #define LISTITEM_CHANNEL_GROUP      (LISTITEM_START + 132)
866 #define LISTITEM_HASTIMER           (LISTITEM_START + 133)
867 #define LISTITEM_ISRECORDING        (LISTITEM_START + 134)
868 #define LISTITEM_ISENCRYPTED        (LISTITEM_START + 135)
869 #define LISTITEM_PARENTAL_RATING    (LISTITEM_START + 136)
870 #define LISTITEM_PROGRESS           (LISTITEM_START + 137)
871 #define LISTITEM_HAS_EPG            (LISTITEM_START + 138)
872 #define LISTITEM_VOTES              (LISTITEM_START + 139)
873 #define LISTITEM_STEREOSCOPIC_MODE  (LISTITEM_START + 140)
874 #define LISTITEM_IS_STEREOSCOPIC    (LISTITEM_START + 141)
875 #define LISTITEM_INPROGRESS         (LISTITEM_START + 142)
876 #define LISTITEM_HASRECORDING       (LISTITEM_START + 143)
877 #define LISTITEM_HASREMINDER        (LISTITEM_START + 144)
878 #define LISTITEM_CHANNEL_NUMBER     (LISTITEM_START + 145)
879 #define LISTITEM_IMDBNUMBER         (LISTITEM_START + 146)
880 #define LISTITEM_EPISODENAME        (LISTITEM_START + 147)
881 #define LISTITEM_IS_COLLECTION      (LISTITEM_START + 148)
882 #define LISTITEM_HASTIMERSCHEDULE   (LISTITEM_START + 149)
883 #define LISTITEM_TIMERTYPE          (LISTITEM_START + 150)
884 #define LISTITEM_EPG_EVENT_TITLE    (LISTITEM_START + 151)
885 #define LISTITEM_DATETIME           (LISTITEM_START + 152)
886 #define LISTITEM_USER_RATING        (LISTITEM_START + 153)
887 #define LISTITEM_TAG                (LISTITEM_START + 154)
888 #define LISTITEM_SET                (LISTITEM_START + 155)
889 #define LISTITEM_SETID              (LISTITEM_START + 156)
890 #define LISTITEM_IS_PARENTFOLDER    (LISTITEM_START + 157)
891 #define LISTITEM_MOOD               (LISTITEM_START + 158)
892 #define LISTITEM_CONTRIBUTORS       (LISTITEM_START + 159)
893 #define LISTITEM_CONTRIBUTOR_AND_ROLE (LISTITEM_START + 160)
894 #define LISTITEM_TIMERISACTIVE      (LISTITEM_START + 161)
895 #define LISTITEM_TIMERHASCONFLICT   (LISTITEM_START + 162)
896 #define LISTITEM_TIMERHASERROR      (LISTITEM_START + 163)
897 
898 #define LISTITEM_ADDON_NAME         (LISTITEM_START + 164)
899 #define LISTITEM_ADDON_VERSION      (LISTITEM_START + 165)
900 #define LISTITEM_ADDON_CREATOR      (LISTITEM_START + 166)
901 #define LISTITEM_ADDON_SUMMARY      (LISTITEM_START + 167)
902 #define LISTITEM_ADDON_DESCRIPTION  (LISTITEM_START + 168)
903 #define LISTITEM_ADDON_DISCLAIMER   (LISTITEM_START + 169)
904 #define LISTITEM_ADDON_BROKEN       (LISTITEM_START + 170)
905 #define LISTITEM_ADDON_LIFECYCLE_TYPE (LISTITEM_START + 171)
906 #define LISTITEM_ADDON_LIFECYCLE_DESC (LISTITEM_START + 172)
907 #define LISTITEM_ADDON_TYPE         (LISTITEM_START + 173)
908 #define LISTITEM_ADDON_INSTALL_DATE (LISTITEM_START + 174)
909 #define LISTITEM_ADDON_LAST_UPDATED (LISTITEM_START + 175)
910 #define LISTITEM_ADDON_LAST_USED    (LISTITEM_START + 176)
911 #define LISTITEM_STATUS             (LISTITEM_START + 177)
912 #define LISTITEM_ENDTIME_RESUME     (LISTITEM_START + 178)
913 #define LISTITEM_ADDON_ORIGIN       (LISTITEM_START + 179)
914 #define LISTITEM_ADDON_NEWS         (LISTITEM_START + 180)
915 #define LISTITEM_ADDON_SIZE         (LISTITEM_START + 181)
916 #define LISTITEM_EXPIRATION_DATE    (LISTITEM_START + 182)
917 #define LISTITEM_EXPIRATION_TIME    (LISTITEM_START + 183)
918 #define LISTITEM_PROPERTY           (LISTITEM_START + 184)
919 #define LISTITEM_EPG_EVENT_ICON     (LISTITEM_START + 185)
920 #define LISTITEM_HASREMINDERRULE    (LISTITEM_START + 186)
921 #define LISTITEM_HASARCHIVE         (LISTITEM_START + 187)
922 #define LISTITEM_ISPLAYABLE         (LISTITEM_START + 188)
923 #define LISTITEM_FILENAME_NO_EXTENSION (LISTITEM_START + 189)
924 #define LISTITEM_CURRENTITEM        (LISTITEM_START + 190)
925 #define LISTITEM_IS_NEW             (LISTITEM_START + 191)
926 #define LISTITEM_DISC_TITLE         (LISTITEM_START + 192)
927 #define LISTITEM_IS_BOXSET          (LISTITEM_START + 193)
928 #define LISTITEM_TOTALDISCS         (LISTITEM_START + 194)
929 #define LISTITEM_RELEASEDATE        (LISTITEM_START + 195)
930 #define LISTITEM_ORIGINALDATE       (LISTITEM_START + 196)
931 #define LISTITEM_BPM                (LISTITEM_START + 197)
932 #define LISTITEM_UNIQUEID           (LISTITEM_START + 198)
933 #define LISTITEM_BITRATE            (LISTITEM_START + 199)
934 #define LISTITEM_SAMPLERATE         (LISTITEM_START + 200)
935 #define LISTITEM_MUSICCHANNELS      (LISTITEM_START + 201)
936 #define LISTITEM_IS_PREMIERE        (LISTITEM_START + 202)
937 #define LISTITEM_IS_FINALE          (LISTITEM_START + 203)
938 #define LISTITEM_IS_LIVE            (LISTITEM_START + 204)
939 #define LISTITEM_TVSHOWDBID         (LISTITEM_START + 205)
940 #define LISTITEM_ALBUMSTATUS        (LISTITEM_START + 206)
941 #define LISTITEM_ISAUTOUPDATEABLE   (LISTITEM_START + 207)
942 
943 #define LISTITEM_END                (LISTITEM_START + 2500)
944 
945 #define CONDITIONAL_LABEL_START       (LISTITEM_END + 1) // 37501
946 #define CONDITIONAL_LABEL_END         39999
947 
948 // the multiple information vector
949 #define MULTI_INFO_START              40000
950 #define MULTI_INFO_END                99999
951 #define COMBINED_VALUES_START        100000
952 
953 // listitem info Flags
954 // Stored in the top 8 bits of GUIInfo::m_data1
955 // therefore we only have room for 8 flags
956 #define INFOFLAG_LISTITEM_WRAP        (static_cast<uint32_t>(1 << 25))  // Wrap ListItem lookups
957 #define INFOFLAG_LISTITEM_POSITION    (static_cast<uint32_t>(1 << 26))  // ListItem lookups based on cursor position
958 #define INFOFLAG_LISTITEM_ABSOLUTE    (static_cast<uint32_t>(1 << 27))  // Absolute ListItem lookups
959 #define INFOFLAG_LISTITEM_NOWRAP      (static_cast<uint32_t>(1 << 28))  // Do not wrap ListItem lookups
960 #define INFOFLAG_LISTITEM_CONTAINER   (static_cast<uint32_t>(1 << 29))  // Lookup the item in given container
961