- fix sound playback
authorDavid Solbach <d@vidsolbach.de>
Sun, 7 Nov 2010 16:24:15 +0000 (17:24 +0100)
committerDavid Solbach <d@vidsolbach.de>
Sun, 7 Nov 2010 16:24:15 +0000 (17:24 +0100)
buliscores.pro.user
src/src/mainwidget.cpp
src/src/mainwidget.h
src/src/scoretable.cpp

index a6ddc8e..b937f98 100644 (file)
      <value type="QString">/usr/local/bin/buliscores</value>
     </valuelist>
     <valuelist key="Qt4ProjectManager.MaemoRunConfiguration.LastDeployedTimes" type="QVariantList">
-     <value type="QDateTime">2010-11-07T16:35:08</value>
+     <value type="QDateTime">2010-11-07T17:16:22</value>
      <value type="QDateTime">2010-11-03T14:09:15</value>
      <value type="QDateTime">2010-11-02T15:07:20</value>
     </valuelist>
index 01ca111..bff59a8 100644 (file)
@@ -12,8 +12,7 @@ MainWidget::MainWidget(QWidget *parent) :
     QWidget(parent),
     m_mediaObject_tor(new Phonon::MediaObject(this)),
     m_mediaObject_pfeife(new Phonon::MediaObject(this)),
-    m_audioOutput_tor(new Phonon::AudioOutput(Phonon::MusicCategory, this)),
-    m_audioOutput_pfeife(new Phonon::AudioOutput(Phonon::MusicCategory, this)),
+    m_audioOutput(new Phonon::AudioOutput(Phonon::CommunicationCategory, this)),
     m_backend(new BackendKicker(this)),
     m_datamodel(new MatchDayModel(this, m_backend)),
     m_scoretbl(new ScoreTable(m_datamodel)),
@@ -61,15 +60,24 @@ MainWidget::MainWidget(QWidget *parent) :
     m_mediaObject_tor->setCurrentSource(Phonon::MediaSource("/usr/share/buliscores/tor.wav"));
     m_mediaObject_pfeife->setCurrentSource(Phonon::MediaSource("/usr/share/buliscores/trillerpfeife.wav"));
 
-    Phonon::createPath(m_mediaObject_tor,     m_audioOutput_tor);
-    Phonon::createPath(m_mediaObject_pfeife,  m_audioOutput_pfeife);
+    //m_audioOutput->volume()
+    Phonon::createPath(m_mediaObject_tor,     m_audioOutput);
+    Phonon::createPath(m_mediaObject_pfeife,  m_audioOutput);
 }
 
-// only needed for testing on desktop
 void MainWidget::mousePressEvent(QMouseEvent* event)
 {
+    qDebug() << "widget tapped";
+
+    // only needed for testing on desktop
     if (event->button() == Qt::RightButton) {
         this->showSettingsDialog();
+    } else {
+        qDebug() << "current volume: " << m_audioOutput->volumeDecibel();
+        qDebug() << "MO state: " << m_mediaObject_pfeife->state();
+        m_mediaObject_pfeife->seek(0);
+        m_mediaObject_pfeife->play();
+        qDebug() << "MO state 2: " << m_mediaObject_pfeife->state();
     }
 }
 
@@ -106,6 +114,7 @@ void MainWidget::onMatchAdded(Match* match) {
 void MainWidget::onScoreChange()
 {
     if (m_settings.value("Sounds", false).toBool()) {
+        m_mediaObject_tor->seek(0);
         m_mediaObject_tor->play();
         qDebug() << "Playing sound: tor";
     }
@@ -114,6 +123,7 @@ void MainWidget::onScoreChange()
 void MainWidget::onMatchStateChanged(Match::MatchState)
 {
     if (m_settings.value("Sounds", false).toBool()) {
+        m_mediaObject_pfeife->seek(0);
         m_mediaObject_pfeife->play();
         qDebug() << "Playing sound: trillerpfeife";
     }
index 6d0ecb5..2d26999 100644 (file)
@@ -35,8 +35,7 @@ protected slots:
 private:
     Phonon::MediaObject *m_mediaObject_tor;
     Phonon::MediaObject *m_mediaObject_pfeife;
-    Phonon::AudioOutput *m_audioOutput_tor;
-    Phonon::AudioOutput *m_audioOutput_pfeife;
+    Phonon::AudioOutput *m_audioOutput;
 
     MatchDayBackend* m_backend;
     MatchDayModel*   m_datamodel;
index 669469b..64cb693 100644 (file)
@@ -16,6 +16,7 @@ ScoreTable::ScoreTable(MatchDayModel* model, QWidget *parent) :
 
     // behaviour
     this->setSelectionMode(QAbstractItemView::NoSelection);
+    this->setAttribute(Qt::WA_TransparentForMouseEvents);
 
     // style
     palette.setColor(QPalette::Background, QColor(0, 0, 0, 200));