[9140] | 1 | /* $Id: msvfw32.cpp,v 1.9 2002-08-27 08:31:48 sandervl Exp $ */
|
---|
[814] | 2 | /*
|
---|
| 3 | * Copyright 1998 Marcus Meissner
|
---|
| 4 | * Copyright 1999 Jens Wiessner
|
---|
| 5 | */
|
---|
| 6 |
|
---|
| 7 | #include <stdlib.h>
|
---|
| 8 | #include <string.h>
|
---|
| 9 | #include <odin.h>
|
---|
| 10 |
|
---|
[21494] | 11 | #define ICOM_CINTERFACE
|
---|
[4631] | 12 | ////#define strcasecmp strcmp
|
---|
[814] | 13 |
|
---|
[1012] | 14 | #include <os2win.h>
|
---|
[814] | 15 | #include "winerror.h"
|
---|
| 16 | #include "heap.h"
|
---|
| 17 | #include "resource.h"
|
---|
| 18 | #include "win.h"
|
---|
| 19 | #include "commdlg.h"
|
---|
| 20 | #include "spy.h"
|
---|
| 21 |
|
---|
| 22 | #include "wine/obj_base.h"
|
---|
| 23 | #include "wingdi.h"
|
---|
| 24 | #include "vfw.h"
|
---|
[4631] | 25 | //#include "driver.h"
|
---|
[1607] | 26 | // #include "msvfw32.h"
|
---|
[814] | 27 |
|
---|
| 28 | #include "debugtools.h"
|
---|
| 29 | #include <debugstr.h>
|
---|
[1607] | 30 | #include <heapstring.h>
|
---|
[814] | 31 |
|
---|
[1012] | 32 | DEFAULT_DEBUG_CHANNEL(msvideo)
|
---|
[814] | 33 |
|
---|
| 34 |
|
---|
[1607] | 35 | /* Stubs not included in Wine-Code*/
|
---|
| 36 |
|
---|
| 37 |
|
---|
[814] | 38 | /****************************************************************************
|
---|
[5614] | 39 | * DrawDibChangePalette [MSVFW.4]
|
---|
[814] | 40 | */
|
---|
| 41 |
|
---|
| 42 | BOOL VFWAPI DrawDibChangePalette(HANDLE /*HDRAWDIB*/ hdd, int iStart, int iLen, LPPALETTEENTRY lppe)
|
---|
| 43 | {
|
---|
[1012] | 44 | dprintf(("MSVFW32: DrawDibChangePalette not implemented\n"));
|
---|
[6386] | 45 | return TRUE;
|
---|
[814] | 46 | }
|
---|
| 47 |
|
---|
| 48 |
|
---|
| 49 | /****************************************************************************
|
---|
[6386] | 50 | * DrawDibProfileDisplay [MSVFW.11]
|
---|
[814] | 51 | */
|
---|
[6386] | 52 | DWORD VFWAPI DrawDibProfileDisplay(LPBITMAPINFOHEADER lpbi)
|
---|
[814] | 53 | {
|
---|
[6386] | 54 | dprintf(("MSVFW32: DrawDibProfileDisplay not implemented\n"));
|
---|
[814] | 55 | return TRUE;
|
---|
| 56 | }
|
---|
| 57 |
|
---|
| 58 | /****************************************************************************
|
---|
[6386] | 59 | * DrawDibTime [MSVFW.16]
|
---|
[814] | 60 | */
|
---|
[6386] | 61 | BOOL VFWAPI DrawDibTime(HANDLE /*HDRAWDIB*/ hdd, DWORD lpddtime)
|
---|
[814] | 62 | {
|
---|
[6386] | 63 | dprintf(("MSVFW32: DrawDibTime not implemented\n"));
|
---|
| 64 | return TRUE;
|
---|
[814] | 65 | }
|
---|
| 66 |
|
---|
| 67 | /****************************************************************************
|
---|
[5614] | 68 | * DrawDibGetBuffer [MSVFW.8]
|
---|
[814] | 69 | */
|
---|
| 70 | LPVOID VFWAPI DrawDibGetBuffer(HANDLE /*HDRAWDIB*/ hdd, LPBITMAPINFOHEADER lpbi, DWORD dwSize, DWORD dwFlags)
|
---|
| 71 | {
|
---|
[1012] | 72 | dprintf(("MSVFW32: DrawDibGetBuffer not implemented\n"));
|
---|
[6386] | 73 | return 0;
|
---|
[814] | 74 | }
|
---|
| 75 |
|
---|
| 76 | /****************************************************************************
|
---|
[5614] | 77 | * GetOpenFileNamePreview [MSVFW.17]
|
---|
[814] | 78 | */
|
---|
| 79 |
|
---|
| 80 | /* NO */
|
---|
| 81 |
|
---|
| 82 |
|
---|
| 83 | /****************************************************************************
|
---|
[5614] | 84 | * GetOpenFileNamePreviewA [MSVFW.18]
|
---|
[814] | 85 | */
|
---|
| 86 | BOOL VFWAPI GetOpenFileNamePreviewA(LPOPENFILENAMEA lpofn)
|
---|
| 87 | {
|
---|
[1012] | 88 | #ifdef DEBUG
|
---|
| 89 | dprintf(("MSVFW32: GetOpenFileNamePreviewA not implemented\n"));
|
---|
| 90 | #endif
|
---|
[5614] | 91 | return TRUE;
|
---|
[814] | 92 | }
|
---|
| 93 |
|
---|
| 94 |
|
---|
| 95 | /****************************************************************************
|
---|
[5614] | 96 | * GetOpenFileNamePreviewW [MSVFW.19]
|
---|
[814] | 97 | */
|
---|
| 98 | BOOL VFWAPI GetOpenFileNamePreviewW(LPOPENFILENAMEW lpofn)
|
---|
| 99 | {
|
---|
[1012] | 100 | #ifdef DEBUG
|
---|
| 101 | dprintf(("MSVFW32: GetOpenFileNamePreviewW not implemented\n"));
|
---|
| 102 | #endif
|
---|
[5614] | 103 | return TRUE;
|
---|
[814] | 104 | }
|
---|
| 105 |
|
---|
| 106 |
|
---|
| 107 | /****************************************************************************
|
---|
[5614] | 108 | * GetSaveFileNamePreviewA [MSVFW.20]
|
---|
[814] | 109 | */
|
---|
| 110 | BOOL VFWAPI GetSaveFileNamePreviewA(LPOPENFILENAMEA lpofn)
|
---|
| 111 | {
|
---|
[1012] | 112 | #ifdef DEBUG
|
---|
| 113 | dprintf(("MSVFW32: GetSaveFileNamePreviewA not implemented\n"));
|
---|
| 114 | #endif
|
---|
[5614] | 115 | return TRUE;
|
---|
[814] | 116 | }
|
---|
| 117 |
|
---|
| 118 |
|
---|
| 119 | /****************************************************************************
|
---|
[5614] | 120 | * GetSaveFileNamePreviewW [MSVFW.21]
|
---|
[814] | 121 | */
|
---|
| 122 | BOOL VFWAPI GetSaveFileNamePreviewW(LPOPENFILENAMEW lpofn)
|
---|
| 123 | {
|
---|
[1012] | 124 | #ifdef DEBUG
|
---|
| 125 | dprintf(("MSVFW32: GetSaveFileNamePreviewW not implemented\n"));
|
---|
| 126 | #endif
|
---|
[5614] | 127 | return TRUE;
|
---|
[814] | 128 | }
|
---|
| 129 |
|
---|
| 130 |
|
---|
| 131 | /****************************************************************************
|
---|
[5614] | 132 | * ICCompressorChoose [MSVFW.24]
|
---|
[814] | 133 | */
|
---|
| 134 | BOOL VFWAPI ICCompressorChoose(
|
---|
| 135 | HWND hwnd, // parent window for dialog
|
---|
| 136 | UINT uiFlags, // flags
|
---|
| 137 | LPVOID pvIn, // input format (optional)
|
---|
| 138 | LPVOID lpData, // input data (optional)
|
---|
| 139 | PCOMPVARS pc, // data about the compressor/dlg
|
---|
| 140 | LPSTR lpszTitle) // dialog title (optional)
|
---|
| 141 | {
|
---|
[1012] | 142 | #ifdef DEBUG
|
---|
| 143 | dprintf(("MSVFW32: ICCompressorChoose not implemented\n"));
|
---|
| 144 | #endif
|
---|
[5614] | 145 | return TRUE;
|
---|
[814] | 146 | }
|
---|
| 147 |
|
---|
| 148 |
|
---|
| 149 | /****************************************************************************
|
---|
[5614] | 150 | * ICCompressorFree [MSVFW.25]
|
---|
[814] | 151 | */
|
---|
| 152 | void VFWAPI ICCompressorFree(PCOMPVARS pc)
|
---|
| 153 | {
|
---|
[1012] | 154 | #ifdef DEBUG
|
---|
| 155 | dprintf(("MSVFW32: ICCompressorFree not implemented\n"));
|
---|
| 156 | #endif
|
---|
[5614] | 157 | return;
|
---|
[814] | 158 | }
|
---|
| 159 |
|
---|
| 160 |
|
---|
| 161 | /****************************************************************************
|
---|
[5614] | 162 | * ICInstall [MSVFW.34]
|
---|
[814] | 163 | */
|
---|
| 164 | BOOL VFWAPI ICInstall(DWORD fccType, DWORD fccHandler, LPARAM lParam, LPSTR szDesc, UINT wFlags)
|
---|
[3931] | 165 | {
|
---|
[1012] | 166 | #ifdef DEBUG
|
---|
| 167 | dprintf(("MSVFW32: ICInstall not implemented\n"));
|
---|
| 168 | #endif
|
---|
[5614] | 169 | return TRUE;
|
---|
[814] | 170 | }
|
---|
| 171 |
|
---|
| 172 |
|
---|
| 173 | /**************************************************************************
|
---|
[5614] | 174 | * ICRemove [MSVFW.39]
|
---|
[814] | 175 | */
|
---|
| 176 | BOOL VFWAPI ICRemove(DWORD fccType, DWORD fccHandler, UINT wFlags)
|
---|
[3931] | 177 | {
|
---|
[1012] | 178 | #ifdef DEBUG
|
---|
| 179 | dprintf(("MSVFW32: ICRemove not implemented\n"));
|
---|
| 180 | #endif
|
---|
[5614] | 181 | return TRUE;
|
---|
[814] | 182 | }
|
---|
| 183 |
|
---|
| 184 |
|
---|
| 185 | /**************************************************************************
|
---|
[5614] | 186 | * ICSeqCompressFrame [MSVFW.41]
|
---|
[814] | 187 | */
|
---|
| 188 | LPVOID VFWAPI ICSeqCompressFrame(
|
---|
| 189 | PCOMPVARS pc, // set by ICCompressorChoose
|
---|
| 190 | UINT uiFlags, // flags
|
---|
| 191 | LPVOID lpBits, // input DIB bits
|
---|
[5614] | 192 | BOOL *pfKey, // did it end up being a key frame?
|
---|
| 193 | LONG *plSize) // size to compress to/of returned image
|
---|
[814] | 194 | {
|
---|
[1012] | 195 | #ifdef DEBUG
|
---|
| 196 | dprintf(("MSVFW32: ICSeqCompressFrame not implemented\n"));
|
---|
| 197 | #endif
|
---|
[5614] | 198 | return 0;
|
---|
[814] | 199 | }
|
---|
| 200 |
|
---|
| 201 |
|
---|
| 202 | /**************************************************************************
|
---|
[5614] | 203 | * ICSeqCompressFrameEnd [MSVFW.42]
|
---|
[814] | 204 | */
|
---|
| 205 | BOOL VFWAPI ICSeqCompressFrameStart(PCOMPVARS pc, LPBITMAPINFO lpbiIn)
|
---|
| 206 | {
|
---|
[1012] | 207 | #ifdef DEBUG
|
---|
| 208 | dprintf(("MSVFW32: ICSeqCompressFrameEnd not implemented\n"));
|
---|
| 209 | #endif
|
---|
[5614] | 210 | return TRUE;
|
---|
[814] | 211 | }
|
---|
| 212 |
|
---|
| 213 |
|
---|
| 214 | /**************************************************************************
|
---|
[5614] | 215 | * ICSeqCompressFrameStart [MSVFW.43]
|
---|
[814] | 216 | */
|
---|
| 217 | void VFWAPI ICSeqCompressFrameEnd(PCOMPVARS pc)
|
---|
| 218 | {
|
---|
[1012] | 219 | #ifdef DEBUG
|
---|
| 220 | dprintf(("MSVFW32: ICSeqCompressFrameStart not implemented\n"));
|
---|
| 221 | #endif
|
---|
[5614] | 222 | return;
|
---|
[814] | 223 | }
|
---|
| 224 |
|
---|
| 225 |
|
---|
| 226 | /**************************************************************************
|
---|
[5614] | 227 | * MCIWndRegisterClass [MSVFW.47]
|
---|
[814] | 228 | */
|
---|
| 229 | BOOL VFWAPIV MCIWndRegisterClass()
|
---|
| 230 | {
|
---|
[1012] | 231 | #ifdef DEBUG
|
---|
| 232 | dprintf(("MSVFW32: MCIWndRegisterClass not implemented\n"));
|
---|
| 233 | #endif
|
---|
[5614] | 234 | return TRUE;
|
---|
[814] | 235 | }
|
---|