]> git.vomp.tv Git - vompclient.git/blob - vlivebanner.cc
Clean up of all video init system, NTSC/PAL, screen size functions.
[vompclient.git] / vlivebanner.cc
1 /*
2     Copyright 2004-2005 Chris Tallon
3
4     This file is part of VOMP.
5
6     VOMP is free software; you can redistribute it and/or modify
7     it under the terms of the GNU General Public License as published by
8     the Free Software Foundation; either version 2 of the License, or
9     (at your option) any later version.
10
11     VOMP is distributed in the hope that it will be useful,
12     but WITHOUT ANY WARRANTY; without even the implied warranty of
13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14     GNU General Public License for more details.
15
16     You should have received a copy of the GNU General Public License
17     along with VOMP; if not, write to the Free Software
18     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19 */
20
21 #include "vlivebanner.h"
22
23 VLiveBanner::VLiveBanner()
24 {
25   if (Video::getInstance()->getFormat() == Video::PAL)
26   {
27     setScreenPos(130, 370);
28   }
29   else
30   {
31     setScreenPos(120, 320);
32   }
33
34   setDimensions(120, 500);
35
36   setBackgroundColour(Colour::VIEWBACKGROUND);
37   setTitleBarOn(1);
38   setTitleText("The channel name");
39   setTitleBarColour(Colour::TITLEBARBACKGROUND);
40
41   sl.setScreenPos(screenX, screenY + 30);
42   sl.setDimensions(height - 60, width);
43 }
44
45 VLiveBanner::~VLiveBanner()
46 {
47 }
48
49 void VLiveBanner::draw()
50 {
51   int success = VDR::getInstance()->getChannelSchedule(1);
52
53   if (!success)
54   {
55     sl.addOption("No channel data available", 1);
56   }
57   else
58   {
59     sl.addOption("This Programme", 1);
60     sl.addOption("The Next Programme", 0);
61     sl.addOption("The Programme after that", 0);
62   }
63
64   View::draw();
65   sl.draw();
66   rectangle(0, height - 30, width, 30, titleBarColour);
67 }
68
69 int VLiveBanner::handleCommand(int command)
70 {
71   switch (command)
72   {
73     case Remote::OK:
74     case Remote::BACK:
75     {
76       return 4;
77     }
78     case Remote::UP:
79     {
80       sl.up();
81       sl.draw();
82
83       show();
84       return 2;
85     }
86     case Remote::DOWN:
87     {
88       sl.down();
89       sl.draw();
90
91       show();
92       return 2;
93     }
94   }
95
96   return 1;
97 }