[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bugs-dist
Subject:    [Bug 111152] kmix doesn't save master channel correctly - off by 3
From:       Christian Esken <esken () kde ! org>
Date:       2006-01-22 13:07:53
Message-ID: 20060122130753.17051.qmail () ktown ! kde ! org
[Download RAW message or body]

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
         
http://bugs.kde.org/show_bug.cgi?id=111152         




------- Additional Comments From esken kde org  2006-01-22 14:07 -------
SVN commit 501149 by esken:

Backport of Bugfix 111152 to 3.4 branch (in case somebody cares to
recompile that branch): 'The wrong master channel was saved (if the
channel was "after" an "enum MDW" or a "switch-only MDW" '.
CCBUGS: 111152


 M  +1 -1      dialogselectmaster.cpp  
 M  +1 -1      dialogselectmaster.h  
 M  +3 -3      kmixdockwidget.cpp  
 M  +3 -1      kmixdockwidget.h  


--- branches/KDE/3.4/kdemultimedia/kmix/dialogselectmaster.cpp #501148:501149
 @ -188,7 +188,7  @
      }
      else {
         mixer->setMasterDevice( m_mixerPKs[channel_id] );
-     	emit newMasterSelected(soundcard_id, channel_id);
+        emit newMasterSelected(soundcard_id, m_mixerPKs[channel_id] );
      }
    }
 }
--- branches/KDE/3.4/kdemultimedia/kmix/dialogselectmaster.h #501148:501149
 @ -21,7 +21,7  @
     ~DialogSelectMaster();
 
  signals:
-    void newMasterSelected(int, int);
+    void newMasterSelected(int, QString& );
 
  public slots:
     void apply();
--- branches/KDE/3.4/kdemultimedia/kmix/kmixdockwidget.cpp #501148:501149
 @ -130,13 +130,13  @
 void KMixDockWidget::selectMaster()
 {
    DialogSelectMaster* dsm = new DialogSelectMaster(m_mixer);
-   connect ( dsm, SIGNAL(newMasterSelected(int, int)), SLOT( \
handleNewMaster(int,int) ) ); +   connect ( dsm, SIGNAL(newMasterSelected(int, \
QString&)), SLOT( handleNewMaster(int,QString&)) );   dsm->show();
     // !! The dialog is modal. Does it delete itself?
 }
 
 
-void KMixDockWidget::handleNewMaster(int soundcard_id, int channel_id) // !!  todo \
rework parameters +void KMixDockWidget::handleNewMaster(int soundcard_id, QString& \
channel_id)  {
   //kdDebug(67100) << "KMixDockWidget::handleNewMaster() soundcard_id=" << \
soundcard_id << " , channel_id=" << channel_id << endl;  Mixer *mixer = \
Mixer::mixers().at(soundcard_id);  @ -146,7 +146,7  @
   }
   m_mixer = mixer;
   Mixer::setMasterCard(mixer->id()); // We must save this information "somewhere".
-  Mixer::setMasterCardDevice( (*mixer)[channel_id]->getPK());
+  Mixer::setMasterCardDevice( channel_id ); 
   createMasterVolWidget();
 }
 
--- branches/KDE/3.4/kdemultimedia/kmix/kmixdockwidget.h #501148:501149
 @ -23,8 +23,10  @
 #ifndef KMIXDOCKWIDGET_H
 #define KMIXDOCKWIDGET_H
 
+class QString;
 #include <qwidget.h>
 #include <qvbox.h>
+
 #include <ksystemtray.h>
 
 class Mixer;
 @ -73,7 +75,7  @
  private slots:
    void dockMute();
    void selectMaster();
-   void handleNewMaster(int soundcard_id, int channel_id);
+   void handleNewMaster(int soundcard_id, QString& channel_id);
 };
 
 #endif


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic