]> git.vomp.tv Git - vompclient-marten.git/blob - vmute.cc
Fix for cant power down if server unavailable
[vompclient-marten.git] / vmute.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 "vmute.h"
22
23 VMute::VMute()
24 {
25   isMuted = Audio::getInstance()->toggleUserMute();
26
27   if (Video::getInstance()->getFormat() == Video::PAL)
28   {
29     setScreenPos(600, 500);
30   }
31   else
32   {
33     setScreenPos(590, 400);
34   }
35
36   setDimensions(40, 40);
37
38   setBackgroundColour(Colour::VIEWBACKGROUND);
39 }
40
41 void VMute::draw()
42 {
43   View::draw();
44
45   WSymbol* w = new WSymbol;
46   if (isMuted) w->nextSymbol = WSymbol::MUTE;
47   else w->nextSymbol = WSymbol::UNMUTE;
48   w->setScreenPos(screenX + 5, screenY + 5);
49   w->draw();
50
51   delete w;
52 }
53
54 int VMute::handleCommand(int command)
55 {
56   switch(command)
57   {
58     case Remote::MUTE:
59     {
60       isMuted = Audio::getInstance()->toggleUserMute();
61       draw();
62       show();
63       // handled
64       return 2;
65     }
66   }
67
68   // allow command to drop through to other views
69   return 0;
70 }