Author: winesync
Date: Wed Apr 25 12:21:59 2007
New Revision: 26499
URL:
http://svn.reactos.org/svn/reactos?rev=26499&view=rev
Log:
Autosyncing with Wine HEAD
Added:
trunk/reactos/dll/win32/msvfw32/msvfw32_De.rc (with props)
trunk/reactos/dll/win32/msvfw32/msvfw32_En.rc (with props)
trunk/reactos/dll/win32/msvfw32/msvfw32_Fr.rc (with props)
trunk/reactos/dll/win32/msvfw32/msvfw32_Hu.rc (with props)
trunk/reactos/dll/win32/msvfw32/msvfw32_Ko.rc (with props)
trunk/reactos/dll/win32/msvfw32/msvfw32_No.rc (with props)
trunk/reactos/dll/win32/msvfw32/msvfw32_Pl.rc (with props)
trunk/reactos/dll/win32/msvfw32/msvfw32_Tr.rc (with props)
trunk/reactos/dll/win32/msvfw32/msvfw32_ros.diff (with props)
trunk/reactos/dll/win32/msvfw32/rsrc.rc (with props)
Removed:
trunk/reactos/dll/win32/msvfw32/Makefile.in
trunk/reactos/dll/win32/msvfw32/msvfw32.rc
Modified:
trunk/reactos/dll/win32/msvfw32/drawdib.c
trunk/reactos/dll/win32/msvfw32/mciwnd.c
trunk/reactos/dll/win32/msvfw32/msvfw32.rbuild
trunk/reactos/dll/win32/msvfw32/msvfw32.spec
trunk/reactos/dll/win32/msvfw32/msvideo.spec
trunk/reactos/dll/win32/msvfw32/msvideo16.c
trunk/reactos/dll/win32/msvfw32/msvideo_main.c
trunk/reactos/dll/win32/msvfw32/msvideo_private.h
trunk/reactos/dll/win32/msvfw32/vfw16.h
Removed: trunk/reactos/dll/win32/msvfw32/Makefile.in
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/Makefile…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/Makefile.in (original)
+++ trunk/reactos/dll/win32/msvfw32/Makefile.in (removed)
@@ -1,22 +1,0 @@
-TOPSRCDIR = @top_srcdir@
-TOPOBJDIR = ../..
-SRCDIR = @srcdir@
-VPATH = @srcdir@
-MODULE = msvfw32.dll
-IMPORTS = winmm comctl32 version user32 gdi32 advapi32 kernel32 ntdll
-ALTNAMES = msvideo.dll
-EXTRALIBS = $(LIBUNICODE)
-
-SPEC_SRCS16 = $(ALTNAMES:.dll=.spec)
-
-C_SRCS = \
- mciwnd.c \
- msvideo_main.c \
- drawdib.c
-
-C_SRCS16 = \
- msvideo16.c
-
-@MAKE_DLL_RULES@
-
-### Dependencies:
Modified: trunk/reactos/dll/win32/msvfw32/drawdib.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/drawdib.…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/drawdib.c (original)
+++ trunk/reactos/dll/win32/msvfw32/drawdib.c Wed Apr 25 12:21:59 2007
@@ -13,18 +13,22 @@
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*
* FIXME: Some flags are ignored
*
* Handle palettes
*/
+#include <stdarg.h>
+#include <stdio.h>
#include <string.h>
-#include "msvideo_private.h"
-
+
+#include "windef.h"
+#include "winbase.h"
#include "wingdi.h"
#include "winuser.h"
+#include "vfw.h"
#include "wine/debug.h"
@@ -49,7 +53,7 @@
struct tagWINE_HDD* next;
} WINE_HDD;
-int num_colours(LPBITMAPINFOHEADER lpbi)
+static int num_colours(const BITMAPINFOHEADER *lpbi)
{
if(lpbi->biClrUsed)
return lpbi->biClrUsed;
@@ -131,16 +135,10 @@
whdd->hpal = 0; /* Do not free this */
whdd->hdc = 0;
- if (whdd->lpbi)
- {
- HeapFree(GetProcessHeap(), 0, whdd->lpbi);
- whdd->lpbi = NULL;
- }
- if (whdd->lpbiOut)
- {
- HeapFree(GetProcessHeap(), 0, whdd->lpbiOut);
- whdd->lpbiOut = NULL;
- }
+ HeapFree(GetProcessHeap(), 0, whdd->lpbi);
+ whdd->lpbi = NULL;
+ HeapFree(GetProcessHeap(), 0, whdd->lpbiOut);
+ whdd->lpbiOut = NULL;
whdd->begun = FALSE;
@@ -184,10 +182,10 @@
BOOL ret = TRUE;
WINE_HDD *whdd;
- TRACE("(%p,%p,%d,%d,%p,%d,%d,0x%08lx)\n",
+ TRACE("(%p,%p,%d,%d,%p,%d,%d,0x%08x)\n",
hdd, hdc, dxDst, dyDst, lpbi, dxSrc, dySrc, (DWORD)wFlags);
- TRACE("lpbi: %ld,%ld/%ld,%d,%d,%ld,%ld,%ld,%ld,%ld,%ld\n",
+ TRACE("lpbi: %d,%d/%d,%d,%d,%d,%d,%d,%d,%d,%d\n",
lpbi->biSize, lpbi->biWidth, lpbi->biHeight, lpbi->biPlanes,
lpbi->biBitCount, lpbi->biCompression, lpbi->biSizeImage,
lpbi->biXPelsPerMeter, lpbi->biYPelsPerMeter, lpbi->biClrUsed,
@@ -208,7 +206,7 @@
whdd->hic = ICOpen(ICTYPE_VIDEO, lpbi->biCompression, ICMODE_DECOMPRESS);
if (!whdd->hic)
{
- WARN("Could not open IC. biCompression == 0x%08lx\n",
lpbi->biCompression);
+ WARN("Could not open IC. biCompression == 0x%08x\n",
lpbi->biCompression);
ret = FALSE;
}
@@ -236,8 +234,8 @@
if (ICDecompressBegin(whdd->hic, lpbi, whdd->lpbiOut) != ICERR_OK)
ret = FALSE;
- TRACE("biSizeImage == %ld\n", whdd->lpbiOut->biSizeImage);
- TRACE("biCompression == %ld\n",
whdd->lpbiOut->biCompression);
+ TRACE("biSizeImage == %d\n", whdd->lpbiOut->biSizeImage);
+ TRACE("biCompression == %d\n",
whdd->lpbiOut->biCompression);
TRACE("biBitCount == %d\n", whdd->lpbiOut->biBitCount);
}
}
@@ -256,13 +254,17 @@
/*whdd->lpvbuf = HeapAlloc(GetProcessHeap(), 0,
whdd->lpbiOut->biSizeImage);*/
whdd->hMemDC = CreateCompatibleDC(hdc);
- TRACE("Creating: %ld, %p\n", whdd->lpbiOut->biSize,
whdd->lpvbits);
+ TRACE("Creating: %d, %p\n", whdd->lpbiOut->biSize,
whdd->lpvbits);
whdd->hDib = CreateDIBSection(whdd->hMemDC, (BITMAPINFO *)whdd->lpbiOut,
DIB_RGB_COLORS, &(whdd->lpvbits), 0, 0);
- if (!whdd->hDib)
- {
- TRACE("Error: %ld\n", GetLastError());
- }
- TRACE("Created: %p,%p\n", whdd->hDib, whdd->lpvbits);
+ if (whdd->hDib)
+ {
+ TRACE("Created: %p,%p\n", whdd->hDib, whdd->lpvbits);
+ }
+ else
+ {
+ ret = FALSE;
+ TRACE("Error: %d\n", GetLastError());
+ }
whdd->hOldDib = SelectObject(whdd->hMemDC, whdd->hDib);
}
@@ -282,11 +284,8 @@
{
if (whdd->hic)
ICClose(whdd->hic);
- if (whdd->lpbiOut)
- {
- HeapFree(GetProcessHeap(), 0, whdd->lpbiOut);
- whdd->lpbiOut = NULL;
- }
+ HeapFree(GetProcessHeap(), 0, whdd->lpbiOut);
+ whdd->lpbiOut = NULL;
}
return ret;
@@ -305,14 +304,16 @@
WINE_HDD *whdd;
BOOL ret = TRUE;
- TRACE("(%p,%p,%d,%d,%d,%d,%p,%p,%d,%d,%d,%d,0x%08lx)\n",
+ TRACE("(%p,%p,%d,%d,%d,%d,%p,%p,%d,%d,%d,%d,0x%08x)\n",
hdd, hdc, xDst, yDst, dxDst, dyDst, lpbi, lpBits, xSrc, ySrc, dxSrc, dySrc,
(DWORD)wFlags);
whdd = MSVIDEO_GetHddPtr(hdd);
if (!whdd) return FALSE;
- if (wFlags & ~(DDF_SAME_HDC | DDF_SAME_DRAW | DDF_NOTKEYFRAME | DDF_UPDATE |
DDF_DONTDRAW))
- FIXME("wFlags == 0x%08lx not handled\n", (DWORD)wFlags);
+ TRACE("whdd=%p\n", whdd);
+
+ if (wFlags & ~(DDF_SAME_HDC | DDF_SAME_DRAW | DDF_NOTKEYFRAME | DDF_UPDATE |
DDF_DONTDRAW | DDF_BACKGROUNDPAL))
+ FIXME("wFlags == 0x%08x not handled\n", (DWORD)wFlags);
if (!lpBits)
{
@@ -341,15 +342,17 @@
if (!(wFlags & DDF_UPDATE))
{
+ DWORD biSizeImage = lpbi->biSizeImage;
+
/* biSizeImage may be set to 0 for BI_RGB (uncompressed) bitmaps */
- if ((lpbi->biCompression == BI_RGB) && (lpbi->biSizeImage == 0))
- lpbi->biSizeImage = ((lpbi->biWidth * lpbi->biBitCount + 31) / 32) *
4 * lpbi->biHeight;
+ if ((lpbi->biCompression == BI_RGB) && (biSizeImage == 0))
+ biSizeImage = ((lpbi->biWidth * lpbi->biBitCount + 31) / 32) * 4 *
lpbi->biHeight;
if (lpbi->biCompression)
{
DWORD flags = 0;
- TRACE("Compression == 0x%08lx\n", lpbi->biCompression);
+ TRACE("Compression == 0x%08x\n", lpbi->biCompression);
if (wFlags & DDF_NOTKEYFRAME)
flags |= ICDECOMPRESS_NOTKEYFRAME;
@@ -358,11 +361,16 @@
}
else
{
- memcpy(whdd->lpvbits, lpBits, lpbi->biSizeImage);
+ memcpy(whdd->lpvbits, lpBits, biSizeImage);
}
}
if (!(wFlags & DDF_DONTDRAW) && whdd->hpal)
- SelectPalette(hdc, whdd->hpal, FALSE);
+ {
+ if ((wFlags & DDF_BACKGROUNDPAL) && ! (wFlags & DDF_SAME_HDC))
+ SelectPalette(hdc, whdd->hpal, TRUE);
+ else
+ SelectPalette(hdc, whdd->hpal, FALSE);
+ }
if (!(StretchBlt(whdd->hdc, xDst, yDst, dxDst, dyDst, whdd->hMemDC, xSrc, ySrc,
dxSrc, dySrc, SRCCOPY)))
ret = FALSE;
@@ -374,7 +382,7 @@
* DrawDibStart [MSVFW32.@]
*/
BOOL VFWAPI DrawDibStart(HDRAWDIB hdd, DWORD rate) {
- FIXME("(%p, %ld), stub\n", hdd, rate);
+ FIXME("(%p, %d), stub\n", hdd, rate);
return TRUE;
}
@@ -387,6 +395,15 @@
}
/***********************************************************************
+ * DrawDibChangePalette [MSVFW32.@]
+ */
+BOOL VFWAPI DrawDibChangePalette(HDRAWDIB hdd, int iStart, int iLen, LPPALETTEENTRY
lppe)
+{
+ FIXME("(%p, 0x%08x, 0x%08x, %p), stub\n", hdd, iStart, iLen, lppe);
+ return TRUE;
+}
+
+/***********************************************************************
* DrawDibSetPalette [MSVFW32.@]
*/
BOOL VFWAPI DrawDibSetPalette(HDRAWDIB hdd, HPALETTE hpal)
@@ -407,6 +424,15 @@
}
return TRUE;
+}
+
+/***********************************************************************
+ * DrawDibGetBuffer [MSVFW32.@]
+ */
+LPVOID VFWAPI DrawDibGetBuffer(HDRAWDIB hdd, LPBITMAPINFOHEADER lpbi, DWORD dwSize, DWORD
dwFlags)
+{
+ FIXME("(%p, %p, 0x%08x, 0x%08x), stub\n", hdd, lpbi, dwSize, dwFlags);
+ return NULL;
}
/***********************************************************************
@@ -455,6 +481,18 @@
return ret;
}
+/***********************************************************************
+ * DrawDibTime [MSVFW32.@]
+ */
+BOOL VFWAPI DrawDibTime(HDRAWDIB hdd, LPDRAWDIBTIME lpddtime)
+{
+ FIXME("(%p, %p) stub\n", hdd, lpddtime);
+ return FALSE;
+}
+
+/***********************************************************************
+ * DrawDibProfileDisplay [MSVFW32.@]
+ */
DWORD VFWAPI DrawDibProfileDisplay(LPBITMAPINFOHEADER lpbi)
{
FIXME("(%p) stub\n", lpbi);
Modified: trunk/reactos/dll/win32/msvfw32/mciwnd.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/mciwnd.c…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/mciwnd.c (original)
+++ trunk/reactos/dll/win32/msvfw32/mciwnd.c Wed Apr 25 12:21:59 2007
@@ -14,7 +14,7 @@
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*
* FIXME:
* Add support for all remaining MCI_ commands and MCIWNDM_ messages.
@@ -104,7 +104,7 @@
HWND VFWAPIV MCIWndCreateW(HWND hwndParent, HINSTANCE hInstance,
DWORD dwStyle, LPCWSTR szFile)
{
- TRACE("%p %p %lx %s\n", hwndParent, hInstance, dwStyle,
debugstr_w(szFile));
+ TRACE("%p %p %x %s\n", hwndParent, hInstance, dwStyle,
debugstr_w(szFile));
MCIWndRegisterClass();
@@ -244,7 +244,7 @@
strcatW(buffer, r_braceW);
}
- TRACE("=> '%s'\n", debugstr_w(buffer));
+ TRACE("=> %s\n", debugstr_w(buffer));
SetWindowTextW(mwi->hWnd, buffer);
}
@@ -429,6 +429,21 @@
return mci_devcaps.dwReturn;
}
+static LRESULT MCIWND_KeyDown(MCIWndInfo *mwi, UINT key)
+{
+ TRACE("%p, key %04x\n", mwi->hWnd, key);
+
+ switch(key)
+ {
+ case VK_ESCAPE:
+ SendMessageW(mwi->hWnd, MCI_STOP, 0, 0);
+ return 0;
+
+ default:
+ return 0;
+ }
+}
+
static LRESULT WINAPI MCIWndProc(HWND hWnd, UINT wMsg, WPARAM wParam, LPARAM lParam)
{
MCIWndInfo *mwi;
@@ -476,6 +491,9 @@
case WM_COMMAND:
return MCIWND_Command(mwi, wParam, lParam);
+
+ case WM_KEYDOWN:
+ return MCIWND_KeyDown(mwi, wParam);
case WM_NCACTIVATE:
if (mwi->uTimer)
@@ -735,7 +753,7 @@
MCIWND_notify_error(mwi);
return 0;
}
- TRACE("MCIWNDM_GETLENGTH: %ld\n", mci_status.dwReturn);
+ TRACE("MCIWNDM_GETLENGTH: %d\n", mci_status.dwReturn);
return mci_status.dwReturn;
}
@@ -752,7 +770,7 @@
MCIWND_notify_error(mwi);
return 0;
}
- TRACE("MCIWNDM_GETSTART: %ld\n", mci_status.dwReturn);
+ TRACE("MCIWNDM_GETSTART: %d\n", mci_status.dwReturn);
return mci_status.dwReturn;
}
@@ -1010,7 +1028,7 @@
return mwi->lasterror;
case MCIWNDM_RETURNSTRINGW:
- strncpyW((LPWSTR)lParam, mwi->return_string, wParam);
+ lstrcpynW((LPWSTR)lParam, mwi->return_string, wParam);
TRACE("MCIWNDM_RETURNTRINGW %s\n", debugstr_wn((LPWSTR)lParam,
wParam));
return mwi->lasterror;
@@ -1048,7 +1066,7 @@
return 0;
case MCIWNDM_GETSTYLES:
- TRACE("MCIWNDM_GETSTYLES: %08lx\n", mwi->dwStyle & 0xffff);
+ TRACE("MCIWNDM_GETSTYLES: %08x\n", mwi->dwStyle & 0xffff);
return mwi->dwStyle & 0xffff;
case MCIWNDM_GETDEVICEA:
@@ -1095,7 +1113,7 @@
case MCIWNDM_GETFILENAMEW:
TRACE("MCIWNDM_GETFILENAMEW: %s\n", debugstr_w(mwi->lpName));
if (mwi->lpName)
- strncpyW((LPWSTR)lParam, mwi->lpName, wParam);
+ lstrcpynW((LPWSTR)lParam, mwi->lpName, wParam);
return 0;
case MCIWNDM_GETTIMEFORMATA:
@@ -1328,11 +1346,8 @@
mwi->mode = MCI_MODE_NOT_READY;
mwi->position = -1;
- if (mwi->lpName)
- {
- HeapFree(GetProcessHeap(), 0, mwi->lpName);
- mwi->lpName = NULL;
- }
+ HeapFree(GetProcessHeap(), 0, mwi->lpName);
+ mwi->lpName = NULL;
MCIWND_UpdateState(mwi);
GetClientRect(hWnd, &rc);
Modified: trunk/reactos/dll/win32/msvfw32/msvfw32.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32.…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32.rbuild (original)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32.rbuild Wed Apr 25 12:21:59 2007
@@ -1,22 +1,25 @@
<module name="msvfw32" type="win32dll"
baseaddress="${BASEADDRESS_MSVFW32}" installbase="system32"
installname="msvfw32.dll" allowwarnings="true">
<importlibrary definition="msvfw32.spec.def" />
+ <include base="msvfw32">.</include>
<include base="ReactOS">include/reactos/wine</include>
<define name="__REACTOS__" />
+ <define name="__WINESRC__" />
<define name="__USE_W32API" />
<define name="_WIN32_IE">0x600</define>
<define name="_WIN32_WINNT">0x501</define>
<define name="WINVER">0x501</define>
<library>wine</library>
<library>winmm</library>
+ <library>comctl32</library>
+ <library>version</library>
+ <library>user32</library>
<library>gdi32</library>
- <library>comctl32</library>
+ <library>advapi32</library>
<library>kernel32</library>
- <library>advapi32</library>
- <library>user32</library>
<library>ntdll</library>
+ <file>mciwnd.c</file>
+ <file>msvideo_main.c</file>
<file>drawdib.c</file>
- <file>mciwnd.c</file>
- <file>msvfw32.rc</file>
- <file>msvideo_main.c</file>
+ <file>rsrc.rc</file>
<file>msvfw32.spec</file>
</module>
Removed: trunk/reactos/dll/win32/msvfw32/msvfw32.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32.…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32.rc (original)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32.rc (removed)
@@ -1,5 +1,0 @@
-#define REACTOS_VERSION_DLL
-#define REACTOS_STR_FILE_DESCRIPTION "MSvideo support\0"
-#define REACTOS_STR_INTERNAL_NAME "msvfw32\0"
-#define REACTOS_STR_ORIGINAL_FILENAME "msvfw32.dll\0"
-#include <reactos/version.rc>
Modified: trunk/reactos/dll/win32/msvfw32/msvfw32.spec
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32.…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32.spec (original)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32.spec Wed Apr 25 12:21:59 2007
@@ -4,11 +4,11 @@
2 stdcall VideoForWindowsVersion()
@ stdcall DrawDibBegin(long long long long ptr long long long)
-@ stub DrawDibChangePalette
+@ stdcall DrawDibChangePalette(long long long ptr)
@ stdcall DrawDibClose(long)
@ stdcall DrawDibDraw(long long long long long long ptr ptr long long long long long)
@ stdcall DrawDibEnd(long)
-@ stub DrawDibGetBuffer
+@ stdcall DrawDibGetBuffer(long ptr long long)
@ stdcall DrawDibGetPalette(long)
@ stdcall DrawDibOpen()
@ stdcall DrawDibProfileDisplay(ptr)
@@ -16,8 +16,8 @@
@ stdcall DrawDibSetPalette(long long)
@ stdcall DrawDibStart(long long)
@ stdcall DrawDibStop(long)
-@ stub DrawDibTime
-@ stub GetOpenFileNamePreview
+@ stdcall DrawDibTime(long ptr)
+@ stdcall GetOpenFileNamePreview(ptr) GetOpenFileNamePreviewA
@ stdcall GetOpenFileNamePreviewA(ptr)
@ stdcall GetOpenFileNamePreviewW(ptr)
@ stdcall GetSaveFileNamePreviewA(ptr)
@@ -40,10 +40,10 @@
@ stdcall ICOpen(long long long)
@ stdcall ICOpenFunction(long long long ptr)
@ stdcall ICRemove(long long long)
-@ stdcall ICSendMessage(long long long long)
-@ stub ICSeqCompressFrame
-@ stub ICSeqCompressFrameEnd
-@ stub ICSeqCompressFrameStart
+@ stdcall ICSendMessage(long long ptr ptr)
+@ stdcall ICSeqCompressFrame(ptr long ptr ptr ptr)
+@ stdcall ICSeqCompressFrameEnd(ptr)
+@ stdcall ICSeqCompressFrameStart(ptr ptr)
@ cdecl MCIWndCreate (long long long str) MCIWndCreateA
@ cdecl MCIWndCreateA (long long long str)
@ cdecl MCIWndCreateW (long long long wstr)
Added: trunk/reactos/dll/win32/msvfw32/msvfw32_De.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32_De.rc (added)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32_De.rc Wed Apr 25 12:21:59 2007
@@ -1,0 +1,52 @@
+/*
+ * Copyright 2005 Dmitry Timoshkov
+ * Copyright 2005 Henning Gerhardt
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
+
+ICM_CHOOSE_COMPRESSOR DIALOG DISCARDABLE 36, 24, 187, 95
+STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
+CAPTION "Video Compression"
+FONT 8, "MS Shell Dlg"
+{
+ DEFPUSHBUTTON "OK",IDOK,129,2,49,14
+ PUSHBUTTON "Abbrechen",IDCANCEL,129,18,49,14
+
+ LTEXT "&Komprimierer:",-1,9,6,105,8
+ COMBOBOX 880,9,16,111,67,CBS_DROPDOWNLIST|WS_VSCROLL|WS_TABSTOP
+
+ PUSHBUTTON "Kon&figurieren...",882,129,36,49,14
+ PUSHBUTTON "&Über...",883,129,52,49,14
+
+ SCROLLBAR 884,9,44,111,9,WS_TABSTOP
+
+ LTEXT "Komprimierungsqualität:",886,9,34,80,8
+
+ CONTROL "&Key Frame
aller",887,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,60,66,12
+ EDITTEXT 888,78,60,22,12
+ LTEXT "frames",889,103,62,26,10
+
+ CONTROL
"&Datenrate",894,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,76,66,12
+ EDITTEXT 895,78,76,22,12
+ LTEXT "KB/sec",896,102,78,26,10
+}
+
+STRINGTABLE DISCARDABLE
+{
+ IDS_FULLFRAMES "Vollständige Frames (Unkomprimiert)"
+}
Propchange: trunk/reactos/dll/win32/msvfw32/msvfw32_De.rc
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/win32/msvfw32/msvfw32_En.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32_En.rc (added)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32_En.rc Wed Apr 25 12:21:59 2007
@@ -1,0 +1,51 @@
+/*
+ * Copyright 2005 Dmitry Timoshkov
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+LANGUAGE LANG_ENGLISH, SUBLANG_DEFAULT
+
+ICM_CHOOSE_COMPRESSOR DIALOG DISCARDABLE 36, 24, 187, 95
+STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
+CAPTION "Video Compression"
+FONT 8, "MS Shell Dlg"
+{
+ DEFPUSHBUTTON "OK",IDOK,129,2,49,14
+ PUSHBUTTON "Cancel",IDCANCEL,129,18,49,14
+
+ LTEXT "&Compressor:",-1,9,6,105,8
+ COMBOBOX 880,9,16,111,67,CBS_DROPDOWNLIST|WS_VSCROLL|WS_TABSTOP
+
+ PUSHBUTTON "Con&figure...",882,129,36,49,14
+ PUSHBUTTON "&About...",883,129,52,49,14
+
+ SCROLLBAR 884,9,44,111,9,WS_TABSTOP
+
+ LTEXT "Compression &Quality:",886,9,34,80,8
+
+ CONTROL "&Key Frame
Every",887,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,60,66,12
+ EDITTEXT 888,78,60,22,12
+ LTEXT "frames",889,103,62,26,10
+
+ CONTROL "&Data
Rate",894,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,76,66,12
+ EDITTEXT 895,78,76,22,12
+ LTEXT "KB/sec",896,102,78,26,10
+}
+
+STRINGTABLE DISCARDABLE
+{
+ IDS_FULLFRAMES "Full Frames (Uncompressed)"
+}
Propchange: trunk/reactos/dll/win32/msvfw32/msvfw32_En.rc
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/win32/msvfw32/msvfw32_Fr.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32_Fr.rc (added)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32_Fr.rc Wed Apr 25 12:21:59 2007
@@ -1,0 +1,51 @@
+/*
+ * Copyright 2006 Jonathan Ernst
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
+
+ICM_CHOOSE_COMPRESSOR DIALOG DISCARDABLE 36, 24, 187, 95
+STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
+CAPTION "Compression vidéo"
+FONT 8, "MS Shell Dlg"
+{
+ DEFPUSHBUTTON "OK",IDOK,129,2,49,14
+ PUSHBUTTON "Annuler",IDCANCEL,129,18,49,14
+
+ LTEXT "&Compresseur :",-1,9,6,105,8
+ COMBOBOX 880,9,16,111,67,CBS_DROPDOWNLIST|WS_VSCROLL|WS_TABSTOP
+
+ PUSHBUTTON "Con&figurer...",882,129,36,49,14
+ PUSHBUTTON "À &propos",883,129,52,49,14
+
+ SCROLLBAR 884,9,44,111,9,WS_TABSTOP
+
+ LTEXT "&Qualité de compression :",886,9,34,80,8
+
+ CONTROL "Image &clé toutes
les",887,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,60,66,12
+ EDITTEXT 888,78,60,22,12
+ LTEXT "images",889,103,62,26,10
+
+ CONTROL "&Débit de
données",894,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,76,66,12
+ EDITTEXT 895,78,76,22,12
+ LTEXT "Kio/sec",896,102,78,26,10
+}
+
+STRINGTABLE DISCARDABLE
+{
+ IDS_FULLFRAMES "Images complètes (non compressées)"
+}
Propchange: trunk/reactos/dll/win32/msvfw32/msvfw32_Fr.rc
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/win32/msvfw32/msvfw32_Hu.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32_Hu.rc (added)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32_Hu.rc Wed Apr 25 12:21:59 2007
@@ -1,0 +1,51 @@
+/*
+ * Copyright 2006 Andras Kovacs
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
+
+ICM_CHOOSE_COMPRESSOR DIALOG DISCARDABLE 36, 24, 187, 95
+STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
+CAPTION "Video tömörítés"
+FONT 8, "MS Shell Dlg"
+{
+ DEFPUSHBUTTON "OK",IDOK,129,2,49,14
+ PUSHBUTTON "Mégse",IDCANCEL,129,18,49,14
+
+ LTEXT "&Tömörítõ:",-1,9,6,105,8
+ COMBOBOX 880,9,16,111,67,CBS_DROPDOWNLIST|WS_VSCROLL|WS_TABSTOP
+
+ PUSHBUTTON "Beállí&tás...",882,129,36,49,14
+ PUSHBUTTON "&About...",883,129,52,49,14
+
+ SCROLLBAR 884,9,44,111,9,WS_TABSTOP
+
+ LTEXT "Tömörítési minõsé&g:",886,9,34,80,8
+
+ CONTROL "&Kulcs képkocka
minden",887,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,60,66,12
+ EDITTEXT 888,78,60,22,12
+ LTEXT "képkockánként",889,103,62,26,10
+
+ CONTROL "A&dat
arány",894,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,76,66,12
+ EDITTEXT 895,78,76,22,12
+ LTEXT "KB/sec",896,102,78,26,10
+}
+
+STRINGTABLE DISCARDABLE
+{
+ IDS_FULLFRAMES "Teljes képkockák (tömörítetlen)"
+}
Propchange: trunk/reactos/dll/win32/msvfw32/msvfw32_Hu.rc
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/win32/msvfw32/msvfw32_Ko.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32_Ko.rc (added)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32_Ko.rc Wed Apr 25 12:21:59 2007
@@ -1,0 +1,52 @@
+/*
+ * Copyright 2005 Dmitry Timoshkov
+ * Copyright 2005,2006 YunSong Hwang
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+LANGUAGE LANG_KOREAN, SUBLANG_NEUTRAL
+
+ICM_CHOOSE_COMPRESSOR DIALOG DISCARDABLE 36, 24, 187, 95
+STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
+CAPTION "ºñµð¿À ¾ÐÃà"
+FONT 8, "MS Shell Dlg"
+{
+ DEFPUSHBUTTON "È®ÀÎ",IDOK,129,2,49,14
+ PUSHBUTTON "Ãë¼Ò",IDCANCEL,129,18,49,14
+
+ LTEXT "¾ÐÃà(&C):",-1,9,6,105,8
+ COMBOBOX 880,9,16,111,67,CBS_DROPDOWNLIST|WS_VSCROLL|WS_TABSTOP
+
+ PUSHBUTTON "¼³Á¤(&F)...",882,129,36,49,14
+ PUSHBUTTON "Á¤º¸(&A)...",883,129,52,49,14
+
+ SCROLLBAR 884,9,44,111,9,WS_TABSTOP
+
+ LTEXT "¾ÐÃà Ç°Áú(&Q):",886,9,34,80,8
+
+ CONTROL "¸ðµç Å°
ÇÁ·¹ÀÓ(&K)",887,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,60,66,12
+ EDITTEXT 888,78,60,22,12
+ LTEXT "ÇÁ·¹ÀÓ",889,103,62,26,10
+
+ CONTROL "µ¥ÀÌŸ
Àü¼ÛÀ²(&D)",894,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,76,66,12
+ EDITTEXT 895,78,76,22,12
+ LTEXT "KB/sec",896,102,78,26,10
+}
+
+STRINGTABLE DISCARDABLE
+{
+ IDS_FULLFRAMES "Àüä ÇÁ·¹ÀÓ(ºñ¾ÐÃà)"
+}
Propchange: trunk/reactos/dll/win32/msvfw32/msvfw32_Ko.rc
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/win32/msvfw32/msvfw32_No.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32_No.rc (added)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32_No.rc Wed Apr 25 12:21:59 2007
@@ -1,0 +1,51 @@
+/*
+ * Copyright 2005 Alexander N. Sørnes <alex(a)thehandofagony.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+LANGUAGE LANG_NORWEGIAN, SUBLANG_NORWEGIAN_BOKMAL
+
+ICM_CHOOSE_COMPRESSOR DIALOG DISCARDABLE 36, 24, 187, 95
+STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
+CAPTION "Videokomprimering"
+FONT 8, "MS Shell Dlg"
+{
+ DEFPUSHBUTTON "OK",IDOK,129,2,49,14
+ PUSHBUTTON "Avbryt",IDCANCEL,129,18,49,14
+
+ LTEXT "&Komprimerer:",-1,9,6,105,8
+ COMBOBOX 880,9,16,111,67,CBS_DROPDOWNLIST|WS_VSCROLL|WS_TABSTOP
+
+ PUSHBUTTON "&Oppsett . . .",882,129,36,49,14
+ PUSHBUTTON "O&m . . .",883,129,52,49,14
+
+ SCROLLBAR 884,9,44,111,9,WS_TABSTOP
+
+ LTEXT "Komprimeringskvalite&t:",886,9,34,80,8
+
+ CONTROL "Nø&kkelbilde for
hvert",887,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,60,66,12
+ EDITTEXT 888,78,60,22,12
+ LTEXT "bilde",889,103,62,26,10
+
+ CONTROL
"&Datahastighet",894,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,76,66,12
+ EDITTEXT 895,78,76,22,12
+ LTEXT "KB/s",896,102,78,26,10
+}
+
+STRINGTABLE DISCARDABLE
+{
+ IDS_FULLFRAMES "Fulle bilder (ukomprimert)"
+}
Propchange: trunk/reactos/dll/win32/msvfw32/msvfw32_No.rc
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/win32/msvfw32/msvfw32_Pl.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32_Pl.rc (added)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32_Pl.rc Wed Apr 25 12:21:59 2007
@@ -1,0 +1,52 @@
+/*
+ * Copyright 2005 Dmitry Timoshkov
+ * Copyright 2006 Mikolaj Zalewski
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
+
+ICM_CHOOSE_COMPRESSOR DIALOG DISCARDABLE 36, 24, 207, 95
+STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
+CAPTION "Kompresja wideo"
+FONT 8, "MS Shell Dlg"
+{
+ DEFPUSHBUTTON "&OK",IDOK,146,2,52,14
+ PUSHBUTTON "&Anuluj",IDCANCEL,146,18,52,14
+
+ LTEXT "Typ &kompresji:",-1,9,6,128,8
+ COMBOBOX 880,9,16,128,67,CBS_DROPDOWNLIST|WS_VSCROLL|WS_TABSTOP
+
+ PUSHBUTTON "Kon&figuruj...",882,146,36,52,14
+ PUSHBUTTON "&Informacje...",883,146,52,52,14
+
+ SCROLLBAR 884,9,44,128,9,WS_TABSTOP
+
+ LTEXT "&Jakoæ kompresji:",886,9,34,97,8
+
+ CONTROL "&Ramka kluczowa
co",887,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,60,81,12
+ EDITTEXT 888,88,60,22,12
+ LTEXT "ramek",889,114,62,31,10
+
+ CONTROL
"&Strumieñ",894,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,76,81,12
+ EDITTEXT 895,88,76,22,12
+ LTEXT "KB/sec",896,114,78,31,10
+}
+
+STRINGTABLE DISCARDABLE
+{
+ IDS_FULLFRAMES "Pe³ne ramki (bez kompresji)"
+}
Propchange: trunk/reactos/dll/win32/msvfw32/msvfw32_Pl.rc
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/win32/msvfw32/msvfw32_Tr.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32_Tr.rc (added)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32_Tr.rc Wed Apr 25 12:21:59 2007
@@ -1,0 +1,53 @@
+/*
+ * Turkish Resources
+ *
+ * Copyright 2006 Fatih Aþýcý
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
+
+ICM_CHOOSE_COMPRESSOR DIALOG DISCARDABLE 36, 24, 187, 95
+STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
+CAPTION "Vidyo Sýkýþtýrma"
+FONT 8, "MS Shell Dlg"
+{
+ DEFPUSHBUTTON "Tamam",IDOK,129,2,49,14
+ PUSHBUTTON "Ýptal",IDCANCEL,129,18,49,14
+
+ LTEXT "&Sýkýþtýrýcý:",-1,9,6,105,8
+ COMBOBOX 880,9,16,111,67,CBS_DROPDOWNLIST|WS_VSCROLL|WS_TABSTOP
+
+ PUSHBUTTON "Ya&pýlandýr...",882,129,36,49,14
+ PUSHBUTTON "&Hakkýnda...",883,129,52,49,14
+
+ SCROLLBAR 884,9,44,111,9,WS_TABSTOP
+
+ LTEXT "Sýkýþtýrma &Kalitesi:",886,9,34,80,8
+
+ CONTROL "&Key Frame
Every",887,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,60,66,12
+ EDITTEXT 888,78,60,22,12
+ LTEXT "frames",889,103,62,26,10
+
+ CONTROL "&Veri
Oraný",894,"Button",BS_AUTOCHECKBOX|WS_TABSTOP,9,76,66,12
+ EDITTEXT 895,78,76,22,12
+ LTEXT "KB/sec",896,102,78,26,10
+}
+
+STRINGTABLE DISCARDABLE
+{
+ IDS_FULLFRAMES "Tüm Çerçeveler (Sýkýþtýrýlmamýþ)"
+}
Propchange: trunk/reactos/dll/win32/msvfw32/msvfw32_Tr.rc
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/win32/msvfw32/msvfw32_ros.diff
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvfw32_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvfw32_ros.diff (added)
+++ trunk/reactos/dll/win32/msvfw32/msvfw32_ros.diff Wed Apr 25 12:21:59 2007
@@ -1,0 +1,14 @@
+Index: msvideo_private.h
+===================================================================
+--- msvideo_private.h (revision 25690)
++++ msvideo_private.h (working copy)
+@@ -19,6 +19,9 @@
+ #ifndef __WINE_MSVIDEO_PRIVATE_H
+ #define __WINE_MSVIDEO_PRIVATE_H
+
++/* Installable Compressor Manager */
++#define ICVERSION 0x0104
++
+ #define ICM_CHOOSE_COMPRESSOR 1
+ #define IDC_COMP_LIST 880
+ #define IDS_FULLFRAMES 901
Propchange: trunk/reactos/dll/win32/msvfw32/msvfw32_ros.diff
------------------------------------------------------------------------------
svn:eol-style = native
Modified: trunk/reactos/dll/win32/msvfw32/msvideo.spec
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvideo.…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvideo.spec (original)
+++ trunk/reactos/dll/win32/msvfw32/msvideo.spec Wed Apr 25 12:21:59 2007
@@ -1,4 +1,6 @@
+#1 pascal WEP(word)
2 pascal VideoForWindowsVersion() VideoForWindowsVersion
+3 pascal DllEntryPoint(long word word word long word) VIDEO_LibMain
20 stub VIDEOGETNUMDEVS
21 stub VIDEOGETERRORTEXT
22 pascal VideoCapDriverDescAndVer(word ptr word ptr word) VideoCapDriverDescAndVer16
@@ -64,5 +66,3 @@
251 stub _MCIWNDREGISTERCLASS
252 stub GETOPENFILENAMEPREVIEW
253 stub GETSAVEFILENAMEPREVIEW
-
-300 pascal DllEntryPoint(long word word word long word) VIDEO_LibMain
Modified: trunk/reactos/dll/win32/msvfw32/msvideo16.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvideo1…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvideo16.c (original)
+++ trunk/reactos/dll/win32/msvfw32/msvideo16.c Wed Apr 25 12:21:59 2007
@@ -16,18 +16,21 @@
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#define COM_NO_WINDOWS_H
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include <stdarg.h>
#include <stdio.h>
#include <string.h>
-#include "msvideo_private.h"
+#include "windef.h"
+#include "winbase.h"
#include "winver.h"
#include "winnls.h"
#include "winreg.h"
+#include "winuser.h"
#include "vfw16.h"
+#include "msvideo_private.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(msvideo);
@@ -118,7 +121,7 @@
/*************************************************************************
* DrawDibStop [MSVIDEO.119]
*/
-BOOL16 DrawDibStop16(HDRAWDIB16 hdd)
+BOOL16 VFWAPI DrawDibStop16(HDRAWDIB16 hdd)
{
return DrawDibStop(HDRAWDIB_32(hdd));
}
@@ -151,7 +154,7 @@
lpData = HeapAlloc(GetProcessHeap(), 0, cb);
- TRACE("0x%08lx, %u, %u, ...)\n", (DWORD) hic, msg, cb);
+ TRACE("0x%08x, %u, %u, ...)\n", (DWORD) hic, msg, cb);
for (i = 0; i < cb / sizeof(WORD); i++)
{
@@ -172,7 +175,7 @@
{
LRESULT ret;
- TRACE("(0x%08lx,%p,%ld)\n", (DWORD) hic, picinfo, cb);
+ TRACE("(0x%08x,%p,%d)\n", (DWORD) hic, picinfo, cb);
ret = ICSendMessage16(hic, ICM_GETINFO, (DWORD) picinfo, cb);
TRACE(" -> 0x%08lx\n", ret);
return ret;
@@ -203,7 +206,7 @@
ICCOMPRESS iccmp;
SEGPTR seg_iccmp;
- TRACE("(0x%08lx,%ld,%p,%p,%p,%p,...)\n", (DWORD) hic, dwFlags,
+ TRACE("(0x%08x,%d,%p,%p,%p,%p,...)\n", (DWORD) hic, dwFlags,
lpbiOutput, lpData, lpbiInput, lpBits);
iccmp.dwFlags = dwFlags;
@@ -237,7 +240,7 @@
SEGPTR segptr;
DWORD ret;
- TRACE("(0x%08lx,%ld,%p,%p,%p,%p)\n", (DWORD) hic, dwFlags, lpbiFormat,
+ TRACE("(0x%08x,%d,%p,%p,%p,%p)\n", (DWORD) hic, dwFlags, lpbiFormat,
lpData, lpbi, lpBits);
icd.dwFlags = dwFlags;
@@ -276,7 +279,7 @@
ICDRAWBEGIN16 icdb;
SEGPTR seg_icdb;
- TRACE
("(0x%08lx,%ld,0x%08lx,0x%08lx,0x%08lx,%u,%u,%u,%u,%p,%u,%u,%u,%u,%ld,%ld)\n",
+ TRACE
("(0x%08x,%d,0x%08x,0x%08x,0x%08x,%u,%u,%u,%u,%p,%u,%u,%u,%u,%d,%d)\n",
(DWORD) hic, dwFlags, (DWORD) hpal, (DWORD) hwnd, (DWORD) hdc,
xDst, yDst, dxDst, dyDst, lpbi, xSrc, ySrc, dxSrc, dySrc, dwRate,
dwScale);
@@ -315,7 +318,7 @@
ICDRAW icd;
SEGPTR seg_icd;
- TRACE("(0x%08lx,0x%08lx,%p,%p,%ld,%ld)\n", (DWORD) hic, dwFlags,
+ TRACE("(0x%08x,0x%08x,%p,%p,%d,%d)\n", (DWORD) hic, dwFlags,
lpFormat, lpData, cbData, lTime);
icd.dwFlags = dwFlags;
icd.lpFormat = lpFormat;
@@ -670,12 +673,12 @@
static LRESULT CALLBACK IC_Callback3216(HIC hic, HDRVR hdrv, UINT msg, DWORD lp1, DWORD
lp2)
{
WINE_HIC* whic;
- LRESULT ret = 0;
WORD args[8];
whic = MSVIDEO_GetHicPtr(hic);
if (whic)
{
+ DWORD ret = 0;
switch (msg)
{
case DRV_OPEN:
@@ -698,9 +701,9 @@
UnMapLS(lp2);
break;
}
- }
- else ret = ICERR_BADHANDLE;
- return ret;
+ return ret;
+ }
+ else return ICERR_BADHANDLE;
}
/***********************************************************************
@@ -730,6 +733,7 @@
if (whic->driverproc16)
{
WORD args[8];
+ DWORD result;
/* FIXME: original code was passing hdrv first and hic second */
/* but this doesn't match what IC_Callback3216 does */
@@ -741,7 +745,8 @@
args[2] = LOWORD(lParam1);
args[1] = HIWORD(lParam2);
args[0] = LOWORD(lParam2);
- WOWCallback16Ex( (DWORD)whic->driverproc16, WCB16_PASCAL, sizeof(args),
args, &ret );
+ WOWCallback16Ex( (DWORD)whic->driverproc16, WCB16_PASCAL, sizeof(args),
args, &result );
+ ret = result;
}
else
{
@@ -762,6 +767,7 @@
DWORD WINAPI VideoCapDriverDescAndVer16(WORD nr, LPSTR buf1, WORD buf1len,
LPSTR buf2, WORD buf2len)
{
+ static const char version_info_spec[] =
"\\StringFileInfo\\040904E4\\FileDescription";
DWORD verhandle;
DWORD infosize;
UINT subblocklen;
@@ -787,7 +793,7 @@
if (strncasecmp(buf, "vid", 3)) continue;
if (nr--) continue;
fnLen = sizeof(fn);
- lRet = RegQueryValueExA(hKey, buf, 0, 0, fn, &fnLen);
+ lRet = RegQueryValueExA(hKey, buf, 0, 0, (LPBYTE)fn, &fnLen);
if (lRet == ERROR_SUCCESS) found = TRUE;
break;
}
@@ -821,37 +827,37 @@
infobuf = HeapAlloc(GetProcessHeap(), 0, infosize);
if (GetFileVersionInfoA(fn, verhandle, infosize, infobuf))
{
- char vbuf[200];
/* Yes, two space behind : */
/* FIXME: test for buflen */
- sprintf(vbuf, "Version: %d.%d.%d.%d\n",
+ snprintf(buf2, buf2len, "Version: %d.%d.%d.%d\n",
((WORD*)infobuf)[0x0f],
((WORD*)infobuf)[0x0e],
((WORD*)infobuf)[0x11],
((WORD*)infobuf)[0x10]
);
- TRACE("version of %s is %s\n", fn, vbuf);
- strncpy(buf2, vbuf, buf2len);
+ TRACE("version of %s is %s\n", fn, buf2);
}
else
{
TRACE("GetFileVersionInfoA failed for %s.\n", fn);
- strncpy(buf2, fn, buf2len); /* msvideo.dll appears to copy fn*/
+ lstrcpynA(buf2, fn, buf2len); /* msvideo.dll appears to copy fn*/
}
/* FIXME: language problem? */
if (VerQueryValueA( infobuf,
- "\\StringFileInfo\\040904E4\\FileDescription",
+ version_info_spec,
&subblock,
&subblocklen
))
{
+ UINT copylen = min(subblocklen,buf1len-1);
+ memcpy(buf1, subblock, copylen);
+ buf1[copylen] = '\0';
TRACE("VQA returned %s\n", (LPCSTR)subblock);
- strncpy(buf1, subblock, buf1len);
}
else
{
TRACE("VQA did not return on query
\\StringFileInfo\\040904E4\\FileDescription?\n");
- strncpy(buf1, fn, buf1len); /* msvideo.dll appears to copy fn*/
+ lstrcpynA(buf1, fn, buf1len); /* msvideo.dll appears to copy fn*/
}
HeapFree(GetProcessHeap(), 0, infobuf);
return 0;
@@ -884,7 +890,7 @@
}
/**************************************************************************
- * DllEntryPoint (MSVIDEO.300)
+ * DllEntryPoint (MSVIDEO.3)
*
* MSVIDEO DLL entry point
*
Modified: trunk/reactos/dll/win32/msvfw32/msvideo_main.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvideo_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvideo_main.c (original)
+++ trunk/reactos/dll/win32/msvfw32/msvideo_main.c Wed Apr 25 12:21:59 2007
@@ -2,6 +2,7 @@
* Copyright 1998 Marcus Meissner
* Copyright 2000 Bradley Baetz
* Copyright 2003 Michael Günnewig
+ * Copyright 2005 Dmitry Timoshkov
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -15,7 +16,7 @@
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*
* FIXME: This all assumes 32 bit codecs
* Win95 appears to prefer 32 bit codecs, even from 16 bit code.
@@ -25,17 +26,19 @@
* - no thread safety
*/
+#include <stdarg.h>
#include <stdio.h>
#include <string.h>
-#include "msvideo_private.h"
+#include "windef.h"
+#include "winbase.h"
+#include "winreg.h"
#include "winnls.h"
#include "wingdi.h"
#include "winuser.h"
-#include "winreg.h"
-
-#include "windowsx.h"
-
+#include "commdlg.h"
+#include "vfw.h"
+#include "msvideo_private.h"
#include "wine/debug.h"
/* Drivers32 settings */
@@ -78,7 +81,7 @@
BOOL WINAPI DllMain( HINSTANCE hinst, DWORD reason, LPVOID reserved )
{
- TRACE("%p,%lx,%p\n", hinst, reason, reserved);
+ TRACE("%p,%x,%p\n", hinst, reason, reserved);
switch(reason)
{
@@ -116,14 +119,15 @@
lRet = RegOpenKeyExA(HKEY_LOCAL_MACHINE, HKLM_DRIVERS32, 0, KEY_QUERY_VALUE,
&hKey);
if (lRet == ERROR_SUCCESS)
{
- RegQueryInfoKeyA( hKey, 0, 0, 0, &cnt, 0, 0, 0, 0, 0, 0, 0);
- for (i = 0; i < cnt; i++)
+ DWORD numkeys;
+ RegQueryInfoKeyA( hKey, 0, 0, 0, &numkeys, 0, 0, 0, 0, 0, 0, 0);
+ for (i = 0; i < numkeys; i++)
{
bufLen = sizeof(buf) / sizeof(buf[0]);
lRet = RegEnumKeyExA(hKey, i, buf, &bufLen, 0, 0, 0, &lastWrite);
if (lRet != ERROR_SUCCESS) continue;
if (strncasecmp(buf, fccTypeStr, 5) || buf[9] != '=') continue;
- if ((result = handler(buf, i, param))) break;
+ if ((result = handler(buf, cnt++, param))) break;
}
RegCloseKey( hKey );
}
@@ -132,10 +136,11 @@
/* if that didn't work, go through the values in system.ini */
if (GetPrivateProfileSectionA("drivers32", buf, sizeof(buf),
"system.ini"))
{
- for (s = buf; *s; cnt++, s += strlen(s) + 1)
+ for (s = buf; *s; s += strlen(s) + 1)
{
+ TRACE("got %s\n", s);
if (strncasecmp(s, fccTypeStr, 5) || s[9] != '=') continue;
- if ((result = handler(s, cnt, param))) break;
+ if ((result = handler(s, cnt++, param))) break;
}
}
@@ -175,11 +180,10 @@
if ((lpicinfo->fccHandler != nr) && (lpicinfo->fccHandler !=
fccHandler))
return FALSE;
- lpicinfo->fccType = mmioStringToFOURCCA(drv, 0);
lpicinfo->fccHandler = fccHandler;
lpicinfo->dwFlags = 0;
lpicinfo->dwVersion = 0;
- lpicinfo->dwVersionICM = 0x104;
+ lpicinfo->dwVersionICM = ICVERSION;
lpicinfo->szName[0] = 0;
lpicinfo->szDescription[0] = 0;
MultiByteToWideChar(CP_ACP, 0, drv + 10, -1, lpicinfo->szDriver,
@@ -200,9 +204,10 @@
*/
BOOL VFWAPI ICInfo( DWORD fccType, DWORD fccHandler, ICINFO *lpicinfo)
{
- TRACE("(%s,%s/%08lx,%p)\n",
+ TRACE("(%s,%s/%08x,%p)\n",
wine_dbgstr_fcc(fccType), wine_dbgstr_fcc(fccHandler), fccHandler, lpicinfo);
+ lpicinfo->fccType = fccType;
lpicinfo->fccHandler = fccHandler;
return enum_drivers(fccType, ICInfo_enum_handler, lpicinfo);
}
@@ -258,8 +263,8 @@
reg_driver_list = driver;
return TRUE;
- oom:
- if (driver) HeapFree(GetProcessHeap(), 0, driver);
+oom:
+ HeapFree(GetProcessHeap(), 0, driver);
return FALSE;
}
@@ -269,7 +274,8 @@
BOOL VFWAPI ICRemove(DWORD fccType, DWORD fccHandler, UINT wFlags)
{
reg_driver** pdriver;
-
+ reg_driver* drv;
+
TRACE("(%s,%s,0x%08x)\n", wine_dbgstr_fcc(fccType),
wine_dbgstr_fcc(fccHandler), wFlags);
/* Check if a driver is already registered */
@@ -283,10 +289,10 @@
return FALSE;
/* Remove the driver from the list */
+ drv = *pdriver;
*pdriver = (*pdriver)->next;
- if ((*pdriver)->name)
- HeapFree(GetProcessHeap(), 0, (*pdriver)->name);
- HeapFree(GetProcessHeap(), 0, *pdriver);
+ HeapFree(GetProcessHeap(), 0, drv->name);
+ HeapFree(GetProcessHeap(), 0, drv);
return TRUE;
}
@@ -343,20 +349,7 @@
hdrv = OpenDriver(codecname, drv32W, (LPARAM)&icopen);
if (!hdrv)
- {
- if (fccType == streamtypeVIDEO)
- {
- codecname[0] = 'v';
- codecname[1] = 'i';
- codecname[2] = 'd';
- codecname[3] = 'c';
-
- fccType = ICTYPE_VIDEO;
- hdrv = OpenDriver(codecname, drv32W, (LPARAM)&icopen);
- }
- if (!hdrv)
- return 0;
- }
+ return 0;
} else {
/* The driver has been registered at runtime with its name */
hdrv = OpenDriver(driver->name, NULL, (LPARAM)&icopen);
@@ -400,13 +393,13 @@
ICOPEN icopen;
WINE_HIC* whic;
- TRACE("(%s,%s,%d,%p,%08lx)\n",
+ TRACE("(%s,%s,%d,%p,%08x)\n",
wine_dbgstr_fcc(fccType), wine_dbgstr_fcc(fccHandler), wMode, lpfnHandler,
lpfnHandler16);
icopen.dwSize = sizeof(ICOPEN);
icopen.fccType = fccType;
icopen.fccHandler = fccHandler;
- icopen.dwVersion = 0x00001000; /* FIXME */
+ icopen.dwVersion = ICVERSION;
icopen.dwFlags = wMode;
icopen.dwError = 0;
icopen.pV1Reserved = NULL;
@@ -436,9 +429,9 @@
/* return value is not checked */
MSVIDEO_SendMessage(whic, DRV_ENABLE, 0L, 0L);
- whic->driverId = (DWORD)MSVIDEO_SendMessage(whic, DRV_OPEN, 0,
(DWORD)&icopen);
+ whic->driverId = (DWORD)MSVIDEO_SendMessage(whic, DRV_OPEN, 0,
(DWORD_PTR)&icopen);
/* FIXME: What should we put here? */
- whic->hdrv = (HDRVR)0;
+ whic->hdrv = NULL;
if (whic->driverId == 0)
{
@@ -468,7 +461,7 @@
LRESULT ret;
WINE_HIC* whic = MSVIDEO_GetHicPtr(hic);
- TRACE("(%p,%p,%ld)\n", hic, picinfo, cb);
+ TRACE("(%p,%p,%d)\n", hic, picinfo, cb);
whic = MSVIDEO_GetHicPtr(hic);
if (!whic) return ICERR_BADHANDLE;
@@ -477,11 +470,11 @@
/* (WS) The field szDriver should be initialized because the driver
* is not obliged and often will not do it. Some applications, like
* VirtualDub, rely on this field and will occasionally crash if it
- * goes unitialized.
+ * goes uninitialized.
*/
if (cb >= sizeof(ICINFO)) picinfo->szDriver[0] = '\0';
- ret = ICSendMessage(hic, ICM_GETINFO, (DWORD)picinfo, cb);
+ ret = ICSendMessage(hic, ICM_GETINFO, (DWORD_PTR)picinfo, cb);
/* (WS) When szDriver was not supplied by the driver itself, apparently
* Windows will set its value equal to the driver file name. This can
@@ -517,7 +510,7 @@
if ((hic = ICOpen(info->fccType, info->fccHandler, info->wMode)))
{
- if (!ICSendMessage(hic, info->querymsg, (DWORD)info->lpbiIn,
(DWORD)info->lpbiOut))
+ if (!ICSendMessage(hic, info->querymsg, (DWORD_PTR)info->lpbiIn,
(DWORD_PTR)info->lpbiOut))
return hic;
ICClose(hic);
}
@@ -610,14 +603,14 @@
if (ICDecompressQuery(tmphic,lpbiIn,NULL) != 0)
goto errout; /* no, sorry */
- ICDecompressGetFormat(tmphic,lpbiIn,lpbiOut);
+ ICSendMessage(tmphic, ICM_DECOMPRESS_GET_FORMAT, (DWORD_PTR)lpbiIn,
(DWORD_PTR)lpbiOut);
if (lpbiOut->biCompression != 0) {
- FIXME("Ooch, how come decompressor outputs compressed data (%ld)??\n",
+ FIXME("Ooch, how come decompressor outputs compressed data
(%d)??\n",
lpbiOut->biCompression);
}
if (lpbiOut->biSize < sizeof(*lpbiOut)) {
- FIXME("Ooch, size of output BIH is too small (%ld)\n",
+ FIXME("Ooch, size of output BIH is too small (%d)\n",
lpbiOut->biSize);
lpbiOut->biSize = sizeof(*lpbiOut);
}
@@ -655,7 +648,7 @@
{
ICCOMPRESS iccmp;
- TRACE("(%p,%ld,%p,%p,%p,%p,...)\n",hic,dwFlags,lpbiOutput,lpData,lpbiInput,lpBits);
+ TRACE("(%p,%d,%p,%p,%p,%p,...)\n",hic,dwFlags,lpbiOutput,lpData,lpbiInput,lpBits);
iccmp.dwFlags = dwFlags;
@@ -671,7 +664,7 @@
iccmp.dwQuality = dwQuality;
iccmp.lpbiPrev = lpbiPrev;
iccmp.lpPrev = lpPrev;
- return ICSendMessage(hic,ICM_COMPRESS,(DWORD)&iccmp,sizeof(iccmp));
+ return ICSendMessage(hic,ICM_COMPRESS,(DWORD_PTR)&iccmp,sizeof(iccmp));
}
/***********************************************************************
@@ -683,9 +676,9 @@
ICDECOMPRESS icd;
DWORD ret;
- TRACE("(%p,%ld,%p,%p,%p,%p)\n",hic,dwFlags,lpbiFormat,lpData,lpbi,lpBits);
-
- TRACE("lpBits[0] == %lx\n",((LPDWORD)lpBits)[0]);
+ TRACE("(%p,%d,%p,%p,%p,%p)\n",hic,dwFlags,lpbiFormat,lpData,lpbi,lpBits);
+
+ TRACE("lpBits[0] == %x\n",((LPDWORD)lpBits)[0]);
icd.dwFlags = dwFlags;
icd.lpbiInput = lpbiFormat;
@@ -694,15 +687,261 @@
icd.lpbiOutput = lpbi;
icd.lpOutput = lpBits;
icd.ckid = 0;
- ret = ICSendMessage(hic,ICM_DECOMPRESS,(DWORD)&icd,sizeof(ICDECOMPRESS));
-
- TRACE("lpBits[0] == %lx\n",((LPDWORD)lpBits)[0]);
-
- TRACE("-> %ld\n",ret);
+ ret = ICSendMessage(hic,ICM_DECOMPRESS,(DWORD_PTR)&icd,sizeof(ICDECOMPRESS));
+
+ TRACE("lpBits[0] == %x\n",((LPDWORD)lpBits)[0]);
+
+ TRACE("-> %d\n",ret);
return ret;
}
+
+struct choose_compressor
+{
+ UINT flags;
+ LPCSTR title;
+ COMPVARS cv;
+};
+
+struct codec_info
+{
+ HIC hic;
+ ICINFO icinfo;
+};
+
+static BOOL enum_compressors(HWND list, COMPVARS *pcv, BOOL enum_all)
+{
+ UINT id, total = 0;
+ ICINFO icinfo;
+
+ id = 0;
+
+ while (ICInfo(pcv->fccType, id, &icinfo))
+ {
+ struct codec_info *ic;
+ DWORD idx;
+ HIC hic;
+
+ id++;
+
+ hic = ICOpen(icinfo.fccType, icinfo.fccHandler, ICMODE_COMPRESS);
+
+ if (hic)
+ {
+ /* for unknown reason fccHandler reported by the driver
+ * doesn't always work, use the one returned by ICInfo instead.
+ */
+ DWORD fccHandler = icinfo.fccHandler;
+
+ if (!enum_all && pcv->lpbiIn)
+ {
+ if (ICCompressQuery(hic, pcv->lpbiIn, NULL) != ICERR_OK)
+ {
+ TRACE("fccHandler %s doesn't support input DIB format
%d\n",
+ wine_dbgstr_fcc(icinfo.fccHandler),
pcv->lpbiIn->bmiHeader.biCompression);
+ ICClose(hic);
+ continue;
+ }
+ }
+
+ ICGetInfo(hic, &icinfo, sizeof(icinfo));
+ icinfo.fccHandler = fccHandler;
+
+ idx = SendMessageW(list, CB_ADDSTRING, 0, (LPARAM)icinfo.szDescription);
+
+ ic = HeapAlloc(GetProcessHeap(), 0, sizeof(struct codec_info));
+ memcpy(&ic->icinfo, &icinfo, sizeof(ICINFO));
+ ic->hic = hic;
+ SendMessageW(list, CB_SETITEMDATA, idx, (LPARAM)ic);
+ }
+ total++;
+ }
+
+ return total != 0;
+}
+
+static INT_PTR CALLBACK icm_choose_compressor_dlgproc(HWND hdlg, UINT msg, WPARAM wparam,
LPARAM lparam)
+{
+ switch (msg)
+ {
+ case WM_INITDIALOG:
+ {
+ struct codec_info *ic;
+ WCHAR buf[128];
+ struct choose_compressor *choose_comp = (struct choose_compressor *)lparam;
+
+ SetWindowLongPtrW(hdlg, DWLP_USER, lparam);
+
+ /* FIXME */
+ choose_comp->flags &= ~(ICMF_CHOOSE_DATARATE | ICMF_CHOOSE_KEYFRAME);
+
+ if (choose_comp->title)
+ SetWindowTextA(hdlg, choose_comp->title);
+
+ if (!(choose_comp->flags & ICMF_CHOOSE_DATARATE))
+ {
+ ShowWindow(GetDlgItem(hdlg, IDC_DATARATE_CHECKBOX), SW_HIDE);
+ ShowWindow(GetDlgItem(hdlg, IDC_DATARATE), SW_HIDE);
+ ShowWindow(GetDlgItem(hdlg, IDC_DATARATE_KB), SW_HIDE);
+ }
+
+ if (!(choose_comp->flags & ICMF_CHOOSE_KEYFRAME))
+ {
+ ShowWindow(GetDlgItem(hdlg, IDC_KEYFRAME_CHECKBOX), SW_HIDE);
+ ShowWindow(GetDlgItem(hdlg, IDC_KEYFRAME), SW_HIDE);
+ ShowWindow(GetDlgItem(hdlg, IDC_KEYFRAME_FRAMES), SW_HIDE);
+ }
+
+ /* FIXME */
+ EnableWindow(GetDlgItem(hdlg, IDC_QUALITY_SCROLL), FALSE);
+ EnableWindow(GetDlgItem(hdlg, IDC_QUALITY_TXT), FALSE);
+
+ /*if (!(choose_comp->flags & ICMF_CHOOSE_PREVIEW))
+ ShowWindow(GetDlgItem(hdlg, IDC_PREVIEW), SW_HIDE);*/
+
+ LoadStringW(MSVFW32_hModule, IDS_FULLFRAMES, buf, 128);
+ SendDlgItemMessageW(hdlg, IDC_COMP_LIST, CB_ADDSTRING, 0, (LPARAM)buf);
+
+ ic = HeapAlloc(GetProcessHeap(), 0, sizeof(struct codec_info));
+ ic->icinfo.fccType = streamtypeVIDEO;
+ ic->icinfo.fccHandler = comptypeDIB;
+ ic->hic = 0;
+ SendDlgItemMessageW(hdlg, IDC_COMP_LIST, CB_SETITEMDATA, 0, (LPARAM)ic);
+
+ enum_compressors(GetDlgItem(hdlg, IDC_COMP_LIST), &choose_comp->cv,
choose_comp->flags & ICMF_CHOOSE_ALLCOMPRESSORS);
+
+ SendDlgItemMessageW(hdlg, IDC_COMP_LIST, CB_SETCURSEL, 0, 0);
+ SetFocus(GetDlgItem(hdlg, IDC_COMP_LIST));
+
+ SetWindowLongPtrW(hdlg, DWLP_USER, (ULONG_PTR)choose_comp);
+ break;
+ }
+
+ case WM_COMMAND:
+ switch (LOWORD(wparam))
+ {
+ case IDC_COMP_LIST:
+ {
+ INT cur_sel;
+ struct codec_info *ic;
+ BOOL can_configure = FALSE, can_about = FALSE;
+ struct choose_compressor *choose_comp;
+
+ if (HIWORD(wparam) != CBN_SELCHANGE && HIWORD(wparam) !=
CBN_SETFOCUS)
+ break;
+
+ choose_comp = (struct choose_compressor *)GetWindowLongPtrW(hdlg,
DWLP_USER);
+
+ cur_sel = SendMessageW((HWND)lparam, CB_GETCURSEL, 0, 0);
+
+ ic = (struct codec_info *)SendMessageW((HWND)lparam, CB_GETITEMDATA, cur_sel,
0);
+ if (ic && ic->hic)
+ {
+ if (ICQueryConfigure(ic->hic) == DRVCNF_OK)
+ can_configure = TRUE;
+ if (ICQueryAbout(ic->hic) == DRVCNF_OK)
+ can_about = TRUE;
+ }
+ EnableWindow(GetDlgItem(hdlg, IDC_CONFIGURE), can_configure);
+ EnableWindow(GetDlgItem(hdlg, IDC_ABOUT), can_about);
+
+ if (choose_comp->flags & ICMF_CHOOSE_DATARATE)
+ {
+ /* FIXME */
+ }
+ if (choose_comp->flags & ICMF_CHOOSE_KEYFRAME)
+ {
+ /* FIXME */
+ }
+
+ break;
+ }
+
+ case IDC_CONFIGURE:
+ case IDC_ABOUT:
+ {
+ HWND list = GetDlgItem(hdlg, IDC_COMP_LIST);
+ INT cur_sel;
+ struct codec_info *ic;
+
+ if (HIWORD(wparam) != BN_CLICKED)
+ break;
+
+ cur_sel = SendMessageW(list, CB_GETCURSEL, 0, 0);
+
+ ic = (struct codec_info *)SendMessageW(list, CB_GETITEMDATA, cur_sel, 0);
+ if (ic && ic->hic)
+ {
+ if (LOWORD(wparam) == IDC_CONFIGURE)
+ ICConfigure(ic->hic, hdlg);
+ else
+ ICAbout(ic->hic, hdlg);
+ }
+
+ break;
+ }
+
+ case IDOK:
+ {
+ HWND list = GetDlgItem(hdlg, IDC_COMP_LIST);
+ INT cur_sel;
+ struct codec_info *ic;
+
+ if (HIWORD(wparam) != BN_CLICKED)
+ break;
+
+ cur_sel = SendMessageW(list, CB_GETCURSEL, 0, 0);
+ ic = (struct codec_info *)SendMessageW(list, CB_GETITEMDATA, cur_sel, 0);
+ if (ic)
+ {
+ struct choose_compressor *choose_comp = (struct choose_compressor
*)GetWindowLongPtrW(hdlg, DWLP_USER);
+
+ choose_comp->cv.hic = ic->hic;
+ choose_comp->cv.fccType = ic->icinfo.fccType;
+ choose_comp->cv.fccHandler = ic->icinfo.fccHandler;
+ /* FIXME: fill everything else */
+
+ /* prevent closing the codec handle below */
+ ic->hic = 0;
+ }
+ }
+ /* fall through */
+ case IDCANCEL:
+ {
+ HWND list = GetDlgItem(hdlg, IDC_COMP_LIST);
+ INT idx = 0;
+
+ if (HIWORD(wparam) != BN_CLICKED)
+ break;
+
+ while (1)
+ {
+ struct codec_info *ic;
+
+ ic = (struct codec_info *)SendMessageW(list, CB_GETITEMDATA, idx++, 0);
+
+ if (!ic || (LONG_PTR)ic == CB_ERR) break;
+
+ if (ic->hic) ICClose(ic->hic);
+ HeapFree(GetProcessHeap(), 0, ic);
+ }
+
+ EndDialog(hdlg, LOWORD(wparam) == IDOK);
+ break;
+ }
+
+ default:
+ break;
+ }
+ break;
+
+ default:
+ break;
+ }
+
+ return FALSE;
+}
/***********************************************************************
* ICCompressorChoose [MSVFW32.@]
@@ -710,29 +949,45 @@
BOOL VFWAPI ICCompressorChoose(HWND hwnd, UINT uiFlags, LPVOID pvIn,
LPVOID lpData, PCOMPVARS pc, LPSTR lpszTitle)
{
-
FIXME("(%p,0x%X,%p,%p,%p,%s),stub!\n",hwnd,uiFlags,pvIn,lpData,pc,lpszTitle);
-
- if (pc == NULL || pc->cbSize != sizeof(COMPVARS))
- return FALSE;
-
- if ((pc->dwFlags & ICMF_COMPVARS_VALID) == 0) {
- pc->dwFlags = 0;
- pc->fccType = pc->fccHandler = 0;
- pc->hic = NULL;
- pc->lpbiOut = NULL;
- pc->lpBitsOut = pc->lpBitsPrev = pc->lpState = NULL;
- pc->lQ = ICQUALITY_DEFAULT;
- pc->lKey = -1;
- pc->lDataRate = 300; /* kB */
- pc->lpState = NULL;
- pc->cbState = 0;
- }
- if (pc->fccType == 0)
- pc->fccType = ICTYPE_VIDEO;
-
- /* FIXME */
-
- return FALSE;
+ struct choose_compressor choose_comp;
+ BOOL ret;
+
+ TRACE("(%p,%08x,%p,%p,%p,%s)\n", hwnd, uiFlags, pvIn, lpData, pc,
lpszTitle);
+
+ if (!pc || pc->cbSize != sizeof(COMPVARS))
+ return FALSE;
+
+ if (!(pc->dwFlags & ICMF_COMPVARS_VALID))
+ {
+ pc->dwFlags = 0;
+ pc->fccType = pc->fccHandler = 0;
+ pc->hic = NULL;
+ pc->lpbiIn = NULL;
+ pc->lpbiOut = NULL;
+ pc->lpBitsOut = pc->lpBitsPrev = pc->lpState = NULL;
+ pc->lQ = ICQUALITY_DEFAULT;
+ pc->lKey = -1;
+ pc->lDataRate = 300; /* kB */
+ pc->lpState = NULL;
+ pc->cbState = 0;
+ }
+ if (pc->fccType == 0)
+ pc->fccType = ICTYPE_VIDEO;
+
+ choose_comp.cv = *pc;
+ choose_comp.flags = uiFlags;
+ choose_comp.title = lpszTitle;
+
+ ret = DialogBoxParamW(MSVFW32_hModule, MAKEINTRESOURCEW(ICM_CHOOSE_COMPRESSOR),
hwnd,
+ icm_choose_compressor_dlgproc, (LPARAM)&choose_comp);
+
+ if (ret)
+ {
+ *pc = choose_comp.cv;
+ pc->dwFlags |= ICMF_COMPVARS_VALID;
+ }
+
+ return ret;
}
@@ -748,22 +1003,14 @@
ICClose(pc->hic);
pc->hic = NULL;
}
- if (pc->lpbiOut != NULL) {
- GlobalFreePtr(pc->lpbiOut);
- pc->lpbiOut = NULL;
- }
- if (pc->lpBitsOut != NULL) {
- GlobalFreePtr(pc->lpBitsOut);
- pc->lpBitsOut = NULL;
- }
- if (pc->lpBitsPrev != NULL) {
- GlobalFreePtr(pc->lpBitsPrev);
- pc->lpBitsPrev = NULL;
- }
- if (pc->lpState != NULL) {
- GlobalFreePtr(pc->lpBitsPrev);
- pc->lpState = NULL;
- }
+ HeapFree(GetProcessHeap(), 0, pc->lpbiIn);
+ pc->lpbiIn = NULL;
+ HeapFree(GetProcessHeap(), 0, pc->lpBitsOut);
+ pc->lpBitsOut = NULL;
+ HeapFree(GetProcessHeap(), 0, pc->lpBitsPrev);
+ pc->lpBitsPrev = NULL;
+ HeapFree(GetProcessHeap(), 0, pc->lpState);
+ pc->lpState = NULL;
pc->dwFlags = 0;
}
}
@@ -774,7 +1021,7 @@
*
*
*/
-LRESULT MSVIDEO_SendMessage(WINE_HIC* whic, UINT msg, DWORD lParam1, DWORD lParam2)
+LRESULT MSVIDEO_SendMessage(WINE_HIC* whic, UINT msg, DWORD_PTR lParam1, DWORD_PTR
lParam2)
{
LRESULT ret;
@@ -839,7 +1086,7 @@
XX(ICM_DECOMPRESSEX_END);
XX(ICM_SET_STATUS_PROC);
default:
- FIXME("(%p,0x%08lx,0x%08lx,0x%08lx) unknown
message\n",whic,(DWORD)msg,lParam1,lParam2);
+ FIXME("(%p,0x%08x,0x%08lx,0x%08lx) unknown
message\n",whic,(DWORD)msg,lParam1,lParam2);
}
#undef XX
@@ -858,7 +1105,7 @@
/***********************************************************************
* ICSendMessage [MSVFW32.@]
*/
-LRESULT VFWAPI ICSendMessage(HIC hic, UINT msg, DWORD lParam1, DWORD lParam2)
+LRESULT VFWAPI ICSendMessage(HIC hic, UINT msg, DWORD_PTR lParam1, DWORD_PTR lParam2)
{
WINE_HIC* whic = MSVIDEO_GetHicPtr(hic);
@@ -890,7 +1137,7 @@
ICDRAWBEGIN icdb;
- TRACE("(%p,%ld,%p,%p,%p,%u,%u,%u,%u,%p,%u,%u,%u,%u,%ld,%ld)\n",
+ TRACE("(%p,%d,%p,%p,%p,%u,%u,%u,%u,%p,%u,%u,%u,%u,%d,%d)\n",
hic, dwFlags, hpal, hwnd, hdc, xDst, yDst, dxDst, dyDst,
lpbi, xSrc, ySrc, dxSrc, dySrc, dwRate, dwScale);
@@ -909,7 +1156,7 @@
icdb.dySrc = dySrc;
icdb.dwRate = dwRate;
icdb.dwScale = dwScale;
- return ICSendMessage(hic,ICM_DRAW_BEGIN,(DWORD)&icdb,sizeof(icdb));
+ return ICSendMessage(hic,ICM_DRAW_BEGIN,(DWORD_PTR)&icdb,sizeof(icdb));
}
/***********************************************************************
@@ -918,7 +1165,7 @@
DWORD VFWAPIV ICDraw(HIC hic, DWORD dwFlags, LPVOID lpFormat, LPVOID lpData, DWORD
cbData, LONG lTime) {
ICDRAW icd;
- TRACE("(%p,%ld,%p,%p,%ld,%ld)\n",hic,dwFlags,lpFormat,lpData,cbData,lTime);
+ TRACE("(%p,%d,%p,%p,%d,%d)\n",hic,dwFlags,lpFormat,lpData,cbData,lTime);
icd.dwFlags = dwFlags;
icd.lpFormat = lpFormat;
@@ -926,7 +1173,7 @@
icd.cbData = cbData;
icd.lTime = lTime;
- return ICSendMessage(hic,ICM_DRAW,(DWORD)&icd,sizeof(icd));
+ return ICSendMessage(hic,ICM_DRAW,(DWORD_PTR)&icd,sizeof(icd));
}
/***********************************************************************
@@ -977,7 +1224,7 @@
LPBITMAPINFO lpbiOut, LONG lQuality,
LONG* plSize)
{
- FIXME("(%p,%08x,%p,%p,%p,%ld,%p)\n",
+ FIXME("(%p,%08x,%p,%p,%p,%d,%p)\n",
hic, uiFlags, lpbiIn, lpBits, lpbiOut, lQuality, plSize);
return NULL;
@@ -995,7 +1242,7 @@
BYTE* pMem = NULL;
BOOL bReleaseIC = FALSE;
BYTE* pHdr = NULL;
- LONG cbHdr = 0;
+ ULONG cbHdr = 0;
BOOL bSucceeded = FALSE;
BOOL bInDecompress = FALSE;
DWORD biSizeImage;
@@ -1047,7 +1294,7 @@
cbHdr = ICDecompressGetFormatSize(hic,lpbiIn);
if ( cbHdr < sizeof(BITMAPINFOHEADER) )
goto err;
- pHdr = (BYTE*)HeapAlloc(GetProcessHeap(),0,cbHdr+sizeof(RGBQUAD)*256);
+ pHdr = HeapAlloc(GetProcessHeap(),0,cbHdr+sizeof(RGBQUAD)*256);
if ( pHdr == NULL )
goto err;
ZeroMemory( pHdr, cbHdr+sizeof(RGBQUAD)*256 );
@@ -1081,7 +1328,7 @@
goto err;
bInDecompress = TRUE;
- TRACE( "cbHdr %ld, biSizeImage %ld\n", cbHdr, biSizeImage );
+ TRACE( "cbHdr %d, biSizeImage %d\n", cbHdr, biSizeImage );
hMem = GlobalAlloc( GMEM_MOVEABLE|GMEM_ZEROINIT, cbHdr + biSizeImage );
if ( hMem == NULL )
@@ -1104,8 +1351,7 @@
ICDecompressEnd( hic );
if ( bReleaseIC )
ICClose(hic);
- if ( pHdr != NULL )
- HeapFree(GetProcessHeap(),0,pHdr);
+ HeapFree(GetProcessHeap(),0,pHdr);
if ( pMem != NULL )
GlobalUnlock( hMem );
if ( !bSucceeded && hMem != NULL )
@@ -1116,6 +1362,156 @@
return (HANDLE)hMem;
}
+/***********************************************************************
+ * ICSeqCompressFrame [MSVFW32.@]
+ */
+LPVOID VFWAPI ICSeqCompressFrame(PCOMPVARS pc, UINT uiFlags, LPVOID lpBits, BOOL *pfKey,
LONG *plSize)
+{
+ ICCOMPRESS* icComp = (ICCOMPRESS *)pc->lpState;
+ DWORD ret;
+ TRACE("(%p, 0x%08x, %p, %p, %p)\n", pc, uiFlags, lpBits, pfKey, plSize);
+
+ if (pc->cbState != sizeof(ICCOMPRESS))
+ {
+ ERR("Invalid cbState %i\n", pc->cbState);
+ return NULL;
+ }
+
+ if (!pc->lKeyCount++)
+ icComp->dwFlags = ICCOMPRESS_KEYFRAME;
+ else
+ {
+ if (pc->lKey && pc->lKeyCount == (pc->lKey - 1))
+ /* No key frames if pc->lKey == 0 */
+ pc->lKeyCount = 0;
+ icComp->dwFlags = 0;
+ }
+
+ icComp->lpInput = lpBits;
+ icComp->lFrameNum = pc->lFrame++;
+ icComp->lpOutput = pc->lpBitsOut;
+ icComp->lpPrev = pc->lpBitsPrev;
+ ret = ICSendMessage(pc->hic, ICM_COMPRESS, (DWORD_PTR)icComp, sizeof(icComp));
+
+ if (icComp->dwFlags & AVIIF_KEYFRAME)
+ {
+ pc->lKeyCount = 1;
+ *pfKey = TRUE;
+ TRACE("Key frame\n");
+ }
+ else
+ *pfKey = FALSE;
+
+ *plSize = icComp->lpbiOutput->biSizeImage;
+ TRACE(" -- 0x%08x\n", ret);
+ if (ret == ICERR_OK)
+ {
+ LPVOID oldprev, oldout;
+/* We shift Prev and Out, so we don't have to allocate and release memory */
+ oldprev = pc->lpBitsPrev;
+ oldout = pc->lpBitsOut;
+ pc->lpBitsPrev = oldout;
+ pc->lpBitsOut = oldprev;
+
+ TRACE("returning: %p\n", icComp->lpOutput);
+ return icComp->lpOutput;
+ }
+ return NULL;
+}
+
+/***********************************************************************
+ * ICSeqCompressFrameEnd [MSVFW32.@]
+ */
+void VFWAPI ICSeqCompressFrameEnd(PCOMPVARS pc)
+{
+ DWORD ret;
+ TRACE("(%p)\n", pc);
+ ret = ICSendMessage(pc->hic, ICM_COMPRESS_END, 0, 0);
+ TRACE(" -- %x\n", ret);
+ HeapFree(GetProcessHeap(), 0, pc->lpbiIn);
+ HeapFree(GetProcessHeap(), 0, pc->lpBitsPrev);
+ HeapFree(GetProcessHeap(), 0, pc->lpBitsOut);
+ HeapFree(GetProcessHeap(), 0, pc->lpState);
+ pc->lpbiIn = pc->lpBitsPrev = pc->lpBitsOut = pc->lpState = NULL;
+}
+
+/***********************************************************************
+ * ICSeqCompressFrameStart [MSVFW32.@]
+ */
+BOOL VFWAPI ICSeqCompressFrameStart(PCOMPVARS pc, LPBITMAPINFO lpbiIn)
+{
+ /* I'm ignoring bmiColors as I don't know what to do with it,
+ * it doesn't appear to be used though
+ */
+ DWORD ret;
+ pc->lpbiIn = HeapAlloc(GetProcessHeap(), 0, sizeof(BITMAPINFO));
+ if (!pc->lpbiIn)
+ return FALSE;
+
+ memcpy(pc->lpbiIn, lpbiIn, sizeof(BITMAPINFO));
+ pc->lpBitsPrev = HeapAlloc(GetProcessHeap(), 0,
pc->lpbiIn->bmiHeader.biSizeImage);
+ if (!pc->lpBitsPrev)
+ {
+ HeapFree(GetProcessHeap(), 0, pc->lpbiIn);
+ return FALSE;
+ }
+
+ pc->lpState = HeapAlloc(GetProcessHeap(), 0, sizeof(ICCOMPRESS));
+ if (!pc->lpState)
+ {
+ HeapFree(GetProcessHeap(), 0, pc->lpbiIn);
+ HeapFree(GetProcessHeap(), 0, pc->lpBitsPrev);
+ return FALSE;
+ }
+ pc->cbState = sizeof(ICCOMPRESS);
+
+ pc->lpBitsOut = HeapAlloc(GetProcessHeap(), 0,
pc->lpbiOut->bmiHeader.biSizeImage);
+ if (!pc->lpBitsOut)
+ {
+ HeapFree(GetProcessHeap(), 0, pc->lpbiIn);
+ HeapFree(GetProcessHeap(), 0, pc->lpBitsPrev);
+ HeapFree(GetProcessHeap(), 0, pc->lpState);
+ return FALSE;
+ }
+ TRACE("Compvars:\n"
+ "\tpc:\n"
+ "\tsize: %i\n"
+ "\tflags: %i\n"
+ "\thic: %p\n"
+ "\ttype: %x\n"
+ "\thandler: %x\n"
+ "\tin/out: %p/%p\n"
+ "key/data/quality: %i/%i/%i\n",
+ pc->cbSize, pc->dwFlags, pc->hic, pc->fccType, pc->fccHandler,
+ pc->lpbiIn, pc->lpbiOut, pc->lKey, pc->lDataRate, pc->lQ);
+
+ ret = ICSendMessage(pc->hic, ICM_COMPRESS_BEGIN, (DWORD_PTR)pc->lpbiIn,
(DWORD_PTR)pc->lpbiOut);
+ TRACE(" -- %x\n", ret);
+ if (ret == ICERR_OK)
+ {
+ ICCOMPRESS* icComp = (ICCOMPRESS *)pc->lpState;
+ /* Initialise some variables */
+ pc->lFrame = 0; pc->lKeyCount = 0;
+
+ icComp->lpbiOutput = &pc->lpbiOut->bmiHeader;
+ icComp->lpbiInput = &pc->lpbiIn->bmiHeader;
+ icComp->lpckid = NULL;
+ icComp->dwFrameSize = 0;
+ icComp->dwQuality = pc->lQ;
+ icComp->lpbiPrev = &pc->lpbiIn->bmiHeader;
+ return TRUE;
+ }
+ HeapFree(GetProcessHeap(), 0, pc->lpbiIn);
+ HeapFree(GetProcessHeap(), 0, pc->lpBitsPrev);
+ HeapFree(GetProcessHeap(), 0, pc->lpState);
+ HeapFree(GetProcessHeap(), 0, pc->lpBitsOut);
+ pc->lpBitsPrev = pc->lpbiIn = pc->lpState = pc->lpBitsOut = NULL;
+ return FALSE;
+}
+
+/***********************************************************************
+ * GetFileNamePreview [MSVFW32.@]
+ */
static BOOL GetFileNamePreview(LPVOID lpofn,BOOL bSave,BOOL bUnicode)
{
CHAR szFunctionName[20];
Modified: trunk/reactos/dll/win32/msvfw32/msvideo_private.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/msvideo_…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/msvideo_private.h (original)
+++ trunk/reactos/dll/win32/msvfw32/msvideo_private.h Wed Apr 25 12:21:59 2007
@@ -13,20 +13,18 @@
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#ifndef __WINE_MSVIDEO_PRIVATE_H
#define __WINE_MSVIDEO_PRIVATE_H
-#define COM_NO_WINDOWS_H
-#include <stdarg.h>
-#include "windef.h"
-#include "winbase.h"
-#include "wingdi.h"
-#include "winuser.h"
-#include "commdlg.h"
-#include "vfw.h"
+/* Installable Compressor Manager */
+#define ICVERSION 0x0104
+
+#define ICM_CHOOSE_COMPRESSOR 1
+#define IDC_COMP_LIST 880
+#define IDS_FULLFRAMES 901
/* HIC struct (same layout as Win95 one) */
typedef struct tagWINE_HIC {
@@ -48,7 +46,7 @@
} WINE_HIC;
HIC MSVIDEO_OpenFunction(DWORD, DWORD, UINT, DRIVERPROC, DWORD);
-LRESULT MSVIDEO_SendMessage(WINE_HIC*, UINT, DWORD, DWORD);
+LRESULT MSVIDEO_SendMessage(WINE_HIC*, UINT, DWORD_PTR, DWORD_PTR);
WINE_HIC* MSVIDEO_GetHicPtr(HIC);
extern LRESULT (CALLBACK *pFnCallTo16)(HDRVR, HIC, UINT, LPARAM, LPARAM);
@@ -62,4 +60,17 @@
#define HDRAWDIB_16(h32) (LOWORD(h32))
#define HIC_16(h32) (LOWORD(h32))
+#define IDC_CONFIGURE 882
+#define IDC_ABOUT 883
+
+#define IDC_QUALITY_SCROLL 884
+#define IDC_QUALITY_TXT 886
+
+#define IDC_KEYFRAME_CHECKBOX 887
+#define IDC_KEYFRAME 888
+#define IDC_KEYFRAME_FRAMES 889
+#define IDC_DATARATE_CHECKBOX 894
+#define IDC_DATARATE 895
+#define IDC_DATARATE_KB 896
+
#endif /* __WINE_MSVIDEO_PRIVATE_H */
Added: trunk/reactos/dll/win32/msvfw32/rsrc.rc
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/rsrc.rc?…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/rsrc.rc (added)
+++ trunk/reactos/dll/win32/msvfw32/rsrc.rc Wed Apr 25 12:21:59 2007
@@ -1,0 +1,30 @@
+/*
+ * Copyright 2005 Dmitry Timoshkov
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "windef.h"
+#include "winuser.h"
+#include "msvideo_private.h"
+
+#include "msvfw32_De.rc"
+#include "msvfw32_En.rc"
+#include "msvfw32_Fr.rc"
+#include "msvfw32_Hu.rc"
+#include "msvfw32_Ko.rc"
+#include "msvfw32_No.rc"
+#include "msvfw32_Pl.rc"
+#include "msvfw32_Tr.rc"
Propchange: trunk/reactos/dll/win32/msvfw32/rsrc.rc
------------------------------------------------------------------------------
svn:eol-style = native
Modified: trunk/reactos/dll/win32/msvfw32/vfw16.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvfw32/vfw16.h?…
==============================================================================
--- trunk/reactos/dll/win32/msvfw32/vfw16.h (original)
+++ trunk/reactos/dll/win32/msvfw32/vfw16.h Wed Apr 25 12:21:59 2007
@@ -13,7 +13,7 @@
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#ifndef __WINE_VFW16_H