Conserve CPU.
This commit is contained in:
parent
8cf4f132ff
commit
5b519baa25
4 changed files with 21 additions and 4 deletions
|
@ -95,8 +95,11 @@ ShadedDisplay::setPlaytime (uint time)
|
||||||
sec = (time / 1000) % 60;
|
sec = (time / 1000) % 60;
|
||||||
min = (time / 1000) / 60;
|
min = (time / 1000) / 60;
|
||||||
|
|
||||||
m_number->setNumber (min, 2);
|
if (sec != m_number2->getNumber ()) {
|
||||||
m_number2->setNumber (sec, 2);
|
m_number2->setNumber (sec, 2);
|
||||||
|
} else if (min != m_number->getNumber ()) {
|
||||||
|
m_number->setNumber (min, 2);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,7 @@ class SmallNumberDisplay : public PixWidget
|
||||||
~SmallNumberDisplay () { };
|
~SmallNumberDisplay () { };
|
||||||
|
|
||||||
void setNumber (int num, int len);
|
void setNumber (int num, int len);
|
||||||
|
int getNumber (void) const { return m_num; }
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void setPixmaps (Skin *skin);
|
void setPixmaps (Skin *skin);
|
||||||
|
|
|
@ -23,7 +23,7 @@ XMMSHandler *XMMSHandler::getInstance (void)
|
||||||
return singleton;
|
return singleton;
|
||||||
}
|
}
|
||||||
|
|
||||||
XMMSHandler::XMMSHandler () : sigc::trackable ()
|
XMMSHandler::XMMSHandler () : QObject (), sigc::trackable ()
|
||||||
{
|
{
|
||||||
m_xmmsc = new XMMSClient ("promoe");
|
m_xmmsc = new XMMSClient ("promoe");
|
||||||
}
|
}
|
||||||
|
@ -66,9 +66,16 @@ XMMSHandler::connect (const char *path)
|
||||||
XMMSResult *xr = m_xmmsc->broadcast_playback_volume_changed ();
|
XMMSResult *xr = m_xmmsc->broadcast_playback_volume_changed ();
|
||||||
xr->connect (sigc::mem_fun (this, &XMMSHandler::volume_changed));
|
xr->connect (sigc::mem_fun (this, &XMMSHandler::volume_changed));
|
||||||
|
|
||||||
|
QObject::connect (&m_playtime_timer, SIGNAL (timeout ()), this, SLOT (restartPlaytime ()));
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
XMMSHandler::restartPlaytime (void)
|
||||||
|
{
|
||||||
|
m_playtime->restart ();
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
XMMSHandler::medialib_entry_changed (XMMSResultValue<uint> *res)
|
XMMSHandler::medialib_entry_changed (XMMSResultValue<uint> *res)
|
||||||
|
@ -151,7 +158,8 @@ XMMSHandler::playback_playtime (XMMSResultValue<uint> *res)
|
||||||
|
|
||||||
emit playtimeChanged (i);
|
emit playtimeChanged (i);
|
||||||
|
|
||||||
res->restart ();
|
m_playtime = res;
|
||||||
|
m_playtime_timer.start (500);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
|
|
||||||
#include <QObject>
|
#include <QObject>
|
||||||
#include <QHash>
|
#include <QHash>
|
||||||
|
#include <QTimer>
|
||||||
|
|
||||||
class XMMSHandler : public QObject, public sigc::trackable {
|
class XMMSHandler : public QObject, public sigc::trackable {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
@ -48,6 +49,7 @@ class XMMSHandler : public QObject, public sigc::trackable {
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void setPlaytime (uint pos);
|
void setPlaytime (uint pos);
|
||||||
|
void restartPlaytime (void);
|
||||||
|
|
||||||
void playlistClear () { delete m_xmmsc->playlist_clear (); }
|
void playlistClear () { delete m_xmmsc->playlist_clear (); }
|
||||||
void play () { delete m_xmmsc->playback_start (); }
|
void play () { delete m_xmmsc->playback_start (); }
|
||||||
|
@ -77,6 +79,9 @@ class XMMSHandler : public QObject, public sigc::trackable {
|
||||||
void getVolume (uint);
|
void getVolume (uint);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
XMMSResultValue<uint> *m_playtime;
|
||||||
|
QTimer m_playtime_timer;
|
||||||
|
|
||||||
XMMSHandler (void);
|
XMMSHandler (void);
|
||||||
QHash<QString, QString> PropDictToQHash (XMMSResultDict *res);
|
QHash<QString, QString> PropDictToQHash (XMMSResultDict *res);
|
||||||
QHash<QString, QString> DictToQHash (XMMSResultDict *res);
|
QHash<QString, QString> DictToQHash (XMMSResultDict *res);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue