]> source.dussan.org Git - tigervnc.git/commitdiff
Added the open session file dialog implementation.
authorgeorge82 <george82@3789f03b-4d11-0410-bbf8-ca57d06f2519>
Sun, 6 Feb 2005 13:30:49 +0000 (13:30 +0000)
committergeorge82 <george82@3789f03b-4d11-0410-bbf8-ca57d06f2519>
Sun, 6 Feb 2005 13:30:49 +0000 (13:30 +0000)
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@149 3789f03b-4d11-0410-bbf8-ca57d06f2519

rfbplayer/rfbplayer.cxx
rfbplayer/rfbplayer.h

index 134bdeec212b5622994af73f818580a7b3ac07e6..d4fe41cbf07e6e471ed551f1a8ca28b70dc43c07 100644 (file)
@@ -274,6 +274,27 @@ RfbPlayer::processMainMessage(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
 
   case WM_COMMAND:
     switch (LOWORD(wParam)) {
+    case ID_OPENFILE:
+      {
+        char curDir[_MAX_DIR];
+        static char filename[_MAX_PATH];
+        OPENFILENAME ofn;
+        memset((void *) &ofn, 0, sizeof(OPENFILENAME));
+        GetCurrentDirectory(sizeof(curDir), curDir);
+       
+        ofn.lStructSize = sizeof(OPENFILENAME);
+        ofn.hwndOwner = getMainHandle();
+        ofn.lpstrFile = filename;
+        ofn.nMaxFile = sizeof(filename);
+        ofn.lpstrInitialDir = curDir;
+        ofn.lpstrFilter = "Rfb Session files (*.rfb)\0*.rfb\0" \
+                          "All files (*.*)\0*.*\0";
+        ofn.lpstrDefExt = "rfb";
+        ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;
+        if (GetOpenFileName(&ofn))
+          openSessionFile(filename);
+      }
+      break;
     case ID_PLAY:
       setPaused(false);
       break;
@@ -852,6 +873,7 @@ void RfbPlayer::openSessionFile(char *_fileName) {
 
   // Close the previous reading thread
   if (rfbReader) {
+    is->resumePlayback();
     delete rfbReader->join();
   }
   blankBuffer();
@@ -859,6 +881,7 @@ void RfbPlayer::openSessionFile(char *_fileName) {
   setSpeed(playbackSpeed);
   rfbReader = new rfbSessionReader(this);
   rfbReader->start();
+  SendMessage(posTrackBar, TBM_SETPOS, TRUE, 0);
 }
 
 void RfbPlayer::setPaused(bool paused) {
index 8ffa0448a3a128e25f2941a2530bee4b61aee9c4..9a3e5197408685ccf091a914f96405b5a7f5c6f3 100644 (file)
@@ -18,6 +18,7 @@
 
 // -=- RfbPlayer.h
 
+#include <commdlg.h>
 #include <windows.h>
 
 #include <rfb_win32/DIBSectionBuffer.h>