00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef XMMSSENSOR_H
00011 #define XMMSSENSOR_H
00012
00013 #ifdef HAVE_CONFIG_H
00014 #include <config.h>
00015 #endif
00016 #ifdef HAVE_XMMS
00017 #include <xmmsctrl.h>
00018 #include <xmms/configfile.h>
00019 #endif // HAVE_XMMS
00020
00021 #include <stdlib.h>
00022 #include <stdio.h>
00023 #include <qdatetime.h>
00024 #include <qtextcodec.h>
00025 #include <qtooltip.h>
00026
00027 #include <ksimpleconfig.h>
00028 #include <kstandarddirs.h>
00029
00030 #include "sensor.h"
00031 #include "clickarea.h"
00032 #include "libtags/tags.h"
00033
00040 class XMMSSensor : public Sensor
00041 {
00042 Q_OBJECT
00043 public:
00047 XMMSSensor( int interval, QString encoding="", int nw = 0, int nh = 0, karamba* k = 0 );
00051 ~XMMSSensor();
00055 void update();
00059 int w;
00063 int h;
00067 int defW;
00071 int defH;
00075 int vol;
00079 QString dir;
00083 QString cover;
00087 QString rcover;
00091 QString fp;
00095 QString title;
00099 QString artist;
00103 QString album;
00107 QString stitle;
00111 QString track;
00115 int current;
00119 QString file;
00123 int rate;
00127 double freq;
00131 int channel;
00135 QString monoster;
00139 int pos;
00143 int songLength;
00147 int currentTime;
00148
00149 private:
00153 void setMaxValue( SensorParams *);
00157 int getW( int nw = 0 );
00161 int getH(int nh = 0 );
00165 void setKaramba(karamba*);
00169 QTextCodec *codec;
00173 karamba* myKaramba;
00177 bool HideMainWin;
00181 bool EnableCover;
00185 QString Viewer;
00186 bool EnableID3;
00187 bool SaveID3;
00188 bool EnableID3C;
00189 bool NetCover;
00190
00191 private slots:
00192 void slotUpValues();
00196 QString setCover(int w, int h, QString cover);
00197 void slotGetCover( Tags* );
00201 bool darkcover(QString out, Tags* tags);
00202 void slotGetPos();
00203
00204 public slots:
00208 void slotLoadConfig( );
00209
00210 signals:
00211 void songChange();
00212
00213 };
00214
00215
00216 #endif // XMMSSENSOR_H