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

List:       kde-commits
Subject:    kdemultimedia/kscd
From:       Alex Kern <alex.kern () gmx ! de>
Date:       2004-02-08 20:19:26
Message-ID: 20040208201926.7ECA69190 () office ! kde ! org
[Download RAW message or body]

CVS commit by kernalex: 

libwm reactions in case of CDDA are delayed. Please respect it. A better solution can \
be "timer show real time of track, not a time since last click". 


  M +19 -23    kscd.cpp   1.235


--- kdemultimedia/kscd/kscd.cpp  #1.234:1.235
@@ -486,12 +486,4 @@ KSCD::playClicked()
 #endif
     {
-        statuslabel->setText( i18n("Playing") );
-        playing = true;
-        setLEDs( "00:00" );
-        populateSongList();
-
-        kapp->processEvents();
-        kapp->flushX();
-
         if(Prefs::randomPlay())
         {
@@ -518,7 +510,15 @@ KSCD::playClicked()
             wm_cd_play (save_track, 0, WM_ENDTRACK);
         }
+        statuslabel->setText( i18n("Playing") );
+        playing = true;
+        setLEDs( "00:00" );
+        populateSongList();
+
+        kapp->processEvents();
+        kapp->flushX();
     }
     else if (cur_cdmode == WM_CDM_PLAYING || cur_cdmode == WM_CDM_PAUSED)
     {
+        wm_cd_pause();
         switch (cur_cdmode)
         {
@@ -526,5 +526,4 @@ KSCD::playClicked()
                 statuslabel->setText( i18n("Pause") );
                 playing = false;
-                wm_cd_pause();
                 break;
             case WM_CDM_PAUSED:
@@ -537,12 +536,6 @@ KSCD::playClicked()
                     statuslabel->setText( i18n("Playing") );
                 }
-                wm_cd_pause();
                 playing = true;
                 break;
-
-            default:
-                // TODO: next release: force "stop".
-                statuslabel->setText( i18n("Strange...") );
-                break;
         } // switch
 
@@ -603,4 +596,5 @@ KSCD::stopClicked()
 {
     //    looping = false;
+    wm_cd_stop();
     stoppedByUser = true;
     statuslabel->setText(i18n("Stopped"));
@@ -612,5 +606,4 @@ KSCD::stopClicked()
     save_track = 1;
     playlistpointer = 0;
-    wm_cd_stop();
 } // stopClicked()
 
@@ -619,7 +612,4 @@ KSCD::prevClicked()
 {
     int track;
-    setLEDs("00:00");
-    kapp->processEvents();
-    kapp->flushX();
 
     if(Prefs::randomPlay()) {
@@ -647,4 +637,8 @@ KSCD::prevClicked()
     else
         wm_cd_play (track, 0, WM_ENDTRACK);
+
+    setLEDs("00:00");
+    kapp->processEvents();
+    kapp->flushX();
 } // prevClicked()
 
@@ -653,7 +647,4 @@ KSCD::nextClicked()
 {
     int track;
-    setLEDs("00:00");
-    kapp->processEvents();
-    kapp->flushX();
 
     if(Prefs::randomPlay()) {
@@ -676,4 +667,8 @@ KSCD::nextClicked()
     else
          wm_cd_play (track, 0, WM_ENDTRACK);
+    
+    setLEDs("00:00");
+    kapp->processEvents();
+    kapp->flushX();
 } // nextClicked()
 
@@ -882,9 +877,10 @@ KSCD::trackSelected( int trk )
     }
 
+    wm_cd_play(trk + 1, 0, trk + 2);
+        
     setLEDs("00:00");
     kapp->processEvents();
     kapp->flushX();
 
-    wm_cd_play(trk + 1, 0, trk + 2);
     updatePlayPB(true);
 } // trackSelected


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

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