summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2002-06-17 11:04:40 (UTC)
committer llornkcor <llornkcor>2002-06-17 11:04:40 (UTC)
commit2917d7481dc8c1b053e3212a699e64948a90ec4c (patch) (unidiff)
tree159735f0ccf4371f254f9805f93bcb428d017c01
parentb646eee10051aa1065f60113066eb0028d17efc4 (diff)
downloadopie-2917d7481dc8c1b053e3212a699e64948a90ec4c.zip
opie-2917d7481dc8c1b053e3212a699e64948a90ec4c.tar.gz
opie-2917d7481dc8c1b053e3212a699e64948a90ec4c.tar.bz2
remove mute on popup left from experimenting
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/applets/volumeapplet/volume.cpp1
1 files changed, 0 insertions, 1 deletions
diff --git a/core/applets/volumeapplet/volume.cpp b/core/applets/volumeapplet/volume.cpp
index 19e71c5..d871a35 100644
--- a/core/applets/volumeapplet/volume.cpp
+++ b/core/applets/volumeapplet/volume.cpp
@@ -1,241 +1,240 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved. 2** Copyright (C) 2000 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of Qtopia Environment. 4** This file is part of Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20 20
21 21
22#include "volume.h" 22#include "volume.h"
23 23
24#include <qpe/resource.h> 24#include <qpe/resource.h>
25#include <qpe/qpeapplication.h> 25#include <qpe/qpeapplication.h>
26#include <qpe/config.h> 26#include <qpe/config.h>
27#if ( defined Q_WS_QWS || defined(_WS_QWS_) ) && !defined(QT_NO_COP) 27#if ( defined Q_WS_QWS || defined(_WS_QWS_) ) && !defined(QT_NO_COP)
28#include <qpe/qcopenvelope_qws.h> 28#include <qpe/qcopenvelope_qws.h>
29#endif 29#endif
30 30
31#include <qpainter.h> 31#include <qpainter.h>
32#include <qcheckbox.h> 32#include <qcheckbox.h>
33#include <qslider.h> 33#include <qslider.h>
34#include <qlayout.h> 34#include <qlayout.h>
35#include <qframe.h> 35#include <qframe.h>
36#include <qpixmap.h> 36#include <qpixmap.h>
37#include <qlabel.h> 37#include <qlabel.h>
38 38
39#include <qpushbutton.h> 39#include <qpushbutton.h>
40#include <qtimer.h> 40#include <qtimer.h>
41 41
42#define RATE_TIMER_INTERVAL 100 42#define RATE_TIMER_INTERVAL 100
43// Ten times per second is fine (RATE_TIMER_INTERVAL 100). A shorter time 43// Ten times per second is fine (RATE_TIMER_INTERVAL 100). A shorter time
44// results in "hanging" buttons on the iPAQ due to quite high CPU consumption. 44// results in "hanging" buttons on the iPAQ due to quite high CPU consumption.
45 45
46VolumeControl::VolumeControl( bool showMic, QWidget *parent, const char *name ) 46VolumeControl::VolumeControl( bool showMic, QWidget *parent, const char *name )
47 : QFrame( parent, name, WDestructiveClose | WStyle_StaysOnTop | WType_Popup ) 47 : QFrame( parent, name, WDestructiveClose | WStyle_StaysOnTop | WType_Popup )
48{ 48{
49 QCopEnvelope( "QPE/System", "volumeChange(bool)" ) << TRUE; //mute
50 setFrameStyle( QFrame::PopupPanel | QFrame::Raised ); 49 setFrameStyle( QFrame::PopupPanel | QFrame::Raised );
51 createView(showMic); 50 createView(showMic);
52} 51}
53 52
54void VolumeControl::createView(bool showMic) 53void VolumeControl::createView(bool showMic)
55{ 54{
56 Config cfg("qpe"); 55 Config cfg("qpe");
57 cfg.setGroup("Volume"); 56 cfg.setGroup("Volume");
58//showMic = TRUE; 57//showMic = TRUE;
59 QHBoxLayout *hboxLayout = new QHBoxLayout(this); 58 QHBoxLayout *hboxLayout = new QHBoxLayout(this);
60 hboxLayout->setMargin( 3 ); 59 hboxLayout->setMargin( 3 );
61 hboxLayout->setSpacing( 0); 60 hboxLayout->setSpacing( 0);
62 61
63 QVBoxLayout *vboxButtons = new QVBoxLayout(this); 62 QVBoxLayout *vboxButtons = new QVBoxLayout(this);
64 upButton = new QPushButton( this ); 63 upButton = new QPushButton( this );
65 upButton->setSizePolicy( QSizePolicy( QSizePolicy::Minimum, QSizePolicy::Expanding ) ); 64 upButton->setSizePolicy( QSizePolicy( QSizePolicy::Minimum, QSizePolicy::Expanding ) );
66 upButton->setPixmap( Resource::loadPixmap( "up" ) ); 65 upButton->setPixmap( Resource::loadPixmap( "up" ) );
67 downButton = new QPushButton( this ); 66 downButton = new QPushButton( this );
68 downButton->setSizePolicy( QSizePolicy( QSizePolicy::Minimum, QSizePolicy::Expanding ) ); 67 downButton->setSizePolicy( QSizePolicy( QSizePolicy::Minimum, QSizePolicy::Expanding ) );
69 downButton->setPixmap( Resource::loadPixmap( "down" ) ); 68 downButton->setPixmap( Resource::loadPixmap( "down" ) );
70 vboxButtons->setSpacing( 2 ); 69 vboxButtons->setSpacing( 2 );
71 70
72 upButton->setFixedHeight(26); 71 upButton->setFixedHeight(26);
73 downButton->setFixedHeight(26); 72 downButton->setFixedHeight(26);
74 73
75 vboxButtons->addWidget( upButton ); 74 vboxButtons->addWidget( upButton );
76 vboxButtons->addWidget( downButton ); 75 vboxButtons->addWidget( downButton );
77 76
78 QVBoxLayout *vbox = new QVBoxLayout( this ); 77 QVBoxLayout *vbox = new QVBoxLayout( this );
79 QHBoxLayout *hbox = NULL; 78 QHBoxLayout *hbox = NULL;
80 79
81 slider = new QSlider( this ); 80 slider = new QSlider( this );
82 slider->setRange( 0, 100 ); 81 slider->setRange( 0, 100 );
83 slider->setTickmarks( QSlider::Both ); 82 slider->setTickmarks( QSlider::Both );
84 slider->setTickInterval( 20 ); 83 slider->setTickInterval( 20 );
85 slider->setFocusPolicy( QWidget::NoFocus ); 84 slider->setFocusPolicy( QWidget::NoFocus );
86 slider->setValue(cfg.readNumEntry("VolumePercent")); 85 slider->setValue(cfg.readNumEntry("VolumePercent"));
87 86
88 QVBoxLayout *sbox = new QVBoxLayout(this); 87 QVBoxLayout *sbox = new QVBoxLayout(this);
89 sbox->setMargin( 3 ); 88 sbox->setMargin( 3 );
90 sbox->setSpacing( 3 ); 89 sbox->setSpacing( 3 );
91 sbox->addWidget( new QLabel("Vol", this) , 0, Qt::AlignVCenter | Qt::AlignHCenter ); 90 sbox->addWidget( new QLabel("Vol", this) , 0, Qt::AlignVCenter | Qt::AlignHCenter );
92 sbox->addWidget( slider, 0, Qt::AlignVCenter | Qt::AlignHCenter ); 91 sbox->addWidget( slider, 0, Qt::AlignVCenter | Qt::AlignHCenter );
93 92
94// if (showMic == TRUE) { 93// if (showMic == TRUE) {
95 mic = new QSlider(this); 94 mic = new QSlider(this);
96 mic->setRange( 0, 100 ); 95 mic->setRange( 0, 100 );
97 mic->setTickmarks( QSlider::Both ); 96 mic->setTickmarks( QSlider::Both );
98 mic->setTickInterval( 20 ); 97 mic->setTickInterval( 20 );
99 mic->setFocusPolicy( QWidget::NoFocus ); 98 mic->setFocusPolicy( QWidget::NoFocus );
100 mic->setValue(cfg.readNumEntry("Mic")); 99 mic->setValue(cfg.readNumEntry("Mic"));
101 100
102 QVBoxLayout *mbox = new QVBoxLayout(this); 101 QVBoxLayout *mbox = new QVBoxLayout(this);
103 mbox->setMargin( 3 ); 102 mbox->setMargin( 3 );
104 mbox->setSpacing( 3 ); 103 mbox->setSpacing( 3 );
105 mbox->addWidget( new QLabel("Mic", this) , 0, Qt::AlignVCenter | Qt::AlignHCenter ); 104 mbox->addWidget( new QLabel("Mic", this) , 0, Qt::AlignVCenter | Qt::AlignHCenter );
106 mbox->addWidget( mic, 0, Qt::AlignVCenter | Qt::AlignHCenter ); 105 mbox->addWidget( mic, 0, Qt::AlignVCenter | Qt::AlignHCenter );
107 106
108 hbox = new QHBoxLayout( this ); 107 hbox = new QHBoxLayout( this );
109 hbox->setMargin( 3 ); 108 hbox->setMargin( 3 );
110 hbox->setSpacing( 3 ); 109 hbox->setSpacing( 3 );
111 hbox->addLayout( sbox, 1); 110 hbox->addLayout( sbox, 1);
112 hbox->addLayout( mbox, 1); 111 hbox->addLayout( mbox, 1);
113 // } 112 // }
114 113
115 muteBox = new QCheckBox( tr("Mute"), this ); 114 muteBox = new QCheckBox( tr("Mute"), this );
116 muteBox->setFocusPolicy( QWidget::NoFocus ); 115 muteBox->setFocusPolicy( QWidget::NoFocus );
117 116
118 QVBoxLayout *klbox = new QVBoxLayout(this); 117 QVBoxLayout *klbox = new QVBoxLayout(this);
119 118
120 QLabel *Label1; 119 QLabel *Label1;
121 Label1 = new QLabel( this, "Label1" ); 120 Label1 = new QLabel( this, "Label1" );
122 Label1->setText( tr( "Enable Sounds for:" )); 121 Label1->setText( tr( "Enable Sounds for:" ));
123 122
124 alarmSound = new QCheckBox( tr("Alarm Sound"), this ); 123 alarmSound = new QCheckBox( tr("Alarm Sound"), this );
125 alarmSound->setFocusPolicy( QWidget::NoFocus ); 124 alarmSound->setFocusPolicy( QWidget::NoFocus );
126 125
127 keyclicks = new QCheckBox( tr("Key Clicks"), this ); 126 keyclicks = new QCheckBox( tr("Key Clicks"), this );
128 keyclicks->setFocusPolicy( QWidget::NoFocus ); 127 keyclicks->setFocusPolicy( QWidget::NoFocus );
129 128
130 screentaps = new QCheckBox( tr("Screen taps"), this ); 129 screentaps = new QCheckBox( tr("Screen taps"), this );
131 screentaps->setFocusPolicy( QWidget::NoFocus ); 130 screentaps->setFocusPolicy( QWidget::NoFocus );
132 131
133 132
134 keyclicks->setChecked( cfg.readBoolEntry("KeySound",0)); 133 keyclicks->setChecked( cfg.readBoolEntry("KeySound",0));
135 screentaps->setChecked( cfg.readBoolEntry("TouchSound",0)); 134 screentaps->setChecked( cfg.readBoolEntry("TouchSound",0));
136 alarmSound->setChecked( cfg.readBoolEntry("AlarmSound",1)); 135 alarmSound->setChecked( cfg.readBoolEntry("AlarmSound",1));
137 136
138 klbox->setMargin( 3 ); 137 klbox->setMargin( 3 );
139 klbox->setSpacing( 0 ); 138 klbox->setSpacing( 0 );
140 klbox->addWidget( Label1, 1); 139 klbox->addWidget( Label1, 1);
141 klbox->addWidget( alarmSound, 1); 140 klbox->addWidget( alarmSound, 1);
142 klbox->addWidget( keyclicks, 1); 141 klbox->addWidget( keyclicks, 1);
143 klbox->addWidget( screentaps, 1); 142 klbox->addWidget( screentaps, 1);
144 vbox->setMargin( 3 ); 143 vbox->setMargin( 3 );
145 vbox->setSpacing( 0 ); 144 vbox->setSpacing( 0 );
146// if (showMic == TRUE) 145// if (showMic == TRUE)
147 vbox->addLayout( hbox, 1 ); 146 vbox->addLayout( hbox, 1 );
148// else 147// else
149// vbox->addLayout( sbox, 1); 148// vbox->addLayout( sbox, 1);
150 vbox->addWidget( muteBox, 0, Qt::AlignVCenter | Qt::AlignHCenter ); 149 vbox->addWidget( muteBox, 0, Qt::AlignVCenter | Qt::AlignHCenter );
151 150
152 hboxLayout->addLayout( vboxButtons ); 151 hboxLayout->addLayout( vboxButtons );
153 hboxLayout->addLayout( vbox); 152 hboxLayout->addLayout( vbox);
154 hboxLayout->addLayout( klbox); 153 hboxLayout->addLayout( klbox);
155 154
156 155
157 setFixedHeight( 120); 156 setFixedHeight( 120);
158// setFixedWidth( sizeHint().width() ); 157// setFixedWidth( sizeHint().width() );
159 setFocusPolicy(QWidget::NoFocus); 158 setFocusPolicy(QWidget::NoFocus);
160 connect( upButton, SIGNAL( pressed() ), this, SLOT( ButtonChanged() ) ); 159 connect( upButton, SIGNAL( pressed() ), this, SLOT( ButtonChanged() ) );
161 connect( upButton, SIGNAL( released() ), this, SLOT( ButtonChanged() ) ); 160 connect( upButton, SIGNAL( released() ), this, SLOT( ButtonChanged() ) );
162 connect( downButton, SIGNAL( pressed() ), this, SLOT( ButtonChanged() ) ); 161 connect( downButton, SIGNAL( pressed() ), this, SLOT( ButtonChanged() ) );
163 connect( downButton, SIGNAL( released() ), this, SLOT( ButtonChanged() ) ); 162 connect( downButton, SIGNAL( released() ), this, SLOT( ButtonChanged() ) );
164 163
165 rateTimer = new QTimer(this); 164 rateTimer = new QTimer(this);
166 connect( rateTimer, SIGNAL( timeout() ), this, SLOT( rateTimerDone() ) ); 165 connect( rateTimer, SIGNAL( timeout() ), this, SLOT( rateTimerDone() ) );
167} 166}
168 167
169void VolumeControl::keyPressEvent( QKeyEvent *e) 168void VolumeControl::keyPressEvent( QKeyEvent *e)
170{ 169{
171 switch(e->key()) 170 switch(e->key())
172 { 171 {
173 case Key_Up: 172 case Key_Up:
174 slider->subtractStep(); 173 slider->subtractStep();
175 break; 174 break;
176 case Key_Down: 175 case Key_Down:
177 slider->addStep(); 176 slider->addStep();
178 break; 177 break;
179 case Key_Space: 178 case Key_Space:
180 muteBox->toggle(); 179 muteBox->toggle();
181 break; 180 break;
182 case Key_Escape: 181 case Key_Escape:
183 close(); 182 close();
184 break; 183 break;
185 } 184 }
186} 185}
187 186
188void VolumeControl::ButtonChanged() 187void VolumeControl::ButtonChanged()
189{ 188{
190 if ( upButton->isDown() || downButton->isDown() ) 189 if ( upButton->isDown() || downButton->isDown() )
191 { 190 {
192 rateTimerDone(); // Call it one time manually, otherwise it wont get 191 rateTimerDone(); // Call it one time manually, otherwise it wont get
193 // called at all when a button is pressed for a time 192 // called at all when a button is pressed for a time
194 // shorter than RATE_TIMER_INTERVAL. 193 // shorter than RATE_TIMER_INTERVAL.
195 rateTimer->start( RATE_TIMER_INTERVAL, false ); 194 rateTimer->start( RATE_TIMER_INTERVAL, false );
196 } 195 }
197 else 196 else
198 rateTimer->stop(); 197 rateTimer->stop();
199} 198}
200 199
201void VolumeControl::rateTimerDone() 200void VolumeControl::rateTimerDone()
202{ 201{
203 if ( upButton->isDown() ) 202 if ( upButton->isDown() )
204 slider->setValue( slider->value() - 2 ); 203 slider->setValue( slider->value() - 2 );
205 else // downButton->isDown() 204 else // downButton->isDown()
206 slider->setValue( slider->value() + 2 ); 205 slider->setValue( slider->value() + 2 );
207} 206}
208 207
209//=========================================================================== 208//===========================================================================
210 209
211VolumeApplet::VolumeApplet( QWidget *parent, const char *name ) 210VolumeApplet::VolumeApplet( QWidget *parent, const char *name )
212 : QWidget( parent, name ) 211 : QWidget( parent, name )
213{ 212{
214 Config cfg("qpe"); 213 Config cfg("qpe");
215 cfg.setGroup("Volume"); 214 cfg.setGroup("Volume");
216 215
217 setFixedHeight( 18 ); 216 setFixedHeight( 18 );
218 setFixedWidth( 14 ); 217 setFixedWidth( 14 );
219 218
220 volumePixmap = Resource::loadPixmap( "volume" ); 219 volumePixmap = Resource::loadPixmap( "volume" );
221 220
222 volumePercent = cfg.readNumEntry("VolumePercent",50); 221 volumePercent = cfg.readNumEntry("VolumePercent",50);
223 micPercent = cfg.readNumEntry("Mic", 50); 222 micPercent = cfg.readNumEntry("Mic", 50);
224 muted = FALSE; // ### read from pref 223 muted = FALSE; // ### read from pref
225 micMuted = FALSE; // ### read from pref 224 micMuted = FALSE; // ### read from pref
226 225
227 advancedTimer = new QTimer(this); 226 advancedTimer = new QTimer(this);
228 227
229 connect( qApp, SIGNAL( volumeChanged(bool) ), this, SLOT( volumeChanged(bool) ) ); 228 connect( qApp, SIGNAL( volumeChanged(bool) ), this, SLOT( volumeChanged(bool) ) );
230 connect( qApp, SIGNAL( micChanged(bool) ), this, SLOT ( micChanged(bool) ) ); 229 connect( qApp, SIGNAL( micChanged(bool) ), this, SLOT ( micChanged(bool) ) );
231 connect( advancedTimer, SIGNAL( timeout() ),this, SLOT( advVolControl()) ); 230 connect( advancedTimer, SIGNAL( timeout() ),this, SLOT( advVolControl()) );
232 231
233 writeSystemVolume(); 232 writeSystemVolume();
234 writeSystemMic(); 233 writeSystemMic();
235} 234}
236 235
237VolumeApplet::~VolumeApplet() 236VolumeApplet::~VolumeApplet()
238{ 237{
239} 238}
240 239
241void VolumeApplet::keyPressEvent ( QKeyEvent * e ) 240void VolumeApplet::keyPressEvent ( QKeyEvent * e )