diff options
author | fbarchard@chromium.org <fbarchard@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-05-12 00:43:14 +0000 |
---|---|---|
committer | fbarchard@chromium.org <fbarchard@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-05-12 00:43:14 +0000 |
commit | 474e15bc5e4025a91ba857e6f0aae0affc5d7a07 (patch) | |
tree | ac4a67eb4a88ab59e147b2cc6c18ffc592972db9 /media | |
parent | 684092d90f495440a8924588f2cab834d5dcaba6 (diff) | |
download | chromium_src-474e15bc5e4025a91ba857e6f0aae0affc5d7a07.zip chromium_src-474e15bc5e4025a91ba857e6f0aae0affc5d7a07.tar.gz chromium_src-474e15bc5e4025a91ba857e6f0aae0affc5d7a07.tar.bz2 |
Media Player view rotation options.
Review URL: http://codereview.chromium.org/112016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15825 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media')
-rw-r--r-- | media/player/mainfrm.h | 48 | ||||
-rw-r--r-- | media/player/player_wtl.cc | 16 | ||||
-rwxr-xr-x | media/player/player_wtl.rc | 950 | ||||
-rw-r--r-- | media/player/resource.h | 120 | ||||
-rw-r--r-- | media/player/view.h | 123 |
5 files changed, 667 insertions, 590 deletions
diff --git a/media/player/mainfrm.h b/media/player/mainfrm.h index e1c9978..7874a01 100644 --- a/media/player/mainfrm.h +++ b/media/player/mainfrm.h @@ -77,7 +77,12 @@ class CMainFrame : public CFrameWindowImpl<CMainFrame>, UIEnable(ID_VIEW_FITTOSCREEN, false); // Not currently implemented. UIEnable(ID_VIEW_FULLSCREEN, false); // Not currently implemented. UIEnable(ID_VIEW_PROPERTIES, bEnable); - + UIEnable(ID_VIEW_ROTATE0, true); + UIEnable(ID_VIEW_ROTATE90, false); + UIEnable(ID_VIEW_ROTATE180, true); + UIEnable(ID_VIEW_ROTATE270, false); + UIEnable(ID_VIEW_MIRROR_HORIZONTAL, true); + UIEnable(ID_VIEW_MIRROR_VERTICAL, true); UIEnable(ID_PLAY_PLAY_PAUSE, bMovieOpen); // if no movie open. UIEnable(ID_PLAY_HALFSPEED, true); UIEnable(ID_PLAY_NORMALSPEED, true); @@ -207,6 +212,8 @@ class CMainFrame : public CFrameWindowImpl<CMainFrame>, COMMAND_RANGE_HANDLER_EX(ID_VIEW_HALFSIZE, ID_VIEW_FULLSCREEN, OnViewSize) COMMAND_ID_HANDLER_EX(ID_VIEW_TOOLBAR, OnViewToolBar) COMMAND_ID_HANDLER_EX(ID_VIEW_STATUS_BAR, OnViewStatusBar) + COMMAND_RANGE_HANDLER_EX(ID_VIEW_ROTATE0, ID_VIEW_MIRROR_VERTICAL, + OnViewRotate) COMMAND_ID_HANDLER_EX(ID_VIEW_PROPERTIES, OnViewProperties) COMMAND_ID_HANDLER_EX(ID_PLAY_PLAY_PAUSE, OnPlayPlayPause) COMMAND_RANGE_HANDLER_EX(ID_PLAY_HALFSPEED, ID_PLAY_DOUBLESPEED, @@ -236,6 +243,12 @@ class CMainFrame : public CFrameWindowImpl<CMainFrame>, UPDATE_ELEMENT(ID_VIEW_FULLSCREEN, UPDUI_MENUPOPUP) UPDATE_ELEMENT(ID_VIEW_TOOLBAR, UPDUI_MENUPOPUP) UPDATE_ELEMENT(ID_VIEW_STATUS_BAR, UPDUI_MENUPOPUP) + UPDATE_ELEMENT(ID_VIEW_ROTATE0, UPDUI_MENUPOPUP) + UPDATE_ELEMENT(ID_VIEW_ROTATE90, UPDUI_MENUPOPUP) + UPDATE_ELEMENT(ID_VIEW_ROTATE180, UPDUI_MENUPOPUP) + UPDATE_ELEMENT(ID_VIEW_ROTATE270, UPDUI_MENUPOPUP) + UPDATE_ELEMENT(ID_VIEW_MIRROR_HORIZONTAL, UPDUI_MENUPOPUP) + UPDATE_ELEMENT(ID_VIEW_MIRROR_VERTICAL, UPDUI_MENUPOPUP) UPDATE_ELEMENT(ID_VIEW_PROPERTIES, UPDUI_MENUPOPUP | UPDUI_TOOLBAR) UPDATE_ELEMENT(ID_PLAY_PLAY_PAUSE, UPDUI_MENUPOPUP | UPDUI_TOOLBAR) UPDATE_ELEMENT(ID_PLAY_HALFSPEED, UPDUI_MENUPOPUP) @@ -260,10 +273,22 @@ class CMainFrame : public CFrameWindowImpl<CMainFrame>, } void UpdateSpeedUICheck() { - float play_rate = media::Movie::get()->GetPlayRate(); - UISetCheck(ID_PLAY_HALFSPEED, (play_rate == 0.5f)); - UISetCheck(ID_PLAY_NORMALSPEED, (play_rate == 1.0f)); - UISetCheck(ID_PLAY_DOUBLESPEED, (play_rate == 2.0f)); + if (media::Movie::get()) { + float play_rate = media::Movie::get()->GetPlayRate(); + UISetCheck(ID_PLAY_HALFSPEED, (play_rate == 0.5f)); + UISetCheck(ID_PLAY_NORMALSPEED, (play_rate == 1.0f)); + UISetCheck(ID_PLAY_DOUBLESPEED, (play_rate == 2.0f)); + } + } + + void UpdateRotateUICheck() { + int view_rotate = m_view.GetViewRotate(); + UISetCheck(ID_VIEW_ROTATE0, (view_rotate == 0)); + UISetCheck(ID_VIEW_ROTATE90, (view_rotate == 1)); + UISetCheck(ID_VIEW_ROTATE180, (view_rotate == 2)); + UISetCheck(ID_VIEW_ROTATE270, (view_rotate == 3)); + UISetCheck(ID_VIEW_MIRROR_HORIZONTAL, (view_rotate == 4)); + UISetCheck(ID_VIEW_MIRROR_VERTICAL, (view_rotate == 5)); } int OnCreate(LPCREATESTRUCT /*lpCreateStruct*/) { @@ -312,6 +337,7 @@ class CMainFrame : public CFrameWindowImpl<CMainFrame>, UISetCheck(ID_PLAY_NORMALSPEED, 1); UISetCheck(ID_VIEW_TOOLBAR, 1); UISetCheck(ID_VIEW_STATUS_BAR, 1); + UISetCheck(ID_VIEW_ROTATE0, 1); UISetCheck(ID_OPTIONS_OPENMP, 0); UISetCheck(ID_OPTIONS_DRAW, 1); UISetCheck(ID_OPTIONS_AUDIO, 1); @@ -390,9 +416,9 @@ class CMainFrame : public CFrameWindowImpl<CMainFrame>, void OnFileOpen(UINT /*uNotifyCode*/, int /*nID*/, CWindow /*wnd*/) { CFileDialog dlg(TRUE, L"bmp", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, - L"Movie Files (*.mp4;*.mov;*.mkv;*.flv;*.avi;*.264)\0" - L"*.mp4;*.mov;*.mkv;*.flv;*.avi;*.264\0" - L"Bitmap Files (*.bmp)\0*.bmp\0All Files (*.*)\0*.*\0", + L"Movie Files (*.mp4;*.ogg;*.ogv)\0" + L"*.mp4;*.ogg;*.ogv\0" + L"Audio Files (*.mp3;*.m4a)\0*.mp3;*.m4a\0All Files (*.*)\0*.*\0", m_hWnd); if (dlg.DoModal() == IDOK) { MovieOpenFile(dlg.m_szFileName); @@ -537,6 +563,12 @@ class CMainFrame : public CFrameWindowImpl<CMainFrame>, UpdateLayout(); } + void OnViewRotate(UINT /*uNotifyCode*/, int nID, CWindow /*wnd*/) { + m_view.SetViewRotate(nID - ID_VIEW_ROTATE0); + UpdateRotateUICheck(); + UpdateLayout(); + } + void OnViewToolBar(UINT /*uNotifyCode*/, int /*nID*/, CWindow /*wnd*/) { static BOOL bNew = TRUE; // initially visible bNew = !bNew; diff --git a/media/player/player_wtl.cc b/media/player/player_wtl.cc index 46d0cea..0f89fd6 100644 --- a/media/player/player_wtl.cc +++ b/media/player/player_wtl.cc @@ -14,14 +14,14 @@ // Note this header must come before other ATL headers. #include "media/player/stdafx.h" -#include <atlcrack.h> -#include <atlctrls.h> -#include <atlctrlw.h> -#include <atldlgs.h> -#include <atlframe.h> -#include <atlmisc.h> -#include <atlprint.h> -#include <atlscrl.h> +#include <atlcrack.h> // NOLINT +#include <atlctrls.h> // NOLINT +#include <atlctrlw.h> // NOLINT +#include <atldlgs.h> // NOLINT +#include <atlframe.h> // NOLINT +#include <atlmisc.h> // NOLINT +#include <atlprint.h> // NOLINT +#include <atlscrl.h> // NOLINT // Note these headers are order sensitive. #include "base/at_exit.h" diff --git a/media/player/player_wtl.rc b/media/player/player_wtl.rc index 2470362..35999c9 100755 --- a/media/player/player_wtl.rc +++ b/media/player/player_wtl.rc @@ -1,472 +1,478 @@ -// Microsoft Visual C++ generated resource script.
-//
-#include "resource.h"
-
-#define APSTUDIO_READONLY_SYMBOLS
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 2 resource.
-//
-#include "../chrome/third_party/wtl/include/atlres.h"
-/////////////////////////////////////////////////////////////////////////////
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-// English (U.S.) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
-#ifdef _WIN32
-LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
-#pragma code_page(1252)
-#endif //_WIN32
-
-#ifdef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// TEXTINCLUDE
-//
-
-1 TEXTINCLUDE
-BEGIN
- "resource.h\0"
-END
-
-2 TEXTINCLUDE
-BEGIN
- "#include ""../chrome/third_party/wtl/include/atlres.h\0"
-END
-
-3 TEXTINCLUDE
-BEGIN
- "\r\0"
-END
-
-#endif // APSTUDIO_INVOKED
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Toolbar
-//
-
-IDR_MAINFRAME4 TOOLBAR 16, 15
-BEGIN
- BUTTON ID_PLAY_PLAY_PAUSE
- SEPARATOR
- BUTTON ID_FILE_OPEN
- BUTTON ID_RECENT_BTN
- SEPARATOR
- BUTTON ID_FILE_PRINT
- BUTTON ID_FILE_PRINT_PREVIEW
- BUTTON ID_FILE_PAGE_SETUP
- SEPARATOR
- BUTTON ID_EDIT_COPY
- BUTTON ID_EDIT_PASTE
- BUTTON ID_EDIT_CLEAR
- SEPARATOR
- BUTTON ID_VIEW_PROPERTIES
- BUTTON ID_APP_ABOUT
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Bitmap
-//
-
-IDR_MAINFRAME4 BITMAP "Toolbar.bmp"
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Menu
-//
-
-IDR_MAINFRAME MENU
-BEGIN
- POPUP "&File"
- BEGIN
- MENUITEM "&Open...\tCtrl+O", ID_FILE_OPEN
- MENUITEM SEPARATOR
- MENUITEM "&Print...\tCtrl+P", ID_FILE_PRINT
- MENUITEM "Print Pre&view", ID_FILE_PRINT_PREVIEW
- MENUITEM "Pa&ge Setup...", ID_FILE_PAGE_SETUP
- MENUITEM SEPARATOR
- POPUP "Recent &Files"
- BEGIN
- MENUITEM "(empty)", ID_FILE_MRU_FILE1
- END
- MENUITEM "&Last...\tLast+L", ID_FILE_LAST
- MENUITEM SEPARATOR
- MENUITEM "E&xit", ID_APP_EXIT
- END
- POPUP "&Edit"
- BEGIN
- MENUITEM "&Copy\tCtrl+C", ID_EDIT_COPY
- MENUITEM "&Paste\tCtrl+V", ID_EDIT_PASTE
- MENUITEM "Cl&ear\tCTRL+F4", ID_EDIT_CLEAR
- END
- POPUP "&View"
- BEGIN
- MENUITEM "&Half Size\tCtrl+0", ID_VIEW_HALFSIZE
- MENUITEM "&Normal Size\tCtrl+1", ID_VIEW_NORMALSIZE
- MENUITEM "&Double Size\tCtrl+2", ID_VIEW_DOUBLESIZE
- MENUITEM "Fit to Screen\tCtrl+3", ID_VIEW_FITTOSCREEN
- MENUITEM "&Full Screen\tCtrl+F", ID_VIEW_FULLSCREEN
- MENUITEM SEPARATOR
- MENUITEM "&Toolbar", ID_VIEW_TOOLBAR
- MENUITEM "&Status Bar", ID_VIEW_STATUS_BAR
- MENUITEM SEPARATOR
- MENUITEM "&Properties", ID_VIEW_PROPERTIES
- END
- POPUP "&Play"
- BEGIN
- MENUITEM "&Play/Pause\tSpace", ID_PLAY_PLAY_PAUSE
- MENUITEM SEPARATOR
- MENUITEM "&Half Speed\tCtrl+0", ID_PLAY_HALFSPEED
- MENUITEM "&Normal Speed\tCtrl+1", ID_PLAY_NORMALSPEED
- MENUITEM "&Double Speed\tCtrl+2", ID_PLAY_DOUBLESPEED
- END
- POPUP "&Options"
- BEGIN
- MENUITEM "&OpenMP", ID_OPTIONS_OPENMP
- MENUITEM "&MMX", ID_OPTIONS_MMX
- MENUITEM "SWScaler", ID_OPTIONS_SWSCALER
- MENUITEM "Draw", ID_OPTIONS_DRAW
- MENUITEM "Audio", ID_OPTIONS_AUDIO
- MENUITEM "Dump YUV File", ID_OPTIONS_DUMPYUVFILE
- END
- POPUP "&Help"
- BEGIN
- MENUITEM "&About Media Player...", ID_APP_ABOUT
- END
-END
-
-IDR_CONTEXTMENU MENU
-BEGIN
- POPUP ""
- BEGIN
- MENUITEM "&Copy\tCtrl+C", ID_EDIT_COPY
- MENUITEM "&Paste\tCtrl+V", ID_EDIT_PASTE
- MENUITEM "Cl&ear", ID_EDIT_CLEAR
- MENUITEM SEPARATOR
- MENUITEM "&Properties", ID_VIEW_PROPERTIES
- END
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Icon
-//
-
-// Icon with lowest ID value placed first to ensure application icon
-// remains consistent on all systems.
-IDR_MAINFRAME3 ICON "player_wtl.ico"
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Dialog
-//
-
-IDD_ABOUTBOX DIALOGEX 0, 0, 185, 126
-STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
-CAPTION "About"
-FONT 8, "MS Sans Serif", 0, 0, 0x0
-BEGIN
- DEFPUSHBUTTON "OK",IDOK,121,97,50,14
- CTEXT "Media Player v2.0\n\nApril 14, 2009\n\nCopyright (c) 2009 The Chromium Authors.\nAll rights reserved.",IDC_STATIC,7,43,171,49
- ICON IDR_MAINFRAME3,IDC_STATIC,80,17,21,20
- GROUPBOX "",IDC_STATIC,7,7,171,112
-END
-
-IDD_PROP_PAGE1 DIALOGEX 0, 0, 212, 114
-STYLE DS_SETFONT | WS_CHILD | WS_CAPTION
-CAPTION "Movie"
-FONT 8, "MS Sans Serif", 0, 0, 0x0
-BEGIN
- LTEXT "Location:",IDC_STATIC,5,20,30,8
- LTEXT "Size:",IDC_STATIC,5,41,16,8
- LTEXT "Created:",IDC_STATIC,5,60,28,8
- LTEXT "Attributes:",IDC_STATIC,5,81,32,8
- LTEXT "Static",IDC_FILESIZE,40,41,170,8
- LTEXT "Static",IDC_FILEDATE,40,60,170,8
- LTEXT "Static",IDC_FILEATTRIB,40,81,170,8
- LTEXT "Static",IDC_FILELOCATION,40,20,170,8,SS_NOTIFY
-END
-
-IDD_PROP_PAGE2 DIALOGEX 0, 0, 212, 114
-STYLE DS_SETFONT | WS_CHILD | WS_CAPTION
-CAPTION "Frame"
-FONT 8, "MS Sans Serif", 0, 0, 0x0
-BEGIN
- LTEXT "Type:",IDC_STATIC,15,10,80,8
- LTEXT "Static",IDC_TYPE,100,10,105,8
- LTEXT "Width:",IDC_STATIC,15,25,80,8
- LTEXT "Static",IDC_WIDTH,100,25,105,8
- LTEXT "Height:",IDC_STATIC,15,40,80,8
- LTEXT "Static",IDC_HEIGHT,100,40,105,8
- LTEXT "Horizontal Resolution:",IDC_STATIC,15,55,80,8
- LTEXT "Static",IDC_HORRES,100,55,105,8
- LTEXT "Vertical Resolution:",IDC_STATIC,15,70,80,8
- LTEXT "Static",IDC_VERTRES,100,70,105,8
- LTEXT "Bit Depth:",IDC_STATIC,15,85,80,8
- LTEXT "Static",IDC_BITDEPTH,100,85,105,8
- LTEXT "Compression:",IDC_STATIC,15,100,80,8
- LTEXT "Static",IDC_COMPRESSION,100,100,105,8
-END
-
-IDD_PROP_PAGE3 DIALOGEX 0, 0, 212, 114
-STYLE DS_SETFONT | WS_CHILD | WS_CAPTION
-CAPTION "Screen"
-FONT 8, "MS Sans Serif", 0, 0, 0x0
-BEGIN
- LTEXT "Width:",IDC_STATIC,15,25,80,8
- LTEXT "Static",IDC_WIDTH,100,25,105,8
- LTEXT "Height:",IDC_STATIC,15,40,80,8
- LTEXT "Static",IDC_HEIGHT,100,40,105,8
- LTEXT "Horizontal DPI:",IDC_STATIC,15,55,80,8
- LTEXT "Static",IDC_HORRES,100,55,105,8
- LTEXT "Vertical DPI:",IDC_STATIC,15,70,80,8
- LTEXT "Static",IDC_VERTRES,100,70,105,8
- LTEXT "Bit Depth:",IDC_STATIC,15,85,80,8
- LTEXT "Static",IDC_BITDEPTH,100,85,105,8
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// DESIGNINFO
-//
-
-#ifdef APSTUDIO_INVOKED
-GUIDELINES DESIGNINFO
-BEGIN
- IDD_ABOUTBOX, DIALOG
- BEGIN
- LEFTMARGIN, 7
- RIGHTMARGIN, 178
- TOPMARGIN, 7
- BOTTOMMARGIN, 119
- END
-
- IDD_PROP_PAGE1, DIALOG
- BEGIN
- LEFTMARGIN, 5
- RIGHTMARGIN, 205
- TOPMARGIN, 7
- BOTTOMMARGIN, 107
- END
-
- IDD_PROP_PAGE2, DIALOG
- BEGIN
- LEFTMARGIN, 7
- RIGHTMARGIN, 205
- TOPMARGIN, 7
- BOTTOMMARGIN, 107
- END
-
- IDD_PROP_PAGE3, DIALOG
- BEGIN
- LEFTMARGIN, 7
- RIGHTMARGIN, 205
- TOPMARGIN, 7
- BOTTOMMARGIN, 107
- END
-END
-#endif // APSTUDIO_INVOKED
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Accelerator
-//
-
-IDR_MAINFRAME2 ACCELERATORS
-BEGIN
- VK_F4, ID_EDIT_CLEAR, VIRTKEY, CONTROL, NOINVERT
- "C", ID_EDIT_COPY, VIRTKEY, CONTROL, NOINVERT
- VK_INSERT, ID_EDIT_COPY, VIRTKEY, CONTROL, NOINVERT
- "V", ID_EDIT_PASTE, VIRTKEY, CONTROL, NOINVERT
- VK_INSERT, ID_EDIT_PASTE, VIRTKEY, SHIFT, NOINVERT
- "O", ID_FILE_OPEN, VIRTKEY, CONTROL, NOINVERT
- "L", ID_FILE_LAST, VIRTKEY, CONTROL, NOINVERT
- "P", ID_FILE_PRINT, VIRTKEY, CONTROL, NOINVERT
- "0", ID_PLAY_HALFSPEED, VIRTKEY, ALT, NOINVERT
- "1", ID_PLAY_NORMALSPEED, VIRTKEY, ALT, NOINVERT
- "2", ID_PLAY_DOUBLESPEED, VIRTKEY, ALT, NOINVERT
- " ", ID_PLAY_PLAY_PAUSE, ASCII, NOINVERT
- "0", ID_VIEW_HALFSIZE, VIRTKEY, CONTROL, NOINVERT
- "1", ID_VIEW_NORMALSIZE, VIRTKEY, CONTROL, NOINVERT
- "2", ID_VIEW_DOUBLESIZE, VIRTKEY, CONTROL, NOINVERT
- "3", ID_VIEW_FITTOSCREEN, VIRTKEY, CONTROL, NOINVERT
- "F", ID_VIEW_FULLSCREEN, VIRTKEY, CONTROL, NOINVERT
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Version
-//
-
-VS_VERSION_INFO VERSIONINFO
- FILEVERSION 1,0,0,1
- PRODUCTVERSION 1,0,0,1
- FILEFLAGSMASK 0x3fL
-#ifdef _DEBUG
- FILEFLAGS 0x1L
-#else
- FILEFLAGS 0x0L
-#endif
- FILEOS 0x4L
- FILETYPE 0x2L
- FILESUBTYPE 0x0L
-BEGIN
- BLOCK "StringFileInfo"
- BEGIN
- BLOCK "040904b0"
- BEGIN
- VALUE "Comments", "Written by Frank Barchard"
- VALUE "FileDescription", "media_player"
- VALUE "FileVersion", "1, 0, 0, 1"
- VALUE "InternalName", "media_player_wtl"
- VALUE "LegalCopyright", "Copyright 2009"
- VALUE "OriginalFilename", "media_player_wtl.exe"
- VALUE "ProductName", "media_player"
- VALUE "ProductVersion", "1, 0, 0, 1"
- END
- END
- BLOCK "VarFileInfo"
- BEGIN
- VALUE "Translation", 0x409, 1200
- END
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// String Table
-//
-
-STRINGTABLE
-BEGIN
- IDR_MAINFRAME "Media Player"
-END
-
-STRINGTABLE
-BEGIN
- ID_FILE_NEW "Create a new document\nNew"
- ID_FILE_OPEN "Open a movie\nOpen"
- ID_FILE_CLOSE "Close movie\nClose"
- ID_FILE_SAVE "Save the movie\nSave"
- ID_FILE_SAVE_AS "Save the movie with a new name\nSave As"
- ID_FILE_PAGE_SETUP "Change the printing options\nPage Setup"
- ID_FILE_PRINT_SETUP "Change the printer and printing options\nPrint Setup"
- ID_FILE_PRINT "Print the movie\nPrint"
- ID_FILE_PRINT_PREVIEW "Display full pages\nPrint Preview"
-END
-
-STRINGTABLE
-BEGIN
- ID_VIEW_FULLSCREEN "Full screen mode."
- ID_PLAY_HALFSPEED "Play movie at half normal speed."
- ID_PLAY_NORMALSPEED "Play movie at normal speed."
- ID_PLAY_DOUBLESPEED "Play movie at twice the normal speed."
- ID_FILE_LAST "Replay last movie\nOpen"
-END
-
-STRINGTABLE
-BEGIN
- ID_APP_ABOUT "Display program information, version number and copyright\nAbout"
- ID_APP_EXIT "Quit the application; prompts to save documents\nExit"
-END
-
-STRINGTABLE
-BEGIN
- ID_NEXT_PANE "Switch to the next window pane\nNext Pane"
- ID_PREV_PANE "Switch back to the previous window pane\nPrevious Pane"
-END
-
-STRINGTABLE
-BEGIN
- ID_WINDOW_NEW "Open another window for the movie\nNew Window"
- ID_WINDOW_ARRANGE "Arrange icons at the bottom of the window\nArrange Icons"
- ID_WINDOW_CASCADE "Arrange windows so they overlap\nCascade Windows"
- ID_WINDOW_TILE_HORZ "Arrange windows as non-overlapping tiles\nTile Windows"
- ID_WINDOW_TILE_VERT "Arrange windows as non-overlapping tiles\nTile Windows"
- ID_WINDOW_SPLIT "Split the active window into panes\nSplit"
-END
-
-STRINGTABLE
-BEGIN
- ID_EDIT_CLEAR "Removes the movie\nClear"
- ID_EDIT_CLEAR_ALL "Erase everything\nErase All"
- ID_EDIT_COPY "Copy the movie and put it on the Clipboard\nCopy"
- ID_EDIT_CUT "Cut the selection and put it on the Clipboard\nCut"
- ID_EDIT_FIND "Find the specified text\nFind"
- ID_EDIT_PASTE "Insert movie from the Clipboard\nPaste"
- ID_EDIT_REPEAT "Repeat the last action\nRepeat"
- ID_EDIT_REPLACE "Replace specific text with different text\nReplace"
- ID_EDIT_SELECT_ALL "Select the entire document\nSelect All"
- ID_EDIT_UNDO "Undo the last action\nUndo"
- ID_EDIT_REDO "Redo the previously undone action\nRedo"
-END
-
-STRINGTABLE
-BEGIN
- ID_VIEW_TOOLBAR "Show or hide the toolbar\nToggle ToolBar"
- ID_VIEW_STATUS_BAR "Show or hide the status bar\nToggle StatusBar"
-END
-
-STRINGTABLE
-BEGIN
- ATL_IDS_SCSIZE "Change the window size"
- ATL_IDS_SCMOVE "Change the window position"
- ATL_IDS_SCMINIMIZE "Reduce the window to an icon"
- ATL_IDS_SCMAXIMIZE "Enlarge the window to full size"
- ATL_IDS_SCNEXTWINDOW "Switch to the next document window"
- ATL_IDS_SCPREVWINDOW "Switch to the previous document window"
- ATL_IDS_SCCLOSE "Close the active window and prompts to save the documents"
-END
-
-STRINGTABLE
-BEGIN
- ATL_IDS_SCRESTORE "Restore the window to normal size"
- ATL_IDS_SCTASKLIST "Activate Task List"
- ATL_IDS_MDICHILD "Activate this window"
-END
-
-STRINGTABLE
-BEGIN
- ATL_IDS_IDLEMESSAGE "Ready"
-END
-
-STRINGTABLE
-BEGIN
- ATL_IDS_MRU_FILE "Open this document"
-END
-
-STRINGTABLE
-BEGIN
- ID_RECENT_BTN "\nRecent Files"
- ID_VIEW_PROPERTIES "Displays movie properties\nProperties"
- ID_PLAY_PLAY_PAUSE "Start or pause movie playback"
-END
-
-STRINGTABLE
-BEGIN
- ID_OPTIONS_MMX "Enable CPU extensions including MMX and SSE"
- ID_OPTIONS_OPENMP "Enable OpenMP for YUV"
- ID_OPTIONS_SWSCALER "Use SWScaler YUV conversion"
- ID_OPTIONS_DRAW "Enable/Disable Draws"
- ID_OPTIONS_AUDIO "Enable/Disable Audio"
- ID_OPTIONS_DUMPYUVFILE "Dump YUV frames to a file"
- ID_VIEW_HALFSIZE "View movie at half normal size."
- ID_VIEW_NORMALSIZE "View movie at normal size."
- ID_VIEW_DOUBLESIZE "View movie at twice the normal size."
- ID_VIEW_FITTOSCREEN "Maximize window to desktop."
-END
-
-#endif // English (U.S.) resources
-/////////////////////////////////////////////////////////////////////////////
-
-
+// Microsoft Visual C++ generated resource script. +// +#include "resource.h" + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#include "../chrome/third_party/wtl/include/atlres.h" +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// English (U.S.) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) +#ifdef _WIN32 +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US +#pragma code_page(1252) +#endif //_WIN32 + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +1 TEXTINCLUDE +BEGIN + "resource.h\0" +END + +2 TEXTINCLUDE +BEGIN + "../chrome/third_party/wtl/include/atlres.h\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Toolbar +// + +IDR_MAINFRAME4 TOOLBAR 16, 15 +BEGIN + BUTTON ID_PLAY_PLAY_PAUSE + SEPARATOR + BUTTON ID_FILE_OPEN + BUTTON ID_RECENT_BTN + SEPARATOR + BUTTON ID_FILE_PRINT + BUTTON ID_FILE_PRINT_PREVIEW + BUTTON ID_FILE_PAGE_SETUP + SEPARATOR + BUTTON ID_EDIT_COPY + BUTTON ID_EDIT_PASTE + BUTTON ID_EDIT_CLEAR + SEPARATOR + BUTTON ID_VIEW_PROPERTIES + BUTTON ID_APP_ABOUT +END + + +///////////////////////////////////////////////////////////////////////////// +// +// Bitmap +// + +IDR_MAINFRAME4 BITMAP "Toolbar.bmp" + +///////////////////////////////////////////////////////////////////////////// +// +// Menu +// + +IDR_MAINFRAME MENU +BEGIN + POPUP "&File" + BEGIN + MENUITEM "&Open...\tCtrl+O", ID_FILE_OPEN + MENUITEM SEPARATOR + MENUITEM "&Print...\tCtrl+P", ID_FILE_PRINT + MENUITEM "Print Pre&view", ID_FILE_PRINT_PREVIEW + MENUITEM "Pa&ge Setup...", ID_FILE_PAGE_SETUP + MENUITEM SEPARATOR + POPUP "Recent &Files" + BEGIN + MENUITEM "(empty)", ID_FILE_MRU_FILE1 + END + MENUITEM "&Last...\tLast+L", ID_FILE_LAST + MENUITEM SEPARATOR + MENUITEM "E&xit", ID_APP_EXIT + END + POPUP "&Edit" + BEGIN + MENUITEM "&Copy\tCtrl+C", ID_EDIT_COPY + MENUITEM "&Paste\tCtrl+V", ID_EDIT_PASTE + MENUITEM "Cl&ear\tCTRL+F4", ID_EDIT_CLEAR + END + POPUP "&View" + BEGIN + MENUITEM "&Half Size\tCtrl+0", ID_VIEW_HALFSIZE + MENUITEM "&Normal Size\tCtrl+1", ID_VIEW_NORMALSIZE + MENUITEM "&Double Size\tCtrl+2", ID_VIEW_DOUBLESIZE + MENUITEM "Fit to Screen\tCtrl+3", ID_VIEW_FITTOSCREEN + MENUITEM "&Full Screen\tCtrl+F", ID_VIEW_FULLSCREEN + MENUITEM SEPARATOR + MENUITEM "&Toolbar", ID_VIEW_TOOLBAR + MENUITEM "&Status Bar", ID_VIEW_STATUS_BAR + MENUITEM SEPARATOR + MENUITEM "N&o Rotation", ID_VIEW_ROTATE0 + MENUITEM "Rotate &90", ID_VIEW_ROTATE90 + MENUITEM "Rotate &180", ID_VIEW_ROTATE180 + MENUITEM "Rotate &270", ID_VIEW_ROTATE270 + MENUITEM "&Mirror Horizontally", ID_VIEW_MIRROR_HORIZONTAL + MENUITEM "Mirror &Vertically", ID_VIEW_MIRROR_VERTICAL + MENUITEM SEPARATOR + MENUITEM "&Properties", ID_VIEW_PROPERTIES + END + POPUP "&Play" + BEGIN + MENUITEM "&Play/Pause\tSpace", ID_PLAY_PLAY_PAUSE + MENUITEM SEPARATOR + MENUITEM "&Half Speed\tAlt+0", ID_PLAY_HALFSPEED + MENUITEM "&Normal Speed\tAlt+1", ID_PLAY_NORMALSPEED + MENUITEM "&Double Speed\tAlt+2", ID_PLAY_DOUBLESPEED + END + POPUP "&Options" + BEGIN + MENUITEM "&OpenMP", ID_OPTIONS_OPENMP + MENUITEM "&MMX", ID_OPTIONS_MMX + MENUITEM "SWScaler", ID_OPTIONS_SWSCALER + MENUITEM "Draw", ID_OPTIONS_DRAW + MENUITEM "Audio", ID_OPTIONS_AUDIO + MENUITEM "Dump YUV File", ID_OPTIONS_DUMPYUVFILE + END + POPUP "&Help" + BEGIN + MENUITEM "&About Media Player...", ID_APP_ABOUT + END +END + +IDR_CONTEXTMENU MENU +BEGIN + POPUP "" + BEGIN + MENUITEM "&Copy\tCtrl+C", ID_EDIT_COPY + MENUITEM "&Paste\tCtrl+V", ID_EDIT_PASTE + MENUITEM "Cl&ear", ID_EDIT_CLEAR + MENUITEM SEPARATOR + MENUITEM "&Properties", ID_VIEW_PROPERTIES + END +END + + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDR_MAINFRAME3 ICON "player_wtl.ico" + +///////////////////////////////////////////////////////////////////////////// +// +// Dialog +// + +IDD_ABOUTBOX DIALOGEX 0, 0, 185, 126 +STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "About" +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + DEFPUSHBUTTON "OK",IDOK,121,97,50,14 + CTEXT "Media Player v2.0\n\nApril 14, 2009\n\nCopyright (c) 2009 The Chromium Authors.\nAll rights reserved.",IDC_STATIC,7,43,171,49 + ICON IDR_MAINFRAME3,IDC_STATIC,80,17,21,20 + GROUPBOX "",IDC_STATIC,7,7,171,112 +END + +IDD_PROP_PAGE1 DIALOGEX 0, 0, 212, 114 +STYLE DS_SETFONT | WS_CHILD | WS_CAPTION +CAPTION "Movie" +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + LTEXT "Location:",IDC_STATIC,5,20,30,8 + LTEXT "Size:",IDC_STATIC,5,41,16,8 + LTEXT "Created:",IDC_STATIC,5,60,28,8 + LTEXT "Attributes:",IDC_STATIC,5,81,32,8 + LTEXT "Static",IDC_FILESIZE,40,41,170,8 + LTEXT "Static",IDC_FILEDATE,40,60,170,8 + LTEXT "Static",IDC_FILEATTRIB,40,81,170,8 + LTEXT "Static",IDC_FILELOCATION,40,20,170,8,SS_NOTIFY +END + +IDD_PROP_PAGE2 DIALOGEX 0, 0, 212, 114 +STYLE DS_SETFONT | WS_CHILD | WS_CAPTION +CAPTION "Frame" +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + LTEXT "Type:",IDC_STATIC,15,10,80,8 + LTEXT "Static",IDC_TYPE,100,10,105,8 + LTEXT "Width:",IDC_STATIC,15,25,80,8 + LTEXT "Static",IDC_WIDTH,100,25,105,8 + LTEXT "Height:",IDC_STATIC,15,40,80,8 + LTEXT "Static",IDC_HEIGHT,100,40,105,8 + LTEXT "Horizontal Resolution:",IDC_STATIC,15,55,80,8 + LTEXT "Static",IDC_HORRES,100,55,105,8 + LTEXT "Vertical Resolution:",IDC_STATIC,15,70,80,8 + LTEXT "Static",IDC_VERTRES,100,70,105,8 + LTEXT "Bit Depth:",IDC_STATIC,15,85,80,8 + LTEXT "Static",IDC_BITDEPTH,100,85,105,8 + LTEXT "Compression:",IDC_STATIC,15,100,80,8 + LTEXT "Static",IDC_COMPRESSION,100,100,105,8 +END + +IDD_PROP_PAGE3 DIALOGEX 0, 0, 212, 114 +STYLE DS_SETFONT | WS_CHILD | WS_CAPTION +CAPTION "Screen" +FONT 8, "MS Sans Serif", 0, 0, 0x0 +BEGIN + LTEXT "Width:",IDC_STATIC,15,25,80,8 + LTEXT "Static",IDC_WIDTH,100,25,105,8 + LTEXT "Height:",IDC_STATIC,15,40,80,8 + LTEXT "Static",IDC_HEIGHT,100,40,105,8 + LTEXT "Horizontal DPI:",IDC_STATIC,15,55,80,8 + LTEXT "Static",IDC_HORRES,100,55,105,8 + LTEXT "Vertical DPI:",IDC_STATIC,15,70,80,8 + LTEXT "Static",IDC_VERTRES,100,70,105,8 + LTEXT "Bit Depth:",IDC_STATIC,15,85,80,8 + LTEXT "Static",IDC_BITDEPTH,100,85,105,8 +END + + +///////////////////////////////////////////////////////////////////////////// +// +// DESIGNINFO +// + +#ifdef APSTUDIO_INVOKED +GUIDELINES DESIGNINFO +BEGIN + IDD_ABOUTBOX, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 178 + TOPMARGIN, 7 + BOTTOMMARGIN, 119 + END + + IDD_PROP_PAGE1, DIALOG + BEGIN + LEFTMARGIN, 5 + RIGHTMARGIN, 205 + TOPMARGIN, 7 + BOTTOMMARGIN, 107 + END + + IDD_PROP_PAGE2, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 205 + TOPMARGIN, 7 + BOTTOMMARGIN, 107 + END + + IDD_PROP_PAGE3, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 205 + TOPMARGIN, 7 + BOTTOMMARGIN, 107 + END +END +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Accelerator +// + +IDR_MAINFRAME2 ACCELERATORS +BEGIN + VK_F4, ID_EDIT_CLEAR, VIRTKEY, CONTROL, NOINVERT + "C", ID_EDIT_COPY, VIRTKEY, CONTROL, NOINVERT + VK_INSERT, ID_EDIT_COPY, VIRTKEY, CONTROL, NOINVERT + "V", ID_EDIT_PASTE, VIRTKEY, CONTROL, NOINVERT + VK_INSERT, ID_EDIT_PASTE, VIRTKEY, SHIFT, NOINVERT + "O", ID_FILE_OPEN, VIRTKEY, CONTROL, NOINVERT + "L", ID_FILE_LAST, VIRTKEY, CONTROL, NOINVERT + "P", ID_FILE_PRINT, VIRTKEY, CONTROL, NOINVERT + "0", ID_PLAY_HALFSPEED, VIRTKEY, ALT, NOINVERT + "1", ID_PLAY_NORMALSPEED, VIRTKEY, ALT, NOINVERT + "2", ID_PLAY_DOUBLESPEED, VIRTKEY, ALT, NOINVERT + " ", ID_PLAY_PLAY_PAUSE, ASCII, NOINVERT + "0", ID_VIEW_HALFSIZE, VIRTKEY, CONTROL, NOINVERT + "1", ID_VIEW_NORMALSIZE, VIRTKEY, CONTROL, NOINVERT + "2", ID_VIEW_DOUBLESIZE, VIRTKEY, CONTROL, NOINVERT + "3", ID_VIEW_FITTOSCREEN, VIRTKEY, CONTROL, NOINVERT + "F", ID_VIEW_FULLSCREEN, VIRTKEY, CONTROL, NOINVERT +END + + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +VS_VERSION_INFO VERSIONINFO + FILEVERSION 1,0,0,1 + PRODUCTVERSION 1,0,0,1 + FILEFLAGSMASK 0x3fL +#ifdef _DEBUG + FILEFLAGS 0x1L +#else + FILEFLAGS 0x0L +#endif + FILEOS 0x4L + FILETYPE 0x2L + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904b0" + BEGIN + VALUE "Comments", "Written by Frank Barchard" + VALUE "FileDescription", "media_player" + VALUE "FileVersion", "1, 0, 0, 1" + VALUE "InternalName", "media_player_wtl" + VALUE "LegalCopyright", "Copyright 2009" + VALUE "OriginalFilename", "media_player_wtl.exe" + VALUE "ProductName", "media_player" + VALUE "ProductVersion", "1, 0, 0, 1" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1200 + END +END + + +///////////////////////////////////////////////////////////////////////////// +// +// String Table +// + +STRINGTABLE +BEGIN + IDR_MAINFRAME "Media Player" +END + +STRINGTABLE +BEGIN + ID_FILE_NEW "Create a new document\nNew" + ID_FILE_OPEN "Open a movie\nOpen" + ID_FILE_CLOSE "Close movie\nClose" + ID_FILE_SAVE "Save the movie\nSave" + ID_FILE_SAVE_AS "Save the movie with a new name\nSave As" + ID_FILE_PAGE_SETUP "Change the printing options\nPage Setup" + ID_FILE_PRINT_SETUP "Change the printer and printing options\nPrint Setup" + ID_FILE_PRINT "Print the movie\nPrint" + ID_FILE_PRINT_PREVIEW "Display full pages\nPrint Preview" +END + +STRINGTABLE +BEGIN + ID_VIEW_FULLSCREEN "Full screen mode." + ID_PLAY_HALFSPEED "Play movie at half normal speed." + ID_PLAY_NORMALSPEED "Play movie at normal speed." + ID_PLAY_DOUBLESPEED "Play movie at twice the normal speed." + ID_FILE_LAST "Replay last movie\nOpen" + ID_VIEW_ROTATE0 "Turn off rotation." + ID_VIEW_ROTATE90 "Rotate movie by 90 degrees clockwise." + ID_VIEW_ROTATE180 "Rotate movie by 180 degrees." + ID_VIEW_ROTATE270 "Rotate movie by 270 degrees clockwise." + ID_VIEW_MIRROR_HORIZONTAL "Mirror movie horizontally." + ID_VIEW_MIRROR_VERTICAL "Mirror movie vertically." +END + +STRINGTABLE +BEGIN + ID_APP_ABOUT "Display program information, version number and copyright\nAbout" + ID_APP_EXIT "Quit the application; prompts to save documents\nExit" +END + +STRINGTABLE +BEGIN + ID_NEXT_PANE "Switch to the next window pane\nNext Pane" + ID_PREV_PANE "Switch back to the previous window pane\nPrevious Pane" +END + +STRINGTABLE +BEGIN + ID_WINDOW_NEW "Open another window for the movie\nNew Window" + ID_WINDOW_ARRANGE "Arrange icons at the bottom of the window\nArrange Icons" + ID_WINDOW_CASCADE "Arrange windows so they overlap\nCascade Windows" + ID_WINDOW_TILE_HORZ "Arrange windows as non-overlapping tiles\nTile Windows" + ID_WINDOW_TILE_VERT "Arrange windows as non-overlapping tiles\nTile Windows" + ID_WINDOW_SPLIT "Split the active window into panes\nSplit" +END + +STRINGTABLE +BEGIN + ID_EDIT_CLEAR "Removes the movie\nClear" + ID_EDIT_CLEAR_ALL "Erase everything\nErase All" + ID_EDIT_COPY "Copy the movie and put it on the Clipboard\nCopy" + ID_EDIT_CUT "Cut the selection and put it on the Clipboard\nCut" + ID_EDIT_FIND "Find the specified text\nFind" + ID_EDIT_PASTE "Insert movie from the Clipboard\nPaste" + ID_EDIT_REPEAT "Repeat the last action\nRepeat" + ID_EDIT_REPLACE "Replace specific text with different text\nReplace" + ID_EDIT_SELECT_ALL "Select the entire document\nSelect All" + ID_EDIT_UNDO "Undo the last action\nUndo" + ID_EDIT_REDO "Redo the previously undone action\nRedo" +END + +STRINGTABLE +BEGIN + ID_VIEW_TOOLBAR "Show or hide the toolbar\nToggle ToolBar" + ID_VIEW_STATUS_BAR "Show or hide the status bar\nToggle StatusBar" +END + +STRINGTABLE +BEGIN + ATL_IDS_SCSIZE "Change the window size" + ATL_IDS_SCMOVE "Change the window position" + ATL_IDS_SCMINIMIZE "Reduce the window to an icon" + ATL_IDS_SCMAXIMIZE "Enlarge the window to full size" + ATL_IDS_SCNEXTWINDOW "Switch to the next document window" + ATL_IDS_SCPREVWINDOW "Switch to the previous document window" + ATL_IDS_SCCLOSE "Close the active window and prompts to save the documents" +END + +STRINGTABLE +BEGIN + ATL_IDS_SCRESTORE "Restore the window to normal size" + ATL_IDS_SCTASKLIST "Activate Task List" + ATL_IDS_MDICHILD "Activate this window" +END + +STRINGTABLE +BEGIN + ATL_IDS_IDLEMESSAGE "Ready" +END + +STRINGTABLE +BEGIN + ATL_IDS_MRU_FILE "Open this document" +END + +STRINGTABLE +BEGIN + ID_RECENT_BTN "\nRecent Files" + ID_VIEW_PROPERTIES "Displays movie properties\nProperties" + ID_PLAY_PLAY_PAUSE "Start or pause movie playback" +END + +STRINGTABLE +BEGIN + ID_OPTIONS_MMX "Enable CPU extensions including MMX and SSE" + ID_OPTIONS_OPENMP "Enable OpenMP for YUV" + ID_OPTIONS_SWSCALER "Use SWScaler YUV conversion" + ID_OPTIONS_DRAW "Enable/Disable Draws" + ID_OPTIONS_AUDIO "Enable/Disable Audio" + ID_OPTIONS_DUMPYUVFILE "Dump YUV frames to a file" + ID_VIEW_HALFSIZE "View movie at half normal size." + ID_VIEW_NORMALSIZE "View movie at normal size." + ID_VIEW_DOUBLESIZE "View movie at twice the normal size." + ID_VIEW_FITTOSCREEN "Maximize window to desktop." +END + +#endif // English (U.S.) resources +///////////////////////////////////////////////////////////////////////////// diff --git a/media/player/resource.h b/media/player/resource.h index d009d7b..c1a9457 100644 --- a/media/player/resource.h +++ b/media/player/resource.h @@ -1,56 +1,64 @@ -//{{NO_DEPENDENCIES}}
-// Microsoft Visual C++ generated include file.
-// Used by player_wtl.rc
-//
-#define IDD_ABOUTBOX 100
-#define IDR_MAINFRAME 128
-#define IDR_MAINFRAME2 128
-#define IDR_MAINFRAME3 128
-#define IDR_MAINFRAME4 128
-#define IDR_CONTEXTMENU 201
-#define IDD_PROP_PAGE1 202
-#define IDD_PROP_PAGE2 203
-#define IDD_PROP_PAGE3 204
-#define IDC_TYPE 1001
-#define IDC_WIDTH 1002
-#define IDC_HEIGHT 1003
-#define IDC_HORRES 1004
-#define IDC_VERTRES 1005
-#define IDC_BITDEPTH 1006
-#define IDC_COMPRESSION 1008
-#define IDC_FILELOCATION 1009
-#define IDC_FILESIZE 1010
-#define IDC_FILEDATE 1011
-#define IDC_FILEATTRIB 1012
-#define ID_RECENT_BTN 32777
-#define ID_VIEW_PROPERTIES 32778
-#define ID_VIEW_MEDIADETAILS 32780
-#define ID_PLAY_PLAY 32781
-#define ID_PLAY_PLAY_PAUSE 32782
-#define ID_OPTIONS_MMX 32789
-#define ID_OPTIONS_OPENMP 32790
-#define ID_OPTIONS_SWSCALER 32791
-#define ID_OPTIONS_DRAW 32792
-#define ID_OPTIONS_AUDIO 32793
-#define ID_OPTIONS_DUMPYUVFILE 32794
-#define ID_Menu 32795
-#define ID_VIEW_HALFSIZE 32796
-#define ID_VIEW_NORMALSIZE 32797
-#define ID_VIEW_DOUBLESIZE 32798
-#define ID_VIEW_FITTOSCREEN 32799
-#define ID_VIEW_FULLSCREEN 32800
-#define ID_PLAY_HALFSPEED 32801
-#define ID_PLAY_NORMALSPEED 32802
-#define ID_PLAY_DOUBLESPEED 32803
-#define ID_FILE_LAST 32804
-
-// Next default values for new objects
-//
-#ifdef APSTUDIO_INVOKED
-#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 203
-#define _APS_NEXT_COMMAND_VALUE 32806
-#define _APS_NEXT_CONTROL_VALUE 1013
-#define _APS_NEXT_SYMED_VALUE 101
-#endif
-#endif
+//{{NO_DEPENDENCIES}} +// Microsoft Visual C++ generated include file. +// Used by player_wtl.rc +// +#define IDD_ABOUTBOX 100 +#define IDR_MAINFRAME 128 +#define IDR_MAINFRAME2 128 +#define IDR_MAINFRAME3 128 +#define IDR_MAINFRAME4 128 +#define IDR_CONTEXTMENU 201 +#define IDD_PROP_PAGE1 202 +#define IDD_PROP_PAGE2 203 +#define IDD_PROP_PAGE3 204 +#define IDC_TYPE 1001 +#define IDC_WIDTH 1002 +#define IDC_HEIGHT 1003 +#define IDC_HORRES 1004 +#define IDC_VERTRES 1005 +#define IDC_BITDEPTH 1006 +#define IDC_COMPRESSION 1008 +#define IDC_FILELOCATION 1009 +#define IDC_FILESIZE 1010 +#define IDC_FILEDATE 1011 +#define IDC_FILEATTRIB 1012 +#define ID_RECENT_BTN 32777 +#define ID_VIEW_PROPERTIES 32778 +#define ID_VIEW_MEDIADETAILS 32780 +#define ID_PLAY_PLAY 32781 +#define ID_PLAY_PLAY_PAUSE 32782 +#define ID_OPTIONS_MMX 32789 +#define ID_OPTIONS_OPENMP 32790 +#define ID_OPTIONS_SWSCALER 32791 +#define ID_OPTIONS_DRAW 32792 +#define ID_OPTIONS_AUDIO 32793 +#define ID_OPTIONS_DUMPYUVFILE 32794 +#define ID_Menu 32795 +#define ID_VIEW_HALFSIZE 32796 +#define ID_VIEW_NORMALSIZE 32797 +#define ID_VIEW_DOUBLESIZE 32798 +#define ID_VIEW_FITTOSCREEN 32799 +#define ID_VIEW_FULLSCREEN 32800 +#define ID_PLAY_HALFSPEED 32801 +#define ID_PLAY_NORMALSPEED 32802 +#define ID_PLAY_DOUBLESPEED 32803 +#define ID_FILE_LAST 32804 +#define ID_Menu32806 32806 +#define ID_VIEW_ROTATE0 32807 +#define ID_VIEW_ROTATE90 32808 +#define ID_VIEW_ROTATE180 32809 +#define ID_VIEW_ROTATE270 32810 +#define ID_VIEW_MIRROR_HORIZONTAL 32811 +#define ID_VIEW_MIRROR_VERTICAL 32812 + +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS +#define _APS_NEXT_RESOURCE_VALUE 203 +#define _APS_NEXT_COMMAND_VALUE 32813 +#define _APS_NEXT_CONTROL_VALUE 1013 +#define _APS_NEXT_SYMED_VALUE 101 +#endif +#endif + diff --git a/media/player/view.h b/media/player/view.h index 4c72512..f515c16 100644 --- a/media/player/view.h +++ b/media/player/view.h @@ -54,6 +54,7 @@ class WtlVideoWindow : public CScrollWindowImpl<WtlVideoWindow> { size_.cx = 0; size_.cy = 0; view_size_ = 1; + view_rotate_ = media::ROTATE_0; renderer_ = new WtlVideoRenderer(this); last_frame_ = NULL; hbmp_ = NULL; @@ -295,6 +296,56 @@ class WtlVideoWindow : public CScrollWindowImpl<WtlVideoWindow> { return view_size_; } + void SetViewRotate(int view_rotate) { + switch (view_rotate) { + default: + case 0: + view_rotate_ = media::ROTATE_0; + break; + case 1: + view_rotate_ = media::ROTATE_90; + break; + case 2: + view_rotate_ = media::ROTATE_180; + break; + case 3: + view_rotate_ = media::ROTATE_270; + break; + case 4: + view_rotate_ = media::MIRROR_ROTATE_0; + break; + case 5: + view_rotate_ = media::MIRROR_ROTATE_180; + break; + } + } + + int GetViewRotate() { + int view_rotate = 0; + switch (view_rotate_) { + default: + case media::ROTATE_0: + view_rotate = 0; + break; + case media::ROTATE_90: + view_rotate = 1; + break; + case media::ROTATE_180: + view_rotate = 2; + break; + case media::ROTATE_270: + view_rotate = 3; + break; + case media::MIRROR_ROTATE_0: + view_rotate = 4; + break; + case media::MIRROR_ROTATE_180: + view_rotate = 5; + break; + } + return view_rotate; + } + void SetBitmap(HBITMAP hbmp) { hbmp_ = hbmp; } @@ -307,6 +358,9 @@ class WtlVideoWindow : public CScrollWindowImpl<WtlVideoWindow> { HBITMAP hbmp_; // For Images int view_size_; // View Size. 0=0.5, 1=normal, 2=2x, 3=fit, 4=full + // View Rotate 0-5 for ID_VIEW_ROTATE0 to ID_VIEW_MIRROR_VERTICAL + media::Rotate view_rotate_; + // Draw a frame of YUV to an RGB buffer with scaling. // Handles different YUV formats. void DrawYUV(const media::VideoSurface &frame_in, @@ -316,53 +370,30 @@ class WtlVideoWindow : public CScrollWindowImpl<WtlVideoWindow> { int clipped_height, int scaled_width, int scaled_height) { - // Normal size - if (view_size_ == 1) { - if (frame_in.format == media::VideoSurface::YV16) { - // Temporary cast, til we use uint8 for VideoFrame. - media::ConvertYV16ToRGB32((const uint8*)frame_in.data[0], - (const uint8*)frame_in.data[1], - (const uint8*)frame_in.data[2], - movie_dib_bits, - clipped_width, clipped_height, - frame_in.strides[0], - frame_in.strides[1], - dibrowbytes); - } else { - // Temporary cast, til we use uint8 for VideoFrame. - media::ConvertYV12ToRGB32((const uint8*)frame_in.data[0], - (const uint8*)frame_in.data[1], - (const uint8*)frame_in.data[2], - movie_dib_bits, - clipped_width, clipped_height, - frame_in.strides[0], - frame_in.strides[1], - dibrowbytes); - } + if (frame_in.format == media::VideoSurface::YV16) { + // Temporary cast, til we use uint8 for VideoFrame. + media::ScaleYV16ToRGB32(frame_in.data[0], + frame_in.data[1], + frame_in.data[2], + movie_dib_bits, + clipped_width, clipped_height, + scaled_width, scaled_height, + frame_in.strides[0], + frame_in.strides[1], + dibrowbytes, + view_rotate_); } else { - if (frame_in.format == media::VideoSurface::YV16) { - // Temporary cast, til we use uint8 for VideoFrame. - media::ScaleYV16ToRGB32((const uint8*)frame_in.data[0], - (const uint8*)frame_in.data[1], - (const uint8*)frame_in.data[2], - movie_dib_bits, - clipped_width, clipped_height, - scaled_width, scaled_height, - frame_in.strides[0], - frame_in.strides[1], - dibrowbytes); - } else { - // Temporary cast, til we use uint8 for VideoFrame. - media::ScaleYV12ToRGB32((const uint8*)frame_in.data[0], - (const uint8*)frame_in.data[1], - (const uint8*)frame_in.data[2], - movie_dib_bits, - clipped_width, clipped_height, - scaled_width, scaled_height, - frame_in.strides[0], - frame_in.strides[1], - dibrowbytes); - } + // Temporary cast, til we use uint8 for VideoFrame. + media::ScaleYV12ToRGB32(frame_in.data[0], + frame_in.data[1], + frame_in.data[2], + movie_dib_bits, + clipped_width, clipped_height, + scaled_width, scaled_height, + frame_in.strides[0], + frame_in.strides[1], + dibrowbytes, + view_rotate_); } } |