]> source.dussan.org Git - tigervnc.git/commitdiff
Implemented "Loop Ctrl+L" menu point.
authorgeorge82 <george82@3789f03b-4d11-0410-bbf8-ca57d06f2519>
Sun, 6 Feb 2005 17:27:34 +0000 (17:27 +0000)
committergeorge82 <george82@3789f03b-4d11-0410-bbf8-ca57d06f2519>
Sun, 6 Feb 2005 17:27:34 +0000 (17:27 +0000)
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@153 3789f03b-4d11-0410-bbf8-ca57d06f2519

rfbplayer/rfbplayer.cxx
rfbplayer/rfbplayer.h

index c8ff8fc9ecf3abb1dc859d9c7faa69cb5d824fec..1a6dbfd24dac6c57fb1f82dba808d5eaeeb033e1 100644 (file)
@@ -205,7 +205,7 @@ RfbPlayer::RfbPlayer(char *_fileName, long _initTime = 0, double _playbackSpeed
   window_size(0, 0, 32, 32), cutText(0), seekMode(false), fileName(_fileName), 
   serverInitTime(0), lastPos(0), timeStatic(0), speedEdit(0), posTrackBar(0),
   speedUpDown(0), acceptBell(_acceptBell), rfbReader(0), sessionTimeMs(0),
-  sliderDraging(false), sliderStepMs(0) {
+  sliderDraging(false), sliderStepMs(0), loopPlayback(false) {
 
   if (showControls)
     CTRL_BAR_HEIGHT = 28;
@@ -316,6 +316,11 @@ RfbPlayer::processMainMessage(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
     case ID_FULLSCREEN:
       MessageBox(getMainHandle(), "It is not working yet!", "RfbPlayer", MB_OK);
       break;
+    case ID_LOOP:
+      loopPlayback = !loopPlayback;
+      if (loopPlayback) CheckMenuItem(hMenu, ID_LOOP, MF_CHECKED);
+      else CheckMenuItem(hMenu, ID_LOOP, MF_UNCHECKED);
+      break;
     case ID_RETURN:
         // Update the speed if return pressed in speedEdit
       if (speedEdit == GetFocus()) {
@@ -741,7 +746,7 @@ void RfbPlayer::processMsg() {
   } catch (rdr::Exception e) {
     if (strcmp(e.str(), "[End Of File]") == 0) {
       rewind();
-      setPaused(true);
+      setPaused(!loopPlayback);
       updatePos(getTimeOffset());
       SendMessage(posTrackBar, TBM_SETPOS, TRUE, 0);
       return;
index 9a3e5197408685ccf091a914f96405b5a7f5c6f3..a017b77c9c4da641f297bc8e7f03d4b53b4f0a29 100644 (file)
@@ -177,4 +177,5 @@ class RfbPlayer : public RfbProto {
     long serverInitTime;
     bool acceptBell;
     long sessionTimeMs;
+    bool loopPlayback;
 };