summaryrefslogtreecommitdiff
path: root/noncore/multimedia/opieplayer2
authorharlekin <harlekin>2002-08-07 19:30:13 (UTC)
committer harlekin <harlekin>2002-08-07 19:30:13 (UTC)
commitc80f0885bf402b6dd4ea637ad1b7d8b3ebd69300 (patch) (unidiff)
tree558e8528408f0ab27d644554279f646723c6dad9 /noncore/multimedia/opieplayer2
parent7effde67fd121736ec658e690858c6c54bd6d125 (diff)
downloadopie-c80f0885bf402b6dd4ea637ad1b7d8b3ebd69300.zip
opie-c80f0885bf402b6dd4ea637ad1b7d8b3ebd69300.tar.gz
opie-c80f0885bf402b6dd4ea637ad1b7d8b3ebd69300.tar.bz2
added volume handling for audio gui and other small fixes
Diffstat (limited to 'noncore/multimedia/opieplayer2') (more/less context) (show whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/audiowidget.cpp14
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayer.cpp38
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayer.h4
-rw-r--r--noncore/multimedia/opieplayer2/opieplayer2.pro4
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidget.cpp2
-rw-r--r--noncore/multimedia/opieplayer2/videowidget.cpp23
-rw-r--r--noncore/multimedia/opieplayer2/videowidget.h1
-rw-r--r--noncore/multimedia/opieplayer2/volumecontrol.cpp59
-rw-r--r--noncore/multimedia/opieplayer2/volumecontrol.h47
9 files changed, 145 insertions, 47 deletions
diff --git a/noncore/multimedia/opieplayer2/audiowidget.cpp b/noncore/multimedia/opieplayer2/audiowidget.cpp
index 0e9e7ea..955169c 100644
--- a/noncore/multimedia/opieplayer2/audiowidget.cpp
+++ b/noncore/multimedia/opieplayer2/audiowidget.cpp
@@ -69,5 +69,5 @@ MediaButton audioButtons[] = {
69 { TRUE, FALSE, FALSE }, // play 69 { TRUE, FALSE, FALSE }, // play
70 { FALSE, FALSE, FALSE }, // stop 70 { FALSE, FALSE, FALSE }, // stop
71 { TRUE, FALSE, FALSE }, // pause 71 { FALSE, FALSE, FALSE }, // pause
72 { FALSE, FALSE, FALSE }, // next 72 { FALSE, FALSE, FALSE }, // next
73 { FALSE, FALSE, FALSE }, // previous 73 { FALSE, FALSE, FALSE }, // previous
@@ -343,8 +343,4 @@ void AudioWidget::paintButton( QPainter *p, int i ) {
343 343
344void AudioWidget::timerEvent( QTimerEvent * ) { 344void AudioWidget::timerEvent( QTimerEvent * ) {
345// static int frame = 0;
346// if ( !mediaPlayerState->paused() && audioButtons[ AudioPlay ].isDown ) {
347// frame = frame >= 7 ? 0 : frame + 1;
348// }
349} 345}
350 346
@@ -372,5 +368,7 @@ void AudioWidget::mouseMoveEvent( QMouseEvent *event ) {
372 emit moreClicked(); 368 emit moreClicked();
373 return; 369 return;
374 case AudioVolumeDown: emit lessClicked(); return; 370 case AudioVolumeDown:
371 emit lessClicked();
372 return;
375 } 373 }
376 } else if ( !isOnButton && audioButtons[i].isHeld ) { 374 } else if ( !isOnButton && audioButtons[i].isHeld ) {
@@ -381,6 +379,8 @@ void AudioWidget::mouseMoveEvent( QMouseEvent *event ) {
381 if ( audioButtons[i].isHeld ) { 379 if ( audioButtons[i].isHeld ) {
382 audioButtons[i].isHeld = FALSE; 380 audioButtons[i].isHeld = FALSE;
383 if ( !audioButtons[i].isToggle ) 381 if ( !audioButtons[i].isToggle ) {
384 setToggleButton( i, FALSE ); 382 setToggleButton( i, FALSE );
383 qDebug("button toggled3 %d",i);
384 }
385 switch (i) { 385 switch (i) {
386 case AudioPlay: mediaPlayerState->setPlaying(audioButtons[i].isDown); return; 386 case AudioPlay: mediaPlayerState->setPlaying(audioButtons[i].isDown); return;
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.cpp b/noncore/multimedia/opieplayer2/mediaplayer.cpp
index 5411a64..8d8e4e5 100644
--- a/noncore/multimedia/opieplayer2/mediaplayer.cpp
+++ b/noncore/multimedia/opieplayer2/mediaplayer.cpp
@@ -12,4 +12,5 @@
12#include "playlistwidget.h" 12#include "playlistwidget.h"
13#include "audiowidget.h" 13#include "audiowidget.h"
14#include "volumecontrol.h"
14 15
15#include "mediaplayerstate.h" 16#include "mediaplayerstate.h"
@@ -40,7 +41,11 @@ MediaPlayer::MediaPlayer( QObject *parent, const char *name )
40 connect( audioUI, SIGNAL( lessReleased() ), this, SLOT( stopChangingVolume() ) ); 41 connect( audioUI, SIGNAL( lessReleased() ), this, SLOT( stopChangingVolume() ) );
41 42
43 volControl = new VolumeControl;
44
42} 45}
43 46
44MediaPlayer::~MediaPlayer() { 47MediaPlayer::~MediaPlayer() {
48 delete xineControl;
49 delete volControl;
45} 50}
46 51
@@ -126,7 +131,5 @@ void MediaPlayer::startDecreasingVolume() {
126 volumeDirection = -1; 131 volumeDirection = -1;
127 startTimer( 100 ); 132 startTimer( 100 );
128 // da kommt demnächst osound denk ich mal 133 volControl->decVol(2);
129 /////////////////////////// lets just move those change volume here
130 // AudioDevice::decreaseVolume();
131} 134}
132 135
@@ -135,5 +138,5 @@ void MediaPlayer::startIncreasingVolume() {
135 volumeDirection = +1; 138 volumeDirection = +1;
136 startTimer( 100 ); 139 startTimer( 100 );
137 // AudioDevice::increaseVolume(); 140 volControl->incVol(2);
138} 141}
139 142
@@ -155,18 +158,19 @@ void MediaPlayer::stopChangingVolume() {
155 158
156void MediaPlayer::timerEvent( QTimerEvent * ) { 159void MediaPlayer::timerEvent( QTimerEvent * ) {
157 // if ( volumeDirection == +1 ) 160 if ( volumeDirection == +1 ) {
158 // AudioDevice::increaseVolume(); 161 volControl->incVol(2);
159 // else if ( volumeDirection == -1 ) 162 } else if ( volumeDirection == -1 ) {
160 // AudioDevice::decreaseVolume(); 163 volControl->decVol(2);
164 }
161 165
162// Display an on-screen display volume
163 unsigned int l, r, v; bool m;
164 166
165// TODO FIXME 167// TODO FIXME
166// AudioDevice::getVolume( l, r, m ); 168 int v;
167// v = ((l + r) * 11) / (2*0xFFFF); 169 v = volControl->getVolume();
170 v = v / 10;
168 171
169 if ( drawnOnScreenDisplay && onScreenDisplayVolume == v ) 172 if ( drawnOnScreenDisplay && onScreenDisplayVolume == v ) {
170 return; 173 return;
174 }
171 175
172 int w = audioUI->width(); 176 int w = audioUI->width();
@@ -174,7 +178,8 @@ void MediaPlayer::timerEvent( QTimerEvent * ) {
174 178
175 if ( drawnOnScreenDisplay ) { 179 if ( drawnOnScreenDisplay ) {
176 if ( onScreenDisplayVolume > v ) 180 if ( onScreenDisplayVolume > v ) {
177 audioUI->repaint( (w - 200) / 2 + v * 20 + 0, h - yoff + 40, (onScreenDisplayVolume - v) * 20 + 9, 30, FALSE ); 181 audioUI->repaint( (w - 200) / 2 + v * 20 + 0, h - yoff + 40, (onScreenDisplayVolume - v) * 20 + 9, 30, FALSE );
178 } 182 }
183 }
179 184
180 drawnOnScreenDisplay = TRUE; 185 drawnOnScreenDisplay = TRUE;
@@ -192,10 +197,11 @@ void MediaPlayer::timerEvent( QTimerEvent * ) {
192 197
193 for ( unsigned int i = 0; i < 10; i++ ) { 198 for ( unsigned int i = 0; i < 10; i++ ) {
194 if ( v > i ) 199 if ( v > i ) {
195 p.drawRect( (w - 200) / 2 + i * 20 + 0, h - yoff + 40, 9, 30 ); 200 p.drawRect( (w - 200) / 2 + i * 20 + 0, h - yoff + 40, 9, 30 );
196 else 201 } else {
197 p.drawRect( (w - 200) / 2 + i * 20 + 3, h - yoff + 50, 3, 10 ); 202 p.drawRect( (w - 200) / 2 + i * 20 + 3, h - yoff + 50, 3, 10 );
198 } 203 }
199} 204}
205}
200 206
201void MediaPlayer::keyReleaseEvent( QKeyEvent *e) { 207void MediaPlayer::keyReleaseEvent( QKeyEvent *e) {
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.h b/noncore/multimedia/opieplayer2/mediaplayer.h
index 7b79066..16213b5 100644
--- a/noncore/multimedia/opieplayer2/mediaplayer.h
+++ b/noncore/multimedia/opieplayer2/mediaplayer.h
@@ -11,5 +11,5 @@
11 11
12class DocLnk; 12class DocLnk;
13 13class VolumeControl;
14 14
15class MediaPlayer : public QObject { 15class MediaPlayer : public QObject {
@@ -39,5 +39,5 @@ private:
39 const DocLnk *currentFile; 39 const DocLnk *currentFile;
40 XineControl *xineControl; 40 XineControl *xineControl;
41 41 VolumeControl *volControl;
42}; 42};
43 43
diff --git a/noncore/multimedia/opieplayer2/opieplayer2.pro b/noncore/multimedia/opieplayer2/opieplayer2.pro
index fee9242..edc4624 100644
--- a/noncore/multimedia/opieplayer2/opieplayer2.pro
+++ b/noncore/multimedia/opieplayer2/opieplayer2.pro
@@ -5,10 +5,10 @@ DESTDIR = $(OPIEDIR)/bin
5HEADERS = playlistselection.h mediaplayerstate.h xinecontrol.h mediadetect.h\ 5HEADERS = playlistselection.h mediaplayerstate.h xinecontrol.h mediadetect.h\
6 videowidget.h audiowidget.h playlistwidget.h mediaplayer.h inputDialog.h \ 6 videowidget.h audiowidget.h playlistwidget.h mediaplayer.h inputDialog.h \
7 frame.h lib.h xinevideowidget.h \ 7 frame.h lib.h xinevideowidget.h volumecontrol.h\
8 alphablend.h yuv2rgb.h 8 alphablend.h yuv2rgb.h
9SOURCES = main.cpp \ 9SOURCES = main.cpp \
10 playlistselection.cpp mediaplayerstate.cpp xinecontrol.cpp mediadetect.cpp\ 10 playlistselection.cpp mediaplayerstate.cpp xinecontrol.cpp mediadetect.cpp\
11 videowidget.cpp audiowidget.cpp playlistwidget.cpp mediaplayer.cpp inputDialog.cpp \ 11 videowidget.cpp audiowidget.cpp playlistwidget.cpp mediaplayer.cpp inputDialog.cpp \
12 frame.cpp lib.cpp nullvideo.c xinevideowidget.cpp \ 12 frame.cpp lib.cpp nullvideo.c xinevideowidget.cpp volumecontrol.cpp\
13 alphablend.c yuv2rgb.c yuv2rgb_arm.c yuv2rgb_arm4l.S 13 alphablend.c yuv2rgb.c yuv2rgb_arm.c yuv2rgb_arm4l.S
14TARGET = opieplayer2 14TARGET = opieplayer2
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp
index 9065d63..b43d9f7 100644
--- a/noncore/multimedia/opieplayer2/playlistwidget.cpp
+++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp
@@ -165,5 +165,5 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl )
165 fullScreenButton->addTo(pmView); 165 fullScreenButton->addTo(pmView);
166 scaleButton = new QAction(tr("Scale"), Resource::loadPixmap("opieplayer/scale"), QString::null, 0, this, 0); 166 scaleButton = new QAction(tr("Scale"), Resource::loadPixmap("opieplayer/scale"), QString::null, 0, this, 0);
167 scaleButton->addTo(pmView); 167 //scaleButton->addTo(pmView);
168 168
169 QVBox *vbox5 = new QVBox( this ); vbox5->setBackgroundMode( PaletteButton ); 169 QVBox *vbox5 = new QVBox( this ); vbox5->setBackgroundMode( PaletteButton );
diff --git a/noncore/multimedia/opieplayer2/videowidget.cpp b/noncore/multimedia/opieplayer2/videowidget.cpp
index af06079..188b18d 100644
--- a/noncore/multimedia/opieplayer2/videowidget.cpp
+++ b/noncore/multimedia/opieplayer2/videowidget.cpp
@@ -33,5 +33,4 @@
33 33
34#include <qpe/resource.h> 34#include <qpe/resource.h>
35#include <qpe/mediaplayerplugininterface.h>
36#include <qpe/config.h> 35#include <qpe/config.h>
37 36
@@ -88,5 +87,4 @@ VideoWidget::VideoWidget(QWidget* parent, const char* name, WFlags f) :
88 87
89 QString Button0aPix, Button0bPix, controlsPix; 88 QString Button0aPix, Button0bPix, controlsPix;
90 //backgroundPix=cfg.readEntry( "backgroundPix", "opieplayer/metalFinish");
91 Button0aPix=cfg.readEntry( "Button0aPix", "opieplayer/mediaButton0a"); 89 Button0aPix=cfg.readEntry( "Button0aPix", "opieplayer/mediaButton0a");
92 Button0bPix=cfg.readEntry( "Button0bPix","opieplayer/mediaButton0b"); 90 Button0bPix=cfg.readEntry( "Button0bPix","opieplayer/mediaButton0b");
@@ -107,5 +105,7 @@ VideoWidget::VideoWidget(QWidget* parent, const char* name, WFlags f) :
107 slider->setMinValue( 0 ); 105 slider->setMinValue( 0 );
108 slider->setMaxValue( 1 ); 106 slider->setMaxValue( 1 );
109 slider->setBackgroundPixmap( Resource::loadPixmap( backgroundPix ) ); 107
108 slider->setBackgroundPixmap( *this->backgroundPixmap () ); //Resource::loadPixmap( backgroundPix ) );
109 slider->setBackgroundOrigin( QWidget::ParentOrigin);
110 slider->setFocusPolicy( QWidget::NoFocus ); 110 slider->setFocusPolicy( QWidget::NoFocus );
111 slider->setGeometry( QRect( 7, 250, 220, 20 ) ); 111 slider->setGeometry( QRect( 7, 250, 220, 20 ) );
@@ -245,5 +245,7 @@ void VideoWidget::mouseMoveEvent( QMouseEvent *event ) {
245 if ( !videoButtons[i].isToggle ) 245 if ( !videoButtons[i].isToggle )
246 setToggleButton( i, FALSE ); 246 setToggleButton( i, FALSE );
247 qDebug("button toggled3 %d",i);
247 } 248 }
249
248 } 250 }
249 switch (i) { 251 switch (i) {
@@ -320,19 +322,4 @@ void VideoWidget::closeEvent( QCloseEvent* ) {
320 322
321 323
322bool VideoWidget::playVideo() {
323 bool result = FALSE;
324
325 int stream = 0;
326
327 int sw = 240;
328 int sh = 320;
329 int dd = QPixmap::defaultDepth();
330 int w = height();
331 int h = width();
332
333 return true;
334}
335
336
337 324
338void VideoWidget::keyReleaseEvent( QKeyEvent *e) 325void VideoWidget::keyReleaseEvent( QKeyEvent *e)
diff --git a/noncore/multimedia/opieplayer2/videowidget.h b/noncore/multimedia/opieplayer2/videowidget.h
index fc53f89..04e810e 100644
--- a/noncore/multimedia/opieplayer2/videowidget.h
+++ b/noncore/multimedia/opieplayer2/videowidget.h
@@ -57,5 +57,4 @@ public:
57 ~VideoWidget(); 57 ~VideoWidget();
58 58
59 bool playVideo();
60 XineVideoWidget* vidWidget(); 59 XineVideoWidget* vidWidget();
61public slots: 60public slots:
diff --git a/noncore/multimedia/opieplayer2/volumecontrol.cpp b/noncore/multimedia/opieplayer2/volumecontrol.cpp
new file mode 100644
index 0000000..b8ec0df
--- a/dev/null
+++ b/noncore/multimedia/opieplayer2/volumecontrol.cpp
@@ -0,0 +1,59 @@
1
2#include <qpe/qpeapplication.h>
3#include <qpe/config.h>
4#include "qpe/qcopenvelope_qws.h"
5#include <qmessagebox.h>
6
7#include "volumecontrol.h"
8
9int VolumeControl::getVolume() {
10 int volumePerc;
11 Config cfg( "qpe" );
12 cfg. setGroup( "Volume" );
13 volumePerc = cfg. readNumEntry( "VolumePercent", 50 );
14 m_volumePerc = volumePerc;
15 return volumePerc;
16}
17
18
19void VolumeControl::setVolume( int volumePerc ) {
20 Config cfg("qpe");
21 cfg.setGroup("Volume");
22
23 if ( volumePerc > 100 ) {
24 volumePerc = 100;
25 }
26 if ( volumePerc < 0 ) {
27 volumePerc = 0;
28 }
29
30 m_volumePerc = volumePerc;
31 cfg.writeEntry("VolumePercent", volumePerc );
32 QCopEnvelope( "QPE/System", "volumeChange(bool)" ) << false;
33}
34
35
36void VolumeControl::incVol( int ammount ) {
37 int oldVol = getVolume();
38 setVolume( oldVol + ammount);
39}
40
41void VolumeControl::decVol( int ammount ) {
42 int oldVol = getVolume();
43 setVolume( oldVol - ammount);
44}
45
46
47VolumeControl::VolumeControl( ) {
48 getVolume();
49}
50
51VolumeControl::~VolumeControl() {
52 QCopEnvelope( "QPE/System", "volumeChange(bool)" ) << false;
53}
54
55
56
57
58
59
diff --git a/noncore/multimedia/opieplayer2/volumecontrol.h b/noncore/multimedia/opieplayer2/volumecontrol.h
new file mode 100644
index 0000000..37be398
--- a/dev/null
+++ b/noncore/multimedia/opieplayer2/volumecontrol.h
@@ -0,0 +1,47 @@
1/*************
2 * this is only a quick hack and will be later replaced by osound
3 *
4 **********/
5
6
7#ifndef VOLUMECONTROL_H
8#define VOLUMECONTROL_H
9
10
11
12#include <qobject.h>
13
14class VolumeControl : public QObject {
15 Q_OBJECT
16public:
17 VolumeControl();
18 ~VolumeControl();
19
20 // increase by "ammount"
21 void incVol( int ammount );
22 void decVol( int ammount );
23
24 /**
25 * Get the volume in percent
26 * @return volume percentage
27 */
28 int getVolume();
29
30public slots:
31
32 /**
33 * Set the volume in percent
34 * @value volumePerc between 0 and 100
35 */
36 void setVolume( int volumePerc );
37
38
39
40private:
41
42 int m_volumePerc;
43
44};
45
46#endif
47