grenton-ts 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +86 -0
  3. package/dist/analog-din/fv02_01/analog-in.ts +271 -0
  4. package/dist/clu/calendar/v1/calendar.ts +308 -0
  5. package/dist/clu/clu-zwave-2/fv515_03/clu-zwave-2.ts +1302 -0
  6. package/dist/clu/event-scheduler/v1/event-scheduler.ts +537 -0
  7. package/dist/clu/multi-fan-ac-thermostat/v1/multi-fan-ac-thermostat.ts +1163 -0
  8. package/dist/clu/pid-controller/v1/pid-controller.ts +536 -0
  9. package/dist/clu/presence-sensor/v1/presence-sensor.ts +313 -0
  10. package/dist/clu/presence-sensor/v2/presence-sensor.ts +470 -0
  11. package/dist/clu/push/v1/push.ts +261 -0
  12. package/dist/clu/scheduler/v1/scheduler.ts +304 -0
  13. package/dist/clu/statistics/v1/statistics.ts +413 -0
  14. package/dist/clu/statistics-pulse/v1/statistics-pulse.ts +218 -0
  15. package/dist/clu/sunrise-sunset-calendar/v1/sunrise-sunset-calendar.ts +389 -0
  16. package/dist/clu/sunrise-sunset-calendar/v2/sunrise-sunset-calendar.ts +659 -0
  17. package/dist/clu/sunrise-sunset-calendar/v3/sunrise-sunset-calendar.ts +659 -0
  18. package/dist/clu/thermostat/v1/thermostat.ts +768 -0
  19. package/dist/clu/thermostat/v2/thermostat.ts +861 -0
  20. package/dist/clu/timer/v1/timer.ts +369 -0
  21. package/dist/core/execution-builder.ts +55 -0
  22. package/dist/core/remote-gate.ts +17 -0
  23. package/dist/digital-in-din/fv02_01/din.ts +310 -0
  24. package/dist/examples/light_turned_on_by_calendar/Clu_OnInit.ts +26 -0
  25. package/dist/examples/light_turned_on_by_presence_sensor/Clu_OnInit.ts +35 -0
  26. package/dist/examples/light_turned_on_by_switch/Clu_OnInit.ts +16 -0
  27. package/dist/gate/cool-master/v1/cool-master.ts +782 -0
  28. package/dist/gate/cool-master-net/v1/cool-master-net.ts +334 -0
  29. package/dist/gate/denon-marantz-avr/v1/denon-marantz-avr.ts +724 -0
  30. package/dist/gate/heos/v1/heos.ts +1224 -0
  31. package/dist/gate/http/fv1000_03/clu-gate-http.ts +405 -0
  32. package/dist/gate/http/fv1000_03_hv1/clu-gate-http.ts +352 -0
  33. package/dist/gate/http/fv1100_03/clu-gate-http.ts +589 -0
  34. package/dist/gate/http/fv1110_03/clu-gate-http.ts +589 -0
  35. package/dist/gate/http/fv1300_03/clu-gate-http.ts +589 -0
  36. package/dist/gate/http/fv1400_03/clu-gate-http.ts +677 -0
  37. package/dist/gate/http-listener/v1/http-listener.ts +299 -0
  38. package/dist/gate/http-listener/v2/http-listener.ts +325 -0
  39. package/dist/gate/http-request/v1/http-request.ts +645 -0
  40. package/dist/gate/http-request/v2/http-request.ts +709 -0
  41. package/dist/gate/input/v1/input.ts +171 -0
  42. package/dist/gate/jablotron/v1/jablotron.ts +100 -0
  43. package/dist/gate/jablotron-device/v1/jablotron-device.ts +171 -0
  44. package/dist/gate/jablotron-output/v1/jablotron-output.ts +240 -0
  45. package/dist/gate/jablotron-section/v1/jablotron-section.ts +260 -0
  46. package/dist/gate/modbus/v1/modbus.ts +609 -0
  47. package/dist/gate/modbus/v2/modbus.ts +690 -0
  48. package/dist/gate/modbus-client/v1/modbus-client.ts +827 -0
  49. package/dist/gate/modbus-rtu/v1/modbus-rtu.ts +911 -0
  50. package/dist/gate/modbus-server/v1/modbus-server.ts +405 -0
  51. package/dist/gate/modbus-slave-config-rtu/v1/modbus-slave-config-rtu.ts +160 -0
  52. package/dist/gate/modbus-slave-rtu/v1/modbus-slave-rtu.ts +371 -0
  53. package/dist/gate/modbus-value/v1/modbus-value.ts +856 -0
  54. package/dist/gate/music-cast/v1/music-cast.ts +1298 -0
  55. package/dist/gate/output/v1/output.ts +240 -0
  56. package/dist/gate/satel/v1/satel.ts +359 -0
  57. package/dist/gate/satel-input/v1/satel-input.ts +171 -0
  58. package/dist/gate/satel-output/v1/satel-output.ts +240 -0
  59. package/dist/gate/satel-zone/v1/satel-zone.ts +235 -0
  60. package/dist/gate/sonos/v1/sonos.ts +934 -0
  61. package/dist/gate/timer/v2/timer.ts +253 -0
  62. package/dist/gate/zone/v1/zone.ts +235 -0
  63. package/dist/io-module-din-8/fv02_02/din.ts +354 -0
  64. package/dist/io-module-din-8/fv02_02/dout.ts +360 -0
  65. package/dist/one-wire/fv01_10/onew-sensor.ts +269 -0
  66. package/dist/one-wire/fv01_28/onew-sensor.ts +269 -0
  67. package/dist/one-wire/fv02_28/onew-sensor.ts +350 -0
  68. package/dist/one-wire/fv03_28/onew-sensor.ts +435 -0
  69. package/dist/relay-din-2/fv02_02/dout.ts +544 -0
  70. package/dist/relay-din-4/fv01_02/dout.ts +340 -0
  71. package/dist/relay-din-4/fv02_02/dout.ts +368 -0
  72. package/dist/roller-shutter-din-3/fv03_02/roller-shutter.ts +1078 -0
  73. package/dist/smart-panel-fm-4/fv03_03/panel-button.ts +550 -0
  74. package/dist/smart-panel-fm-4/fv03_03/panel-sens-light.ts +238 -0
  75. package/dist/smart-panel-fm-4/fv03_03/panel-sens-temp.ts +239 -0
  76. package/dist/smart-panel-fm-4/fv03_03/panel.ts +700 -0
  77. package/dist/smart-panel-fm-4/fv04_03/panel-button.ts +567 -0
  78. package/dist/smart-panel-fm-4/fv04_03/panel-page.ts +516 -0
  79. package/dist/smart-panel-fm-4/fv04_03/panel-sens-light.ts +238 -0
  80. package/dist/smart-panel-fm-4/fv04_03/panel-sens-temp.ts +239 -0
  81. package/dist/smart-panel-fm-4/fv04_03/panel.ts +1026 -0
  82. package/dist/smart-panel-fm-4/fv05_03/panel-button.ts +567 -0
  83. package/dist/smart-panel-fm-4/fv05_03/panel-page.ts +620 -0
  84. package/dist/smart-panel-fm-4/fv05_03/panel-sens-light.ts +238 -0
  85. package/dist/smart-panel-fm-4/fv05_03/panel-sens-temp.ts +266 -0
  86. package/dist/smart-panel-fm-4/fv05_03/panel.ts +1109 -0
  87. package/dist/smart-panel-fm-4/fv06_03/panel-button.ts +567 -0
  88. package/dist/smart-panel-fm-4/fv06_03/panel-page.ts +877 -0
  89. package/dist/smart-panel-fm-4/fv06_03/panel-sens-light.ts +238 -0
  90. package/dist/smart-panel-fm-4/fv06_03/panel-sens-temp.ts +297 -0
  91. package/dist/smart-panel-fm-4/fv06_03/panel.ts +1138 -0
  92. package/dist/smart-panel-fm-4/fv07_03/panel-button.ts +567 -0
  93. package/dist/smart-panel-fm-4/fv07_03/panel-page.ts +864 -0
  94. package/dist/smart-panel-fm-4/fv07_03/panel-sens-light.ts +238 -0
  95. package/dist/smart-panel-fm-4/fv07_03/panel-sens-temp.ts +297 -0
  96. package/dist/smart-panel-fm-4/fv07_03/panel.ts +1135 -0
  97. package/dist/touch-panel-fm-4/fv01_02/panel-button.ts +418 -0
  98. package/dist/touch-panel-fm-4/fv01_02/panel-sens-light.ts +238 -0
  99. package/dist/touch-panel-fm-4/fv01_02/panel-sens-temp.ts +257 -0
  100. package/dist/touch-panel-fm-4/fv01_02/panel.ts +75 -0
  101. package/dist/touch-panel-fm-4/fv01_02/power-supply-voltage.ts +322 -0
  102. package/dist/touch-panel-fm-8/fv01_02/panel-button.ts +418 -0
  103. package/dist/touch-panel-fm-8/fv01_02/panel-sens-light.ts +238 -0
  104. package/dist/touch-panel-fm-8/fv01_02/panel-sens-temp.ts +270 -0
  105. package/dist/touch-panel-fm-8/fv01_02/panel.ts +75 -0
  106. package/dist/touch-panel-fm-8/fv01_02/power-supply-voltage.ts +322 -0
  107. package/package.json +16 -0
