Fix for volume rocker bug
[pierogi] / pirsecondaryform.cpp
1 #include "pirsecondaryform.h"
2 #include "ui_pirsecondaryform.h"
3 #include "mainwindow.h"
4 #include "pirkeysetmanager.h"
5
6 PIRSecondaryForm::PIRSecondaryForm(QWidget *parent) :
7   QWidget(parent),
8   ui(new Ui::PIRSecondaryForm)
9 {
10   ui->setupUi(this);
11
12   mainWindow = dynamic_cast<MainWindow *>(parent);
13
14   setAttribute(Qt::WA_Maemo5StackedWindow);
15   setWindowFlags(windowFlags() | Qt::Window);
16 }
17
18 PIRSecondaryForm::~PIRSecondaryForm()
19 {
20   delete ui;
21 }
22
23 void PIRSecondaryForm::enableButtons(
24   const PIRKeysetManager *keyset,
25   unsigned int id)
26 {
27   // TV Tab
28   emit teletextEnabled(keyset->hasKey(id, Teletext_Key));
29   emit teletextSizeEnabled(keyset->hasKey(id, TeletextSize_Key));
30   emit favoritesEnabled(keyset->hasKey(id, Favorites_Key));
31   emit pageUpEnabled(keyset->hasKey(id, PageUp_Key));
32   emit teletextHoldEnabled(keyset->hasKey(id, TeletextHold_Key));
33   emit teletextRevealEnabled(keyset->hasKey(id, TeletextReveal_Key));
34   emit liveTVEnabled(keyset->hasKey(id, LiveTV_Key));
35   emit pageDownEnabled(keyset->hasKey(id, PageDown_Key));
36   emit pipEnabled(keyset->hasKey(id, PIP_Key));
37   emit pipSwapEnabled(keyset->hasKey(id, PIPSwap_Key));
38   emit pipMoveEnabled(keyset->hasKey(id, PIPMove_Key));
39   emit pipSourceEnabled(keyset->hasKey(id, PIPSource_Key));
40   emit pipChannelUpEnabled(keyset->hasKey(id, PIPChannelUp_Key));
41   emit pipChannelDownEnabled(keyset->hasKey(id, PIPChannelDown_Key));
42   emit pipPauseEnabled(keyset->hasKey(id, PIPPause_Key));
43   emit pipSizeEnabled(keyset->hasKey(id, PIPSize_Key));
44
45   // Media2 Tab
46   emit tunerBandEnabled(keyset->hasKey(id, TunerBand_Key));
47   emit programEnabled(keyset->hasKey(id, Program_Key));
48   emit memoryEnabled(keyset->hasKey(id, Memory_Key));
49   emit callEnabled(keyset->hasKey(id, Call_Key));
50   emit autoTrackingEnabled(keyset->hasKey(id, AutoTracking_Key));
51   emit trackingMinusEnabled(keyset->hasKey(id, TrackingMinus_Key));
52   emit trackingPlusEnabled(keyset->hasKey(id, TrackingPlus_Key));
53   emit vhsSpeedEnabled(keyset->hasKey(id, VHSSpeed_Key));
54   emit slowEnabled(keyset->hasKey(id, Slow_Key));
55   emit slowMinusEnabled(keyset->hasKey(id, SlowMinus_Key));
56   emit slowPlusEnabled(keyset->hasKey(id, SlowPlus_Key));
57   emit nextDiscEnabled(keyset->hasKey(id, NextDisc_Key));
58   emit repeatEnabled(keyset->hasKey(id, Repeat_Key));
59   emit repeatABEnabled(keyset->hasKey(id, RepeatAB_Key));
60   emit randomEnabled(keyset->hasKey(id, Random_Key));
61   emit discTitleEnabled(keyset->hasKey(id, DiscTitle_Key));
62
63   // Input Tab
64   emit cdInputEnabled(keyset->hasKey(id, CDInput_Key));
65   emit tapeInputEnabled(keyset->hasKey(id, TapeInput_Key));
66   emit phonoInputEnabled(keyset->hasKey(id, PhonoInput_Key));
67   emit tunerInputEnabled(keyset->hasKey(id, TunerInput_Key));
68   emit pcInputEnabled(keyset->hasKey(id, PCInput_Key));
69   emit hdmiInputEnabled(keyset->hasKey(id, HDMIInput_Key));
70   emit dvdInputEnabled(keyset->hasKey(id, DVDInput_Key));
71   emit vcrInputEnabled(keyset->hasKey(id, VCRInput_Key));
72   emit antennaInputEnabled(keyset->hasKey(id, AntennaInput_Key));
73   emit cableInputEnabled(keyset->hasKey(id, CableInput_Key));
74   emit satelliteInputEnabled(keyset->hasKey(id, SatInput_Key));
75   emit auxInputEnabled(keyset->hasKey(id, AuxInput_Key));
76
77   // Adjust Tab
78   emit bassUpEnabled(keyset->hasKey(id, BassUp_Key));
79   emit trebleUpEnabled(keyset->hasKey(id, TrebleUp_Key));
80   emit enhancedBassEnabled(keyset->hasKey(id, EnhancedBass_Key));
81   emit noiseReductionEnabled(keyset->hasKey(id, NoiseReduction_Key));
82   emit bassDownEnabled(keyset->hasKey(id, BassDown_Key));
83   emit trebleDownEnabled(keyset->hasKey(id, TrebleDown_Key));
84   emit balanceLeftEnabled(keyset->hasKey(id, BalanceLeft_Key));
85   emit balanceRightEnabled(keyset->hasKey(id, BalanceRight_Key));
86   emit surroundEnabled(keyset->hasKey(id, Surround_Key));
87   emit colorUpEnabled(keyset->hasKey(id, ColorUp_Key));
88   emit brightnessUpEnabled(keyset->hasKey(id, BrightnessUp_Key));
89   emit contrastUpEnabled(keyset->hasKey(id, ContrastUp_Key));
90   emit zoomEnabled(keyset->hasKey(id, Zoom_Key));
91   emit colorDownEnabled(keyset->hasKey(id, ColorDown_Key));
92   emit brightnessDownEnabled(keyset->hasKey(id, BrightnessDown_Key));
93   emit contrastDownEnabled(keyset->hasKey(id, ContrastDown_Key));
94 }
95
96 // TV Tab
97
98 void PIRSecondaryForm::on_teletextButton_pressed()
99 {
100   mainWindow->startRepeating(Teletext_Key);
101 }
102
103 void PIRSecondaryForm::on_teletextButton_released()
104 {
105   mainWindow->stopRepeating();
106 }
107
108 void PIRSecondaryForm::on_teletextSizeButton_pressed()
109 {
110   mainWindow->startRepeating(TeletextSize_Key);
111 }
112
113 void PIRSecondaryForm::on_teletextSizeButton_released()
114 {
115   mainWindow->stopRepeating();
116 }
117
118 void PIRSecondaryForm::on_favoritesButton_pressed()
119 {
120   mainWindow->startRepeating(Favorites_Key);
121 }
122
123 void PIRSecondaryForm::on_favoritesButton_released()
124 {
125   mainWindow->stopRepeating();
126 }
127
128 void PIRSecondaryForm::on_pageUpButton_pressed()
129 {
130   mainWindow->startRepeating(PageUp_Key);
131 }
132
133 void PIRSecondaryForm::on_pageUpButton_released()
134 {
135   mainWindow->stopRepeating();
136 }
137
138 void PIRSecondaryForm::on_teletextHoldButton_pressed()
139 {
140   mainWindow->startRepeating(TeletextHold_Key);
141 }
142
143 void PIRSecondaryForm::on_teletextHoldButton_released()
144 {
145   mainWindow->stopRepeating();
146 }
147
148 void PIRSecondaryForm::on_teletextRevealButton_pressed()
149 {
150   mainWindow->startRepeating(TeletextReveal_Key);
151 }
152
153 void PIRSecondaryForm::on_teletextRevealButton_released()
154 {
155   mainWindow->stopRepeating();
156 }
157
158 void PIRSecondaryForm::on_liveTVButton_pressed()
159 {
160   mainWindow->startRepeating(LiveTV_Key);
161 }
162
163 void PIRSecondaryForm::on_liveTVButton_released()
164 {
165   mainWindow->stopRepeating();
166 }
167
168 void PIRSecondaryForm::on_pageDownButton_pressed()
169 {
170   mainWindow->startRepeating(PageDown_Key);
171 }
172
173 void PIRSecondaryForm::on_pageDownButton_released()
174 {
175   mainWindow->stopRepeating();
176 }
177
178 void PIRSecondaryForm::on_pipButton_pressed()
179 {
180   mainWindow->startRepeating(PIP_Key);
181 }
182
183 void PIRSecondaryForm::on_pipButton_released()
184 {
185   mainWindow->stopRepeating();
186 }
187
188 void PIRSecondaryForm::on_pipSwapButton_pressed()
189 {
190   mainWindow->startRepeating(PIPSwap_Key);
191 }
192
193 void PIRSecondaryForm::on_pipSwapButton_released()
194 {
195   mainWindow->stopRepeating();
196 }
197
198 void PIRSecondaryForm::on_pipMoveButton_pressed()
199 {
200   mainWindow->startRepeating(PIPMove_Key);
201 }
202
203 void PIRSecondaryForm::on_pipMoveButton_released()
204 {
205   mainWindow->stopRepeating();
206 }
207
208 void PIRSecondaryForm::on_pipSourceButton_pressed()
209 {
210   mainWindow->startRepeating(PIPSource_Key);
211 }
212
213 void PIRSecondaryForm::on_pipSourceButton_released()
214 {
215   mainWindow->stopRepeating();
216 }
217
218 void PIRSecondaryForm::on_pipChannelUpButton_pressed()
219 {
220   mainWindow->startRepeating(PIPChannelUp_Key);
221 }
222
223 void PIRSecondaryForm::on_pipChannelUpButton_released()
224 {
225   mainWindow->stopRepeating();
226 }
227
228 void PIRSecondaryForm::on_pipChannelDownButton_pressed()
229 {
230   mainWindow->startRepeating(PIPChannelDown_Key);
231 }
232
233 void PIRSecondaryForm::on_pipChannelDownButton_released()
234 {
235   mainWindow->stopRepeating();
236 }
237
238 void PIRSecondaryForm::on_pipPauseButton_pressed()
239 {
240   mainWindow->startRepeating(PIPPause_Key);
241 }
242
243 void PIRSecondaryForm::on_pipPauseButton_released()
244 {
245   mainWindow->stopRepeating();
246 }
247
248 void PIRSecondaryForm::on_pipSizeButton_pressed()
249 {
250   mainWindow->startRepeating(PIPSize_Key);
251 }
252
253 void PIRSecondaryForm::on_pipSizeButton_released()
254 {
255   mainWindow->stopRepeating();
256 }
257
258
259 // Media 2 Tab
260
261 void PIRSecondaryForm::on_tunerBandButton_pressed()
262 {
263   mainWindow->startRepeating(TunerBand_Key);
264 }
265
266 void PIRSecondaryForm::on_tunerBandButton_released()
267 {
268   mainWindow->stopRepeating();
269 }
270
271 void PIRSecondaryForm::on_programButton_pressed()
272 {
273   mainWindow->startRepeating(Program_Key);
274 }
275
276 void PIRSecondaryForm::on_programButton_released()
277 {
278   mainWindow->stopRepeating();
279 }
280
281 void PIRSecondaryForm::on_memoryButton_pressed()
282 {
283   mainWindow->startRepeating(Memory_Key);
284 }
285
286 void PIRSecondaryForm::on_memoryButton_released()
287 {
288   mainWindow->stopRepeating();
289 }
290
291 void PIRSecondaryForm::on_callButton_pressed()
292 {
293   mainWindow->startRepeating(Call_Key);
294 }
295
296 void PIRSecondaryForm::on_callButton_released()
297 {
298   mainWindow->stopRepeating();
299 }
300
301 void PIRSecondaryForm::on_autoTrackingButton_pressed()
302 {
303   mainWindow->startRepeating(AutoTracking_Key);
304 }
305
306 void PIRSecondaryForm::on_autoTrackingButton_released()
307 {
308   mainWindow->stopRepeating();
309 }
310
311 void PIRSecondaryForm::on_trackingMinusButton_pressed()
312 {
313   mainWindow->startRepeating(TrackingMinus_Key);
314 }
315
316 void PIRSecondaryForm::on_trackingMinusButton_released()
317 {
318   mainWindow->stopRepeating();
319 }
320
321 void PIRSecondaryForm::on_trackingPlusButton_pressed()
322 {
323   mainWindow->startRepeating(TrackingPlus_Key);
324 }
325
326 void PIRSecondaryForm::on_trackingPlusButton_released()
327 {
328   mainWindow->stopRepeating();
329 }
330
331 void PIRSecondaryForm::on_vhsSpeedButton_pressed()
332 {
333   mainWindow->startRepeating(VHSSpeed_Key);
334 }
335
336 void PIRSecondaryForm::on_vhsSpeedButton_released()
337 {
338   mainWindow->stopRepeating();
339 }
340
341 void PIRSecondaryForm::on_slowButton_pressed()
342 {
343   mainWindow->startRepeating(Slow_Key);
344 }
345
346 void PIRSecondaryForm::on_slowButton_released()
347 {
348   mainWindow->stopRepeating();
349 }
350
351 void PIRSecondaryForm::on_slowMinusButton_pressed()
352 {
353   mainWindow->startRepeating(SlowMinus_Key);
354 }
355
356 void PIRSecondaryForm::on_slowMinusButton_released()
357 {
358   mainWindow->stopRepeating();
359 }
360
361 void PIRSecondaryForm::on_slowPlusButton_pressed()
362 {
363   mainWindow->startRepeating(SlowPlus_Key);
364 }
365
366 void PIRSecondaryForm::on_slowPlusButton_released()
367 {
368   mainWindow->stopRepeating();
369 }
370
371 void PIRSecondaryForm::on_discSelectButton_pressed()
372 {
373   mainWindow->startRepeating(NextDisc_Key);
374 }
375
376 void PIRSecondaryForm::on_discSelectButton_released()
377 {
378   mainWindow->stopRepeating();
379 }
380
381 void PIRSecondaryForm::on_repeatButton_pressed()
382 {
383   mainWindow->startRepeating(Repeat_Key);
384 }
385
386 void PIRSecondaryForm::on_repeatButton_released()
387 {
388   mainWindow->stopRepeating();
389 }
390
391 void PIRSecondaryForm::on_repeatABButton_pressed()
392 {
393   mainWindow->startRepeating(RepeatAB_Key);
394 }
395
396 void PIRSecondaryForm::on_repeatABButton_released()
397 {
398   mainWindow->stopRepeating();
399 }
400
401 void PIRSecondaryForm::on_randomButton_pressed()
402 {
403   mainWindow->startRepeating(Random_Key);
404 }
405
406 void PIRSecondaryForm::on_randomButton_released()
407 {
408   mainWindow->stopRepeating();
409 }
410
411 void PIRSecondaryForm::on_discTitleButton_pressed()
412 {
413   mainWindow->startRepeating(DiscTitle_Key);
414 }
415
416 void PIRSecondaryForm::on_discTitleButton_released()
417 {
418   mainWindow->stopRepeating();
419 }
420
421
422 // Input Tab
423
424 void PIRSecondaryForm::on_cdInputButton_pressed()
425 {
426   mainWindow->startRepeating(CDInput_Key);
427 }
428
429 void PIRSecondaryForm::on_cdInputButton_released()
430 {
431   mainWindow->stopRepeating();
432 }
433
434 void PIRSecondaryForm::on_tapeInputButton_pressed()
435 {
436   mainWindow->startRepeating(TapeInput_Key);
437 }
438
439 void PIRSecondaryForm::on_tapeInputButton_released()
440 {
441   mainWindow->stopRepeating();
442 }
443
444 void PIRSecondaryForm::on_phonoInputButton_pressed()
445 {
446   mainWindow->startRepeating(PhonoInput_Key);
447 }
448
449 void PIRSecondaryForm::on_phonoInputButton_released()
450 {
451   mainWindow->stopRepeating();
452 }
453
454 void PIRSecondaryForm::on_tunerInputButton_pressed()
455 {
456   mainWindow->startRepeating(TunerInput_Key);
457 }
458
459 void PIRSecondaryForm::on_tunerInputButton_released()
460 {
461   mainWindow->stopRepeating();
462 }
463
464 void PIRSecondaryForm::on_pcInputButton_pressed()
465 {
466   mainWindow->startRepeating(PCInput_Key);
467 }
468
469 void PIRSecondaryForm::on_pcInputButton_released()
470 {
471   mainWindow->stopRepeating();
472 }
473
474 void PIRSecondaryForm::on_hdmiInputButton_pressed()
475 {
476   mainWindow->startRepeating(HDMIInput_Key);
477 }
478
479 void PIRSecondaryForm::on_hdmiInputButton_released()
480 {
481   mainWindow->stopRepeating();
482 }
483
484 void PIRSecondaryForm::on_dvdInputButton_pressed()
485 {
486   mainWindow->startRepeating(DVDInput_Key);
487 }
488
489 void PIRSecondaryForm::on_dvdInputButton_released()
490 {
491   mainWindow->stopRepeating();
492 }
493
494 void PIRSecondaryForm::on_vcrInputButton_pressed()
495 {
496   mainWindow->startRepeating(VCRInput_Key);
497 }
498
499 void PIRSecondaryForm::on_vcrInputButton_released()
500 {
501   mainWindow->stopRepeating();
502 }
503
504 void PIRSecondaryForm::on_antennaInputButton_pressed()
505 {
506   mainWindow->startRepeating(AntennaInput_Key);
507 }
508
509 void PIRSecondaryForm::on_antennaInputButton_released()
510 {
511   mainWindow->stopRepeating();
512 }
513
514 void PIRSecondaryForm::on_cableInputButton_pressed()
515 {
516   mainWindow->startRepeating(CableInput_Key);
517 }
518
519 void PIRSecondaryForm::on_cableInputButton_released()
520 {
521   mainWindow->stopRepeating();
522 }
523
524 void PIRSecondaryForm::on_satelliteInputButton_pressed()
525 {
526   mainWindow->startRepeating(SatInput_Key);
527 }
528
529 void PIRSecondaryForm::on_satelliteInputButton_released()
530 {
531   mainWindow->stopRepeating();
532 }
533
534 void PIRSecondaryForm::on_auxInputButton_pressed()
535 {
536   mainWindow->startRepeating(AuxInput_Key);
537 }
538
539 void PIRSecondaryForm::on_auxInputButton_released()
540 {
541   mainWindow->stopRepeating();
542 }
543
544
545 // Adjust Tab
546
547 void PIRSecondaryForm::on_bassUpButton_pressed()
548 {
549   mainWindow->startRepeating(BassUp_Key);
550 }
551
552 void PIRSecondaryForm::on_bassUpButton_released()
553 {
554   mainWindow->stopRepeating();
555 }
556
557 void PIRSecondaryForm::on_trebleUpButton_pressed()
558 {
559   mainWindow->startRepeating(TrebleUp_Key);
560 }
561
562 void PIRSecondaryForm::on_trebleUpButton_released()
563 {
564   mainWindow->stopRepeating();
565 }
566
567 void PIRSecondaryForm::on_enhancedBassButton_pressed()
568 {
569   mainWindow->startRepeating(EnhancedBass_Key);
570 }
571
572 void PIRSecondaryForm::on_enhancedBassButton_released()
573 {
574   mainWindow->stopRepeating();
575 }
576
577 void PIRSecondaryForm::on_noiseReductionButton_pressed()
578 {
579   mainWindow->startRepeating(NoiseReduction_Key);
580 }
581
582 void PIRSecondaryForm::on_noiseReductionButton_released()
583 {
584   mainWindow->stopRepeating();
585 }
586
587 void PIRSecondaryForm::on_bassDownButton_pressed()
588 {
589   mainWindow->startRepeating(BassDown_Key);
590 }
591
592 void PIRSecondaryForm::on_bassDownButton_released()
593 {
594   mainWindow->stopRepeating();
595 }
596
597 void PIRSecondaryForm::on_trebleDownButton_pressed()
598 {
599   mainWindow->startRepeating(TrebleDown_Key);
600 }
601
602 void PIRSecondaryForm::on_trebleDownButton_released()
603 {
604   mainWindow->stopRepeating();
605 }
606
607 void PIRSecondaryForm::on_balanceLeftButton_pressed()
608 {
609   mainWindow->startRepeating(BalanceLeft_Key);
610 }
611
612 void PIRSecondaryForm::on_balanceLeftButton_released()
613 {
614   mainWindow->stopRepeating();
615 }
616
617 void PIRSecondaryForm::on_balanceRightButton_pressed()
618 {
619   mainWindow->startRepeating(BalanceRight_Key);
620 }
621
622 void PIRSecondaryForm::on_balanceRightButton_released()
623 {
624   mainWindow->stopRepeating();
625 }
626
627 void PIRSecondaryForm::on_surroundButton_pressed()
628 {
629   mainWindow->startRepeating(Surround_Key);
630 }
631
632 void PIRSecondaryForm::on_surroundButton_released()
633 {
634   mainWindow->stopRepeating();
635 }
636
637 void PIRSecondaryForm::on_colorUpButton_pressed()
638 {
639   mainWindow->startRepeating(ColorUp_Key);
640 }
641
642 void PIRSecondaryForm::on_colorUpButton_released()
643 {
644   mainWindow->stopRepeating();
645 }
646
647 void PIRSecondaryForm::on_brightnessUpButton_pressed()
648 {
649   mainWindow->startRepeating(BrightnessUp_Key);
650 }
651
652 void PIRSecondaryForm::on_brightnessUpButton_released()
653 {
654   mainWindow->stopRepeating();
655 }
656
657 void PIRSecondaryForm::on_contrastUpButton_pressed()
658 {
659   mainWindow->startRepeating(ContrastUp_Key);
660 }
661
662 void PIRSecondaryForm::on_contrastUpButton_released()
663 {
664   mainWindow->stopRepeating();
665 }
666
667 void PIRSecondaryForm::on_zoomButton_pressed()
668 {
669   mainWindow->startRepeating(Zoom_Key);
670 }
671
672 void PIRSecondaryForm::on_zoomButton_released()
673 {
674   mainWindow->stopRepeating();
675 }
676
677 void PIRSecondaryForm::on_colorDownButton_pressed()
678 {
679   mainWindow->startRepeating(ColorDown_Key);
680 }
681
682 void PIRSecondaryForm::on_colorDownButton_released()
683 {
684   mainWindow->stopRepeating();
685 }
686
687 void PIRSecondaryForm::on_brightnessDownButton_pressed()
688 {
689   mainWindow->startRepeating(BrightnessDown_Key);
690 }
691
692 void PIRSecondaryForm::on_brightnessDownButton_released()
693 {
694   mainWindow->stopRepeating();
695 }
696
697 void PIRSecondaryForm::on_contrastDownButton_pressed()
698 {
699   mainWindow->startRepeating(ContrastDown_Key);
700 }
701
702 void PIRSecondaryForm::on_contrastDownButton_released()
703 {
704   mainWindow->stopRepeating();
705 }