summaryrefslogtreecommitdiff
authorsimon <simon>2002-12-09 22:26:11 (UTC)
committer simon <simon>2002-12-09 22:26:11 (UTC)
commit8bf05369dcdf93a712607aab6dacf407dcce5142 (patch) (unidiff)
treef11dcac538e4ad930335bcab2e4068721d167415
parent5a08075743a50a63eaad9c80884f4c2f4c69579b (diff)
downloadopie-8bf05369dcdf93a712607aab6dacf407dcce5142.zip
opie-8bf05369dcdf93a712607aab6dacf407dcce5142.tar.gz
opie-8bf05369dcdf93a712607aab6dacf407dcce5142.tar.bz2
- work around gcc2's stupid STL that requires libstdc++ in the default
allocator
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/mediawidget.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/noncore/multimedia/opieplayer2/mediawidget.h b/noncore/multimedia/opieplayer2/mediawidget.h
index 3b3a263..df03b22 100644
--- a/noncore/multimedia/opieplayer2/mediawidget.h
+++ b/noncore/multimedia/opieplayer2/mediawidget.h
@@ -17,65 +17,69 @@
17 You should have received a copy of the GNU Library General Public License 17 You should have received a copy of the GNU Library General Public License
18 along with this library; see the file COPYING.LIB. If not, write to 18 along with this library; see the file COPYING.LIB. If not, write to
19 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 19 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA. 20 Boston, MA 02111-1307, USA.
21*/ 21*/
22 22
23#ifndef MEDIAWIDGET_H 23#ifndef MEDIAWIDGET_H
24#define MEDIAWIDGET_H 24#define MEDIAWIDGET_H
25 25
26#include <qwidget.h> 26#include <qwidget.h>
27#include <qmap.h> 27#include <qmap.h>
28 28
29#include "mediaplayerstate.h" 29#include "mediaplayerstate.h"
30#include "playlistwidget.h" 30#include "playlistwidget.h"
31 31
32#include <vector> 32#include <vector>
33#include <memory>
33 34
34class MediaWidget : public QWidget 35class MediaWidget : public QWidget
35{ 36{
36 Q_OBJECT 37 Q_OBJECT
37public: 38public:
38 enum Command { Play = 0, Stop, Next, Previous, VolumeUp, VolumeDown, Loop, PlayList, Forward, Back, FullScreen, Undefined }; 39 enum Command { Play = 0, Stop, Next, Previous, VolumeUp, VolumeDown, Loop, PlayList, Forward, Back, FullScreen, Undefined };
39 enum ButtonType { NormalButton, ToggleButton }; 40 enum ButtonType { NormalButton, ToggleButton };
40 41
41 struct Button 42 struct Button
42 { 43 {
43 Button() : command( Undefined ), type( NormalButton ), isDown( false ) {} 44 Button() : command( Undefined ), type( NormalButton ), isDown( false ) {}
44 45
45 Command command; 46 Command command;
46 47
47 ButtonType type; // this should be part of the bitfield but gcc2 is too buggy to support this :-( 48 ButtonType type; // this should be part of the bitfield but gcc2 is too buggy to support this :-(
48 bool isDown : 1; 49 bool isDown : 1;
49 50
50 QBitmap mask; 51 QBitmap mask;
51 QPixmap pixUp; 52 QPixmap pixUp;
52 QPixmap pixDown; 53 QPixmap pixDown;
53 }; 54 };
55#if defined( _CC_GNU_ )
56 // use that allocator to avoid the default allocator that on gcc2 requires libstdc++ because
57 // in the BAD_ALLOC macro it uses std::cerr and friends :-(
58 typedef std::vector<Button, std::__allocator<Button, std::__new_alloc> > ButtonVector;
59#else
54 typedef std::vector<Button> ButtonVector; 60 typedef std::vector<Button> ButtonVector;
61#endif
55 62
56 struct SkinButtonInfo 63 struct SkinButtonInfo
57 { 64 {
58 Command command; 65 Command command;
59 const char *fileName; 66 const char *fileName;
60 ButtonType type; 67 ButtonType type;
61 }; 68 };
62 69
63 typedef std::vector<QBitmap> MaskVector;
64 typedef std::vector<QPixmap> PixmapVector;
65
66 MediaWidget( PlayListWidget &_playList, MediaPlayerState &_mediaPlayerState, QWidget *parent = 0, const char *name = 0 ); 70 MediaWidget( PlayListWidget &_playList, MediaPlayerState &_mediaPlayerState, QWidget *parent = 0, const char *name = 0 );
67 virtual ~MediaWidget(); 71 virtual ~MediaWidget();
68 72
69public slots: 73public slots:
70 virtual void setDisplayType( MediaPlayerState::DisplayType displayType ) = 0; 74 virtual void setDisplayType( MediaPlayerState::DisplayType displayType ) = 0;
71 virtual void setLength( long length ) = 0; 75 virtual void setLength( long length ) = 0;
72 virtual void setPlaying( bool playing ) = 0; 76 virtual void setPlaying( bool playing ) = 0;
73 77
74 virtual void loadSkin() = 0; 78 virtual void loadSkin() = 0;
75 79
76signals: 80signals:
77 void moreReleased(); 81 void moreReleased();
78 void lessReleased(); 82 void lessReleased();
79 void forwardReleased(); 83 void forwardReleased();
80 void backReleased(); 84 void backReleased();
81 void forwardClicked(); 85 void forwardClicked();