@@ -0,0 +1,1135 @@
1
+ // Created from: packages/grenton-api/interfaces/module_SMART_PANEL_FM_4_fv07_03.xml, object name="PANEL" version="07.03"
2
+
3
+ import { rawExecutionBuilderFactory } from "../../core/execution-builder"
4
+ import { RemoteGate } from "../../core/remote-gate"
5
+
6
+ enum EventType {
7
+ OnGestureUp = 0,
8
+ OnGestureDown = 1,
9
+ OnGestureLeft = 2,
10
+ OnGestureRight = 3,
11
+ OnProximityDetect = 4,
12
+ OnPageChange = 5,
13
+ OnDisplayOn = 6,
14
+ OnDisplayOff = 7,
15
+ }
16
+
17
+ enum PropertyType {
18
+ GestureIconUp = 4,
19
+ GestureIconDown = 5,
20
+ GestureIconLeft = 6,
21
+ GestureIconRight = 7,
22
+ ProximitySens = 10,
23
+ ProximityTimeout = 11,
24
+ ProximityValue = 12,
25
+ BuzzerValue = 13,
26
+ GestureMode = 15,
27
+ GestureSens = 16,
28
+ PageNr = 17,
29
+ PageDisplayMode = 18,
30
+ ButtonsLEDMode = 19,
31
+ PageControlMode = 20,
32
+ GestureDisplayMode = 21,
33
+ }
34
+
35
+ enum MethodType {
36
+ SwitchOnDisplay = 0,
37
+ ShowButtons = 1,
38
+ ClearScreen = 2,
39
+ PrintText = 3,
40
+ DrawLine = 4,
41
+ DrawPoint = 5,
42
+ DrawIcon = 6,
43
+ DisplayContent = 7,
44
+ PrintFloat = 20,
45
+ SetBeep = 21,
46
+ SetPageNr = 22,
47
+ SetNextPage = 27,
48
+ SetPrevPage = 28,
49
+ Draw = 29,
50
+ DrawBox = 30,
51
+ StartCleaningMode = 31,
52
+ }
53
+
54
+ enum BuzzerValueType {
55
+ Off = 0,
56
+ On = 1,
57
+ }
58
+
59
+ enum GestureModeType {
60
+ Off = 0,
61
+ Vertical = 1,
62
+ Horizontal = 2,
63
+ VertHoriz = 3,
64
+ }
65
+
66
+ enum GestureSensType {
67
+ Low = 1,
68
+ Mid = 2,
69
+ High = 3,
70
+ }
71
+
72
+ enum PageDisplayModeType {
73
+ ShowImmediately = 0,
74
+ ShowIconOrName = 1,
75
+ ShowGesture = 2,
76
+ }
77
+
78
+ enum ButtonsLEDModeType {
79
+ LocationLedOFF = 0,
80
+ LocationLedON = 1,
81
+ LocationLedONforActive = 2,
82
+ }
83
+
84
+ enum PageControlModeType {
85
+ Command = 0,
86
+ GestureCommand = 1,
87
+ }
88
+
89
+ enum GestureDisplayModeType {
90
+ Off = 0,
91
+ On = 1,
92
+ }
93
+
94
+ declare class PanelRaw {
95
+ add_event(event: EventType, callback: () => void): void;
96
+ get(property: PropertyType): any;
97
+ set(property: PropertyType, value: any): void;
98
+ execute(method: MethodType, ...args: any[]): any;
99
+ }
100
+
101
+ interface IPanel {
102
+ /**
103
+ * Zdarzenie wywoływane w przypadku wykonania gestu w górę
104
+ * @param callback
105
+ */
106
+ addOnGestureUp: (callback: () => void) => void
107
+ /**
108
+ * Zdarzenie wywoływane w przypadku wykonania gestu w dół
109
+ * @param callback
110
+ */
111
+ addOnGestureDown: (callback: () => void) => void
112
+ /**
113
+ * Zdarzenie wywoływane w przypadku wykonania gestu w lewo
114
+ * @param callback
115
+ */
116
+ addOnGestureLeft: (callback: () => void) => void
117
+ /**
118
+ * Zdarzenie wywoływane w przypadku wykonania gestu w prawo
119
+ * @param callback
120
+ */
121
+ addOnGestureRight: (callback: () => void) => void
122
+ /**
123
+ * Zdarzenie wywoływane w przypadku wykrycia zbliżającego się do wyświetlacza obiektu
124
+ * @param callback
125
+ */
126
+ addOnProximityDetect: (callback: () => void) => void
127
+ /**
128
+ * Zdarzenie wywoływane w przypadku zmiany strony w panelu
129
+ * @param callback
130
+ */
131
+ addOnPageChange: (callback: () => void) => void
132
+ /**
133
+ * Zdarzenie wywoływane w przypadku wybudzenia wyświetlacza
134
+ * @param callback
135
+ */
136
+ addOnDisplayOn: (callback: () => void) => void
137
+ /**
138
+ * Zdarzenie wywoływane w przypadku wyłączenia wyświetlacza
139
+ * @param callback
140
+ */
141
+ addOnDisplayOff: (callback: () => void) => void
142
+ /** Wybudza wyświetlacz z trybu uśpienia */
143
+ switchOnDisplay: () => void
144
+ /** Zmienia tryb wyświetlania na 'buttons'. Czyści wyświetlacz i wyświetla ponownie ikony (lub tekst) dla wszystkich przycisków */
145
+ showButtons: () => void
146
+ /** Czyści zawartość wyświetlacza w trybie 'freedraw' */
147
+ clearScreen: () => void
148
+ /**
149
+ * Wyświetla tekst w trybie 'freedraw'. x, y - współrzędne w pikselach; txt - tekst; fontSize - rozmiar czcionki (1: 10p, 2: 14p, 3: 32p)
150
+ * @param {number} x
151
+ * @param {number} y
152
+ * @param {string} txt
153
+ * @param {number} fontSize
154
+ */
155
+ printText: (x: number, y: number, txt: string, fontSize: number) => void
156
+ /**
157
+ * Wyświetla liczbę w trybie 'freedraw'. x, y - współrzędne w pikselach; number - wartość; precision - miejsca po przecinku; fontSize - rozmiar czcionki (1: 10p, 2: 14p, 3: 32p)
158
+ * @param {number} x
159
+ * @param {number} y
160
+ * @param {number} number
161
+ * @param {number} precision
162
+ * @param {number} fontSize
163
+ */
164
+ printFloat: (x: number, y: number, number: number, precision: number, fontSize: number) => void
165
+ /**
166
+ * Rysuje linię w trybie 'freedraw'. x, y - współrzędne początkowe; xe, ye - końcowe; color - 0 czarny, 1 biały
167
+ * @param {number} x
168
+ * @param {number} y
169
+ * @param {number} xe
170
+ * @param {number} ye
171
+ * @param {number} color
172
+ */
173
+ drawLine: (x: number, y: number, xe: number, ye: number, color: number) => void
174
+ /**
175
+ * Rysuje wypełniony prostokąt w trybie 'freedraw'. x, y - współrzędne; w - szerokość; h - wysokość; color - 0 czarny, 1 biały
176
+ * @param {number} x
177
+ * @param {number} y
178
+ * @param {number} w
179
+ * @param {number} h
180
+ * @param {number} color
181
+ */
182
+ drawBox: (x: number, y: number, w: number, h: number, color: number) => void
183
+ /**
184
+ * Rysuje punkt w trybie 'freedraw'. x, y - współrzędne w pikselach; color - 0 czarny, 1 biały
185
+ * @param {number} x
186
+ * @param {number} y
187
+ * @param {number} color
188
+ */
189
+ drawPoint: (x: number, y: number, color: number) => void
190
+ /**
191
+ * Rysuje ikonę (bmp) w trybie 'freedraw'. x, y - współrzędne w pikselach; filename - nazwa ikony bez rozszerzenia
192
+ * @param {number} x
193
+ * @param {number} y
194
+ * @param {string} filename
195
+ */
196
+ drawIcon: (x: number, y: number, filename: string) => void
197
+ /** Wyświetla zawartość bufora pamięci graficznej. Zmienia tryb wyświetlania na 'freedraw' */
198
+ displayContent: () => void
199
+ /**
200
+ * Generuje dźwięk o danej częstotliwości [Hz], czasie trwania [ms] i głośności
201
+ * @param {number} frequency
202
+ * @param {number} duration
203
+ * @param {number} volume
204
+ * @param {number} reserved
205
+ */
206
+ setBeep: (frequency: number, duration: number, volume: number, reserved: number) => void
207
+ /**
208
+ * Ustawia numer wyświetlanej strony
209
+ * @param {number} nr
210
+ */
211
+ setPageNr: (nr: number) => void
212
+ /** Wyświetla następną stronę */
213
+ setNextPage: () => void
214
+ /** Wyświetla poprzednią stronę */
215
+ setPrevPage: () => void
216
+ /** Wyzwala wywołanie zdarzenia OnDraw w przypadku gdy OLED jest aktywny */
217
+ draw: () => void
218
+ /**
219
+ * Zablokowanie działania przycisków, gestów oraz odświeżania ekranu na czas czyszczenia panelu (czas trwania blokady wyrażony w sekundach)
220
+ * @param {number} duration
221
+ */
222
+ startCleaningMode: (duration: number) => void
223
+ /** Nazwa pliku BMP z ikoną dla gestu Góra (bez rozszerzenia) */
224
+ readonly gestureIconUp: string
225
+ /**
226
+ * Ustawia ikonę dla wykonania gestu w górę
227
+ * @param {string} filename
228
+ */
229
+ setGestureIconUp: (filename: string) => void
230
+ /** Nazwa pliku BMP z ikoną dla gestu Dół (bez rozszerzenia) */
231
+ readonly gestureIconDown: string
232
+ /**
233
+ * Ustawia ikonę dla wykonania gestu w dół
234
+ * @param {string} filename
235
+ */
236
+ setGestureIconDown: (filename: string) => void
237
+ /** Nazwa pliku BMP z ikoną dla gestu Lewo (bez rozszerzenia) */
238
+ readonly gestureIconLeft: string
239
+ /**
240
+ * Ustawia ikonę dla wykonania gestu w lewo
241
+ * @param {string} filename
242
+ */
243
+ setGestureIconLeft: (filename: string) => void
244
+ /** Nazwa pliku BMP z ikoną dla gestu Prawo (bez rozszerzenia) */
245
+ readonly gestureIconRight: string
246
+ /**
247
+ * Ustawia ikonę dla wykonania gestu w prawo
248
+ * @param {string} filename
249
+ */
250
+ setGestureIconRight: (filename: string) => void
251
+ /** Czułość sensora zbliżeniowego (mniejsza wartość-większa czułość) */
252
+ readonly proximitySens: number
253
+ /**
254
+ * Ustawia wartość ProximitySens
255
+ * @param {number} value
256
+ */
257
+ setProximitySens: (value: number) => void
258
+ /** Czas po jakim wyświetlacz zostanie wygaszony */
259
+ readonly proximityTimeout: number
260
+ /**
261
+ * Ustawia czas w sekundach po jakim aktywuje się wygaszacz ekranu
262
+ * @param {number} value
263
+ */
264
+ setProximityTimeout: (value: number) => void
265
+ /** Sygnał sensora zbliżeniowego (wartość bezwymiarowa) */
266
+ readonly proximityValue: number
267
+ /** Sterowanie sygnalizacją dźwiękową: 0 - Off, 1 - On */
268
+ readonly buzzerValue: BuzzerValueType
269
+ /**
270
+ * Sterowanie dźwiękiem (On/Off)
271
+ * @param {BuzzerValueType} value
272
+ */
273
+ setBuzzerValue: (value: BuzzerValueType) => void
274
+ /** Wybór orientacji gestów: 0 - Off, 1 - Vertical, 2 - Horizontal, 3 - Vert+Horiz */
275
+ readonly gestureMode: GestureModeType
276
+ /**
277
+ * Wybór orientacji gestów
278
+ * @param {GestureModeType} value
279
+ */
280
+ setGestureMode: (value: GestureModeType) => void
281
+ /** Wybór czułości gestów: 1 - Low, 2 - Mid, 3 - High */
282
+ readonly gestureSens: GestureSensType
283
+ /**
284
+ * Wybór czułości gestów
285
+ * @param {GestureSensType} value
286
+ */
287
+ setGestureSens: (value: GestureSensType) => void
288
+ /** Numer wyświetlanej aktualnie strony */
289
+ pageNr: number
290
+ /** Informacja przed zmianą strony: 0 - ShowImmediately, 1 - ShowIconOrName, 2 - ShowGesture */
291
+ readonly pageDisplayMode: PageDisplayModeType
292
+ /**
293
+ * Ustawia tryb wyświetlania informacji przed zmianą strony
294
+ * @param {PageDisplayModeType} value
295
+ */
296
+ setPageDisplayMode: (value: PageDisplayModeType) => void
297
+ /** Lokalizacja przycisków za pomocą słabego światła LED: 0 - LocationLedOFF, 1 - LocationLedON, 2 - LocationLedONforActive */
298
+ readonly buttonsLEDMode: ButtonsLEDModeType
299
+ /**
300
+ * Ustawia tryb lokalizacji przycisków za pomocą diod LED
301
+ * @param {ButtonsLEDModeType} value
302
+ */
303
+ setButtonsLEDMode: (value: ButtonsLEDModeType) => void
304
+ /** Źródło, które przełącza strony: 0 - Command, 1 - Gesture/Command */
305
+ readonly pageControlMode: PageControlModeType
306
+ /**
307
+ * Ustawia źródło, które przełącza strony (komendy / gesty)
308
+ * @param {PageControlModeType} value
309
+ */
310
+ setPageControlMode: (value: PageControlModeType) => void
311
+ /** Wyświetlanie informacji o aktualnie wykonanym geście: 0 - Off, 1 - On */
312
+ readonly gestureDisplayMode: GestureDisplayModeType
313
+ /**
314
+ * Ustawia tryb wyświetlania informacji o wykonanym geście
315
+ * @param {GestureDisplayModeType} value
316
+ */
317
+ setGestureDisplayMode: (value: GestureDisplayModeType) => void
318
+ }
319
+
320
+ class PanelRemote implements IPanel {
321
+ constructor(private objectName: string, private gate: RemoteGate) {
322
+ }
323
+
324
+ addOnGestureUp(_callback: () => void): void {
325
+ // Remote events are not supported
326
+ }
327
+ addOnGestureDown(_callback: () => void): void {
328
+ // Remote events are not supported
329
+ }
330
+ addOnGestureLeft(_callback: () => void): void {
331
+ // Remote events are not supported
332
+ }
333
+ addOnGestureRight(_callback: () => void): void {
334
+ // Remote events are not supported
335
+ }
336
+ addOnProximityDetect(_callback: () => void): void {
337
+ // Remote events are not supported
338
+ }
339
+ addOnPageChange(_callback: () => void): void {
340
+ // Remote events are not supported
341
+ }
342
+ addOnDisplayOn(_callback: () => void): void {
343
+ // Remote events are not supported
344
+ }
345
+ addOnDisplayOff(_callback: () => void): void {
346
+ // Remote events are not supported
347
+ }
348
+
349
+ /** Wybudza wyświetlacz z trybu uśpienia */
350
+ switchOnDisplay(): void {
351
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
352
+ .execute()
353
+ .addParameter(MethodType.SwitchOnDisplay)
354
+ .build();
355
+ this.gate.runScript(cmd!);
356
+ }
357
+
358
+ /** Zmienia tryb wyświetlania na 'buttons'. Czyści wyświetlacz i wyświetla ponownie ikony (lub tekst) dla wszystkich przycisków */
359
+ showButtons(): void {
360
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
361
+ .execute()
362
+ .addParameter(MethodType.ShowButtons)
363
+ .build();
364
+ this.gate.runScript(cmd!);
365
+ }
366
+
367
+ /** Czyści zawartość wyświetlacza w trybie 'freedraw' */
368
+ clearScreen(): void {
369
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
370
+ .execute()
371
+ .addParameter(MethodType.ClearScreen)
372
+ .build();
373
+ this.gate.runScript(cmd!);
374
+ }
375
+
376
+ /**
377
+ * Wyświetla tekst w trybie 'freedraw'. x, y - współrzędne w pikselach; txt - tekst; fontSize - rozmiar czcionki (1: 10p, 2: 14p, 3: 32p)
378
+ * @param {number} x
379
+ * @param {number} y
380
+ * @param {string} txt
381
+ * @param {number} fontSize
382
+ */
383
+ printText(x: number, y: number, txt: string, fontSize: number): void {
384
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
385
+ .execute()
386
+ .addParameter(MethodType.PrintText)
387
+ .addParameter(x)
388
+ .addParameter(y)
389
+ .addParameter(txt)
390
+ .addParameter(fontSize)
391
+ .build();
392
+ this.gate.runScript(cmd!);
393
+ }
394
+
395
+ /**
396
+ * Wyświetla liczbę w trybie 'freedraw'. x, y - współrzędne w pikselach; number - wartość; precision - miejsca po przecinku; fontSize - rozmiar czcionki (1: 10p, 2: 14p, 3: 32p)
397
+ * @param {number} x
398
+ * @param {number} y
399
+ * @param {number} number
400
+ * @param {number} precision
401
+ * @param {number} fontSize
402
+ */
403
+ printFloat(x: number, y: number, number: number, precision: number, fontSize: number): void {
404
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
405
+ .execute()
406
+ .addParameter(MethodType.PrintFloat)
407
+ .addParameter(x)
408
+ .addParameter(y)
409
+ .addParameter(number)
410
+ .addParameter(precision)
411
+ .addParameter(fontSize)
412
+ .build();
413
+ this.gate.runScript(cmd!);
414
+ }
415
+
416
+ /**
417
+ * Rysuje linię w trybie 'freedraw'. x, y - współrzędne początkowe; xe, ye - końcowe; color - 0 czarny, 1 biały
418
+ * @param {number} x
419
+ * @param {number} y
420
+ * @param {number} xe
421
+ * @param {number} ye
422
+ * @param {number} color
423
+ */
424
+ drawLine(x: number, y: number, xe: number, ye: number, color: number): void {
425
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
426
+ .execute()
427
+ .addParameter(MethodType.DrawLine)
428
+ .addParameter(x)
429
+ .addParameter(y)
430
+ .addParameter(xe)
431
+ .addParameter(ye)
432
+ .addParameter(color)
433
+ .build();
434
+ this.gate.runScript(cmd!);
435
+ }
436
+
437
+ /**
438
+ * Rysuje wypełniony prostokąt w trybie 'freedraw'. x, y - współrzędne; w - szerokość; h - wysokość; color - 0 czarny, 1 biały
439
+ * @param {number} x
440
+ * @param {number} y
441
+ * @param {number} w
442
+ * @param {number} h
443
+ * @param {number} color
444
+ */
445
+ drawBox(x: number, y: number, w: number, h: number, color: number): void {
446
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
447
+ .execute()
448
+ .addParameter(MethodType.DrawBox)
449
+ .addParameter(x)
450
+ .addParameter(y)
451
+ .addParameter(w)
452
+ .addParameter(h)
453
+ .addParameter(color)
454
+ .build();
455
+ this.gate.runScript(cmd!);
456
+ }
457
+
458
+ /**
459
+ * Rysuje punkt w trybie 'freedraw'. x, y - współrzędne w pikselach; color - 0 czarny, 1 biały
460
+ * @param {number} x
461
+ * @param {number} y
462
+ * @param {number} color
463
+ */
464
+ drawPoint(x: number, y: number, color: number): void {
465
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
466
+ .execute()
467
+ .addParameter(MethodType.DrawPoint)
468
+ .addParameter(x)
469
+ .addParameter(y)
470
+ .addParameter(color)
471
+ .build();
472
+ this.gate.runScript(cmd!);
473
+ }
474
+
475
+ /**
476
+ * Rysuje ikonę (bmp) w trybie 'freedraw'. x, y - współrzędne w pikselach; filename - nazwa ikony bez rozszerzenia
477
+ * @param {number} x
478
+ * @param {number} y
479
+ * @param {string} filename
480
+ */
481
+ drawIcon(x: number, y: number, filename: string): void {
482
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
483
+ .execute()
484
+ .addParameter(MethodType.DrawIcon)
485
+ .addParameter(x)
486
+ .addParameter(y)
487
+ .addParameter(filename)
488
+ .build();
489
+ this.gate.runScript(cmd!);
490
+ }
491
+
492
+ /** Wyświetla zawartość bufora pamięci graficznej. Zmienia tryb wyświetlania na 'freedraw' */
493
+ displayContent(): void {
494
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
495
+ .execute()
496
+ .addParameter(MethodType.DisplayContent)
497
+ .build();
498
+ this.gate.runScript(cmd!);
499
+ }
500
+
501
+ /**
502
+ * Generuje dźwięk o danej częstotliwości [Hz], czasie trwania [ms] i głośności
503
+ * @param {number} frequency
504
+ * @param {number} duration
505
+ * @param {number} volume
506
+ * @param {number} reserved
507
+ */
508
+ setBeep(frequency: number, duration: number, volume: number, reserved: number): void {
509
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
510
+ .execute()
511
+ .addParameter(MethodType.SetBeep)
512
+ .addParameter(frequency)
513
+ .addParameter(duration)
514
+ .addParameter(volume)
515
+ .addParameter(reserved)
516
+ .build();
517
+ this.gate.runScript(cmd!);
518
+ }
519
+
520
+ /**
521
+ * Ustawia numer wyświetlanej strony
522
+ * @param {number} nr
523
+ */
524
+ setPageNr(nr: number): void {
525
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
526
+ .execute()
527
+ .addParameter(MethodType.SetPageNr)
528
+ .addParameter(nr)
529
+ .build();
530
+ this.gate.runScript(cmd!);
531
+ }
532
+
533
+ /** Wyświetla następną stronę */
534
+ setNextPage(): void {
535
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
536
+ .execute()
537
+ .addParameter(MethodType.SetNextPage)
538
+ .build();
539
+ this.gate.runScript(cmd!);
540
+ }
541
+
542
+ /** Wyświetla poprzednią stronę */
543
+ setPrevPage(): void {
544
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
545
+ .execute()
546
+ .addParameter(MethodType.SetPrevPage)
547
+ .build();
548
+ this.gate.runScript(cmd!);
549
+ }
550
+
551
+ /** Wyzwala wywołanie zdarzenia OnDraw w przypadku gdy OLED jest aktywny */
552
+ draw(): void {
553
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
554
+ .execute()
555
+ .addParameter(MethodType.Draw)
556
+ .build();
557
+ this.gate.runScript(cmd!);
558
+ }
559
+
560
+ /**
561
+ * Zablokowanie działania przycisków, gestów oraz odświeżania ekranu na czas czyszczenia panelu (czas trwania blokady wyrażony w sekundach)
562
+ * @param {number} duration
563
+ */
564
+ startCleaningMode(duration: number): void {
565
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
566
+ .execute()
567
+ .addParameter(MethodType.StartCleaningMode)
568
+ .addParameter(duration)
569
+ .build();
570
+ this.gate.runScript(cmd!);
571
+ }
572
+
573
+ /** Nazwa pliku BMP z ikoną dla gestu Góra (bez rozszerzenia) */
574
+ get gestureIconUp(): string {
575
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
576
+ .get()
577
+ .addParameter(PropertyType.GestureIconUp)
578
+ .build();
579
+ return this.gate.runScript(cmd!);
580
+ }
581
+ setGestureIconUp(filename: string): void {
582
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
583
+ .set()
584
+ .addParameter(PropertyType.GestureIconUp)
585
+ .addParameter(filename)
586
+ .build();
587
+ this.gate.runScript(cmd!);
588
+ }
589
+
590
+ /** Nazwa pliku BMP z ikoną dla gestu Dół (bez rozszerzenia) */
591
+ get gestureIconDown(): string {
592
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
593
+ .get()
594
+ .addParameter(PropertyType.GestureIconDown)
595
+ .build();
596
+ return this.gate.runScript(cmd!);
597
+ }
598
+ setGestureIconDown(filename: string): void {
599
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
600
+ .set()
601
+ .addParameter(PropertyType.GestureIconDown)
602
+ .addParameter(filename)
603
+ .build();
604
+ this.gate.runScript(cmd!);
605
+ }
606
+
607
+ /** Nazwa pliku BMP z ikoną dla gestu Lewo (bez rozszerzenia) */
608
+ get gestureIconLeft(): string {
609
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
610
+ .get()
611
+ .addParameter(PropertyType.GestureIconLeft)
612
+ .build();
613
+ return this.gate.runScript(cmd!);
614
+ }
615
+ setGestureIconLeft(filename: string): void {
616
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
617
+ .set()
618
+ .addParameter(PropertyType.GestureIconLeft)
619
+ .addParameter(filename)
620
+ .build();
621
+ this.gate.runScript(cmd!);
622
+ }
623
+
624
+ /** Nazwa pliku BMP z ikoną dla gestu Prawo (bez rozszerzenia) */
625
+ get gestureIconRight(): string {
626
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
627
+ .get()
628
+ .addParameter(PropertyType.GestureIconRight)
629
+ .build();
630
+ return this.gate.runScript(cmd!);
631
+ }
632
+ setGestureIconRight(filename: string): void {
633
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
634
+ .set()
635
+ .addParameter(PropertyType.GestureIconRight)
636
+ .addParameter(filename)
637
+ .build();
638
+ this.gate.runScript(cmd!);
639
+ }
640
+
641
+ /** Czułość sensora zbliżeniowego (mniejsza wartość-większa czułość) */
642
+ get proximitySens(): number {
643
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
644
+ .get()
645
+ .addParameter(PropertyType.ProximitySens)
646
+ .build();
647
+ return this.gate.runScript(cmd!);
648
+ }
649
+ setProximitySens(value: number): void {
650
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
651
+ .set()
652
+ .addParameter(PropertyType.ProximitySens)
653
+ .addParameter(value)
654
+ .build();
655
+ this.gate.runScript(cmd!);
656
+ }
657
+
658
+ /** Czas po jakim wyświetlacz zostanie wygaszony */
659
+ get proximityTimeout(): number {
660
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
661
+ .get()
662
+ .addParameter(PropertyType.ProximityTimeout)
663
+ .build();
664
+ return this.gate.runScript(cmd!);
665
+ }
666
+ setProximityTimeout(value: number): void {
667
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
668
+ .set()
669
+ .addParameter(PropertyType.ProximityTimeout)
670
+ .addParameter(value)
671
+ .build();
672
+ this.gate.runScript(cmd!);
673
+ }
674
+
675
+ /** Sygnał sensora zbliżeniowego (wartość bezwymiarowa) */
676
+ get proximityValue(): number {
677
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
678
+ .get()
679
+ .addParameter(PropertyType.ProximityValue)
680
+ .build();
681
+ return this.gate.runScript(cmd!);
682
+ }
683
+
684
+ /** Sterowanie sygnalizacją dźwiękową: 0 - Off, 1 - On */
685
+ get buzzerValue(): BuzzerValueType {
686
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
687
+ .get()
688
+ .addParameter(PropertyType.BuzzerValue)
689
+ .build();
690
+ return this.gate.runScript(cmd!);
691
+ }
692
+ setBuzzerValue(value: BuzzerValueType): void {
693
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
694
+ .set()
695
+ .addParameter(PropertyType.BuzzerValue)
696
+ .addParameter(value)
697
+ .build();
698
+ this.gate.runScript(cmd!);
699
+ }
700
+
701
+ /** Wybór orientacji gestów: 0 - Off, 1 - Vertical, 2 - Horizontal, 3 - Vert+Horiz */
702
+ get gestureMode(): GestureModeType {
703
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
704
+ .get()
705
+ .addParameter(PropertyType.GestureMode)
706
+ .build();
707
+ return this.gate.runScript(cmd!);
708
+ }
709
+ setGestureMode(value: GestureModeType): void {
710
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
711
+ .set()
712
+ .addParameter(PropertyType.GestureMode)
713
+ .addParameter(value)
714
+ .build();
715
+ this.gate.runScript(cmd!);
716
+ }
717
+
718
+ /** Wybór czułości gestów: 1 - Low, 2 - Mid, 3 - High */
719
+ get gestureSens(): GestureSensType {
720
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
721
+ .get()
722
+ .addParameter(PropertyType.GestureSens)
723
+ .build();
724
+ return this.gate.runScript(cmd!);
725
+ }
726
+ setGestureSens(value: GestureSensType): void {
727
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
728
+ .set()
729
+ .addParameter(PropertyType.GestureSens)
730
+ .addParameter(value)
731
+ .build();
732
+ this.gate.runScript(cmd!);
733
+ }
734
+
735
+ /** Numer wyświetlanej aktualnie strony */
736
+ get pageNr(): number {
737
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
738
+ .get()
739
+ .addParameter(PropertyType.PageNr)
740
+ .build();
741
+ return this.gate.runScript(cmd!);
742
+ }
743
+ set pageNr(value: number) {
744
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
745
+ .set()
746
+ .addParameter(PropertyType.PageNr)
747
+ .addParameter(value)
748
+ .build();
749
+ this.gate.runScript(cmd!);
750
+ }
751
+
752
+ /** Informacja przed zmianą strony: 0 - ShowImmediately, 1 - ShowIconOrName, 2 - ShowGesture */
753
+ get pageDisplayMode(): PageDisplayModeType {
754
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
755
+ .get()
756
+ .addParameter(PropertyType.PageDisplayMode)
757
+ .build();
758
+ return this.gate.runScript(cmd!);
759
+ }
760
+ setPageDisplayMode(value: PageDisplayModeType): void {
761
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
762
+ .set()
763
+ .addParameter(PropertyType.PageDisplayMode)
764
+ .addParameter(value)
765
+ .build();
766
+ this.gate.runScript(cmd!);
767
+ }
768
+
769
+ /** Lokalizacja przycisków za pomocą słabego światła LED: 0 - LocationLedOFF, 1 - LocationLedON, 2 - LocationLedONforActive */
770
+ get buttonsLEDMode(): ButtonsLEDModeType {
771
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
772
+ .get()
773
+ .addParameter(PropertyType.ButtonsLEDMode)
774
+ .build();
775
+ return this.gate.runScript(cmd!);
776
+ }
777
+ setButtonsLEDMode(value: ButtonsLEDModeType): void {
778
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
779
+ .set()
780
+ .addParameter(PropertyType.ButtonsLEDMode)
781
+ .addParameter(value)
782
+ .build();
783
+ this.gate.runScript(cmd!);
784
+ }
785
+
786
+ /** Źródło, które przełącza strony: 0 - Command, 1 - Gesture/Command */
787
+ get pageControlMode(): PageControlModeType {
788
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
789
+ .get()
790
+ .addParameter(PropertyType.PageControlMode)
791
+ .build();
792
+ return this.gate.runScript(cmd!);
793
+ }
794
+ setPageControlMode(value: PageControlModeType): void {
795
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
796
+ .set()
797
+ .addParameter(PropertyType.PageControlMode)
798
+ .addParameter(value)
799
+ .build();
800
+ this.gate.runScript(cmd!);
801
+ }
802
+
803
+ /** Wyświetlanie informacji o aktualnie wykonanym geście: 0 - Off, 1 - On */
804
+ get gestureDisplayMode(): GestureDisplayModeType {
805
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
806
+ .get()
807
+ .addParameter(PropertyType.GestureDisplayMode)
808
+ .build();
809
+ return this.gate.runScript(cmd!);
810
+ }
811
+ setGestureDisplayMode(value: GestureDisplayModeType): void {
812
+ const cmd: string | null = rawExecutionBuilderFactory(this.objectName)
813
+ .set()
814
+ .addParameter(PropertyType.GestureDisplayMode)
815
+ .addParameter(value)
816
+ .build();
817
+ this.gate.runScript(cmd!);
818
+ }
819
+ }
820
+
821
+ class Panel implements IPanel {
822
+ private onGestureUpCallbacks: Array<() => void> = [];
823
+ private onGestureDownCallbacks: Array<() => void> = [];
824
+ private onGestureLeftCallbacks: Array<() => void> = [];
825
+ private onGestureRightCallbacks: Array<() => void> = [];
826
+ private onProximityDetectCallbacks: Array<() => void> = [];
827
+ private onPageChangeCallbacks: Array<() => void> = [];
828
+ private onDisplayOnCallbacks: Array<() => void> = [];
829
+ private onDisplayOffCallbacks: Array<() => void> = [];
830
+
831
+ constructor(private raw: PanelRaw) {
832
+ this.raw.add_event(EventType.OnGestureUp, () => {
833
+ this.onGestureUpCallbacks.forEach(callback => { callback(); });
834
+ });
835
+ this.raw.add_event(EventType.OnGestureDown, () => {
836
+ this.onGestureDownCallbacks.forEach(callback => { callback(); });
837
+ });
838
+ this.raw.add_event(EventType.OnGestureLeft, () => {
839
+ this.onGestureLeftCallbacks.forEach(callback => { callback(); });
840
+ });
841
+ this.raw.add_event(EventType.OnGestureRight, () => {
842
+ this.onGestureRightCallbacks.forEach(callback => { callback(); });
843
+ });
844
+ this.raw.add_event(EventType.OnProximityDetect, () => {
845
+ this.onProximityDetectCallbacks.forEach(callback => { callback(); });
846
+ });
847
+ this.raw.add_event(EventType.OnPageChange, () => {
848
+ this.onPageChangeCallbacks.forEach(callback => { callback(); });
849
+ });
850
+ this.raw.add_event(EventType.OnDisplayOn, () => {
851
+ this.onDisplayOnCallbacks.forEach(callback => { callback(); });
852
+ });
853
+ this.raw.add_event(EventType.OnDisplayOff, () => {
854
+ this.onDisplayOffCallbacks.forEach(callback => { callback(); });
855
+ });
856
+ }
857
+
858
+ /**
859
+ * Zdarzenie wywoływane w przypadku wykonania gestu w górę
860
+ * @param callback
861
+ */
862
+ addOnGestureUp(callback: () => void): void {
863
+ this.onGestureUpCallbacks.push(callback);
864
+ }
865
+ /**
866
+ * Zdarzenie wywoływane w przypadku wykonania gestu w dół
867
+ * @param callback
868
+ */
869
+ addOnGestureDown(callback: () => void): void {
870
+ this.onGestureDownCallbacks.push(callback);
871
+ }
872
+ /**
873
+ * Zdarzenie wywoływane w przypadku wykonania gestu w lewo
874
+ * @param callback
875
+ */
876
+ addOnGestureLeft(callback: () => void): void {
877
+ this.onGestureLeftCallbacks.push(callback);
878
+ }
879
+ /**
880
+ * Zdarzenie wywoływane w przypadku wykonania gestu w prawo
881
+ * @param callback
882
+ */
883
+ addOnGestureRight(callback: () => void): void {
884
+ this.onGestureRightCallbacks.push(callback);
885
+ }
886
+ /**
887
+ * Zdarzenie wywoływane w przypadku wykrycia zbliżającego się do wyświetlacza obiektu
888
+ * @param callback
889
+ */
890
+ addOnProximityDetect(callback: () => void): void {
891
+ this.onProximityDetectCallbacks.push(callback);
892
+ }
893
+ /**
894
+ * Zdarzenie wywoływane w przypadku zmiany strony w panelu
895
+ * @param callback
896
+ */
897
+ addOnPageChange(callback: () => void): void {
898
+ this.onPageChangeCallbacks.push(callback);
899
+ }
900
+ /**
901
+ * Zdarzenie wywoływane w przypadku wybudzenia wyświetlacza
902
+ * @param callback
903
+ */
904
+ addOnDisplayOn(callback: () => void): void {
905
+ this.onDisplayOnCallbacks.push(callback);
906
+ }
907
+ /**
908
+ * Zdarzenie wywoływane w przypadku wyłączenia wyświetlacza
909
+ * @param callback
910
+ */
911
+ addOnDisplayOff(callback: () => void): void {
912
+ this.onDisplayOffCallbacks.push(callback);
913
+ }
914
+ /** Wybudza wyświetlacz z trybu uśpienia */
915
+ switchOnDisplay(): void {
916
+ this.raw.execute(MethodType.SwitchOnDisplay);
917
+ }
918
+ /** Zmienia tryb wyświetlania na 'buttons'. Czyści wyświetlacz i wyświetla ponownie ikony (lub tekst) dla wszystkich przycisków */
919
+ showButtons(): void {
920
+ this.raw.execute(MethodType.ShowButtons);
921
+ }
922
+ /** Czyści zawartość wyświetlacza w trybie 'freedraw' */
923
+ clearScreen(): void {
924
+ this.raw.execute(MethodType.ClearScreen);
925
+ }
926
+ /**
927
+ * Wyświetla tekst w trybie 'freedraw'. x, y - współrzędne w pikselach; txt - tekst; fontSize - rozmiar czcionki (1: 10p, 2: 14p, 3: 32p)
928
+ * @param {number} x
929
+ * @param {number} y
930
+ * @param {string} txt
931
+ * @param {number} fontSize
932
+ */
933
+ printText(x: number, y: number, txt: string, fontSize: number): void {
934
+ this.raw.execute(MethodType.PrintText, x, y, txt, fontSize);
935
+ }
936
+ /**
937
+ * Wyświetla liczbę w trybie 'freedraw'. x, y - współrzędne w pikselach; number - wartość; precision - miejsca po przecinku; fontSize - rozmiar czcionki (1: 10p, 2: 14p, 3: 32p)
938
+ * @param {number} x
939
+ * @param {number} y
940
+ * @param {number} number
941
+ * @param {number} precision
942
+ * @param {number} fontSize
943
+ */
944
+ printFloat(x: number, y: number, number: number, precision: number, fontSize: number): void {
945
+ this.raw.execute(MethodType.PrintFloat, x, y, number, precision, fontSize);
946
+ }
947
+ /**
948
+ * Rysuje linię w trybie 'freedraw'. x, y - współrzędne początkowe; xe, ye - końcowe; color - 0 czarny, 1 biały
949
+ * @param {number} x
950
+ * @param {number} y
951
+ * @param {number} xe
952
+ * @param {number} ye
953
+ * @param {number} color
954
+ */
955
+ drawLine(x: number, y: number, xe: number, ye: number, color: number): void {
956
+ this.raw.execute(MethodType.DrawLine, x, y, xe, ye, color);
957
+ }
958
+ /**
959
+ * Rysuje wypełniony prostokąt w trybie 'freedraw'. x, y - współrzędne; w - szerokość; h - wysokość; color - 0 czarny, 1 biały
960
+ * @param {number} x
961
+ * @param {number} y
962
+ * @param {number} w
963
+ * @param {number} h
964
+ * @param {number} color
965
+ */
966
+ drawBox(x: number, y: number, w: number, h: number, color: number): void {
967
+ this.raw.execute(MethodType.DrawBox, x, y, w, h, color);
968
+ }
969
+ /**
970
+ * Rysuje punkt w trybie 'freedraw'. x, y - współrzędne w pikselach; color - 0 czarny, 1 biały
971
+ * @param {number} x
972
+ * @param {number} y
973
+ * @param {number} color
974
+ */
975
+ drawPoint(x: number, y: number, color: number): void {
976
+ this.raw.execute(MethodType.DrawPoint, x, y, color);
977
+ }
978
+ /**
979
+ * Rysuje ikonę (bmp) w trybie 'freedraw'. x, y - współrzędne w pikselach; filename - nazwa ikony bez rozszerzenia
980
+ * @param {number} x
981
+ * @param {number} y
982
+ * @param {string} filename
983
+ */
984
+ drawIcon(x: number, y: number, filename: string): void {
985
+ this.raw.execute(MethodType.DrawIcon, x, y, filename);
986
+ }
987
+ /** Wyświetla zawartość bufora pamięci graficznej. Zmienia tryb wyświetlania na 'freedraw' */
988
+ displayContent(): void {
989
+ this.raw.execute(MethodType.DisplayContent);
990
+ }
991
+ /**
992
+ * Generuje dźwięk o danej częstotliwości [Hz], czasie trwania [ms] i głośności
993
+ * @param {number} frequency
994
+ * @param {number} duration
995
+ * @param {number} volume
996
+ * @param {number} reserved
997
+ */
998
+ setBeep(frequency: number, duration: number, volume: number, reserved: number): void {
999
+ this.raw.execute(MethodType.SetBeep, frequency, duration, volume, reserved);
1000
+ }
1001
+ /**
1002
+ * Ustawia numer wyświetlanej strony
1003
+ * @param {number} nr
1004
+ */
1005
+ setPageNr(nr: number): void {
1006
+ this.raw.execute(MethodType.SetPageNr, nr);
1007
+ }
1008
+ /** Wyświetla następną stronę */
1009
+ setNextPage(): void {
1010
+ this.raw.execute(MethodType.SetNextPage);
1011
+ }
1012
+ /** Wyświetla poprzednią stronę */
1013
+ setPrevPage(): void {
1014
+ this.raw.execute(MethodType.SetPrevPage);
1015
+ }
1016
+ /** Wyzwala wywołanie zdarzenia OnDraw w przypadku gdy OLED jest aktywny */
1017
+ draw(): void {
1018
+ this.raw.execute(MethodType.Draw);
1019
+ }
1020
+ /**
1021
+ * Zablokowanie działania przycisków, gestów oraz odświeżania ekranu na czas czyszczenia panelu (czas trwania blokady wyrażony w sekundach)
1022
+ * @param {number} duration
1023
+ */
1024
+ startCleaningMode(duration: number): void {
1025
+ this.raw.execute(MethodType.StartCleaningMode, duration);
1026
+ }
1027
+ /** Nazwa pliku BMP z ikoną dla gestu Góra (bez rozszerzenia) */
1028
+ get gestureIconUp(): string {
1029
+ return this.raw.get(PropertyType.GestureIconUp);
1030
+ }
1031
+ setGestureIconUp(filename: string): void {
1032
+ this.raw.set(PropertyType.GestureIconUp, filename);
1033
+ }
1034
+ /** Nazwa pliku BMP z ikoną dla gestu Dół (bez rozszerzenia) */
1035
+ get gestureIconDown(): string {
1036
+ return this.raw.get(PropertyType.GestureIconDown);
1037
+ }
1038
+ setGestureIconDown(filename: string): void {
1039
+ this.raw.set(PropertyType.GestureIconDown, filename);
1040
+ }
1041
+ /** Nazwa pliku BMP z ikoną dla gestu Lewo (bez rozszerzenia) */
1042
+ get gestureIconLeft(): string {
1043
+ return this.raw.get(PropertyType.GestureIconLeft);
1044
+ }
1045
+ setGestureIconLeft(filename: string): void {
1046
+ this.raw.set(PropertyType.GestureIconLeft, filename);
1047
+ }
1048
+ /** Nazwa pliku BMP z ikoną dla gestu Prawo (bez rozszerzenia) */
1049
+ get gestureIconRight(): string {
1050
+ return this.raw.get(PropertyType.GestureIconRight);
1051
+ }
1052
+ setGestureIconRight(filename: string): void {
1053
+ this.raw.set(PropertyType.GestureIconRight, filename);
1054
+ }
1055
+ /** Czułość sensora zbliżeniowego (mniejsza wartość-większa czułość) */
1056
+ get proximitySens(): number {
1057
+ return this.raw.get(PropertyType.ProximitySens);
1058
+ }
1059
+ setProximitySens(value: number): void {
1060
+ this.raw.set(PropertyType.ProximitySens, value);
1061
+ }
1062
+ /** Czas po jakim wyświetlacz zostanie wygaszony */
1063
+ get proximityTimeout(): number {
1064
+ return this.raw.get(PropertyType.ProximityTimeout);
1065
+ }
1066
+ setProximityTimeout(value: number): void {
1067
+ this.raw.set(PropertyType.ProximityTimeout, value);
1068
+ }
1069
+ /** Sygnał sensora zbliżeniowego (wartość bezwymiarowa) */
1070
+ get proximityValue(): number {
1071
+ return this.raw.get(PropertyType.ProximityValue);
1072
+ }
1073
+ /** Sterowanie sygnalizacją dźwiękową: 0 - Off, 1 - On */
1074
+ get buzzerValue(): BuzzerValueType {
1075
+ return this.raw.get(PropertyType.BuzzerValue);
1076
+ }
1077
+ setBuzzerValue(value: BuzzerValueType): void {
1078
+ this.raw.set(PropertyType.BuzzerValue, value);
1079
+ }
1080
+ /** Wybór orientacji gestów: 0 - Off, 1 - Vertical, 2 - Horizontal, 3 - Vert+Horiz */
1081
+ get gestureMode(): GestureModeType {
1082
+ return this.raw.get(PropertyType.GestureMode);
1083
+ }
1084
+ setGestureMode(value: GestureModeType): void {
1085
+ this.raw.set(PropertyType.GestureMode, value);
1086
+ }
1087
+ /** Wybór czułości gestów: 1 - Low, 2 - Mid, 3 - High */
1088
+ get gestureSens(): GestureSensType {
1089
+ return this.raw.get(PropertyType.GestureSens);
1090
+ }
1091
+ setGestureSens(value: GestureSensType): void {
1092
+ this.raw.set(PropertyType.GestureSens, value);
1093
+ }
1094
+ /** Numer wyświetlanej aktualnie strony */
1095
+ get pageNr(): number {
1096
+ return this.raw.get(PropertyType.PageNr);
1097
+ }
1098
+ set pageNr(value: number) {
1099
+ this.raw.set(PropertyType.PageNr, value);
1100
+ }
1101
+ /** Informacja przed zmianą strony: 0 - ShowImmediately, 1 - ShowIconOrName, 2 - ShowGesture */
1102
+ get pageDisplayMode(): PageDisplayModeType {
1103
+ return this.raw.get(PropertyType.PageDisplayMode);
1104
+ }
1105
+ setPageDisplayMode(value: PageDisplayModeType): void {
1106
+ this.raw.set(PropertyType.PageDisplayMode, value);
1107
+ }
1108
+ /** Lokalizacja przycisków za pomocą słabego światła LED: 0 - LocationLedOFF, 1 - LocationLedON, 2 - LocationLedONforActive */
1109
+ get buttonsLEDMode(): ButtonsLEDModeType {
1110
+ return this.raw.get(PropertyType.ButtonsLEDMode);
1111
+ }
1112
+ setButtonsLEDMode(value: ButtonsLEDModeType): void {
1113
+ this.raw.set(PropertyType.ButtonsLEDMode, value);
1114
+ }
1115
+ /** Źródło, które przełącza strony: 0 - Command, 1 - Gesture/Command */
1116
+ get pageControlMode(): PageControlModeType {
1117
+ return this.raw.get(PropertyType.PageControlMode);
1118
+ }
1119
+ setPageControlMode(value: PageControlModeType): void {
1120
+ this.raw.set(PropertyType.PageControlMode, value);
1121
+ }
1122
+ /** Wyświetlanie informacji o aktualnie wykonanym geście: 0 - Off, 1 - On */
1123
+ get gestureDisplayMode(): GestureDisplayModeType {
1124
+ return this.raw.get(PropertyType.GestureDisplayMode);
1125
+ }
1126
+ setGestureDisplayMode(value: GestureDisplayModeType): void {
1127
+ this.raw.set(PropertyType.GestureDisplayMode, value);
1128
+ }
1129
+ }
1130
+
1131
+ export {
1132
+ Panel, PanelRaw, PanelRemote,
1133
+ BuzzerValueType, GestureModeType, GestureSensType,
1134
+ PageDisplayModeType, ButtonsLEDModeType, PageControlModeType, GestureDisplayModeType
1135
+ }