| 1 | /* $Id: msvfw32.cpp,v 1.8 2001-07-21 17:39:44 sandervl Exp $ */
|
|---|
| 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 |
|
|---|
| 11 | #define ICOM_CINTERFACE 1
|
|---|
| 12 | ////#define strcasecmp strcmp
|
|---|
| 13 |
|
|---|
| 14 | #include <os2win.h>
|
|---|
| 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"
|
|---|
| 25 | //#include "driver.h"
|
|---|
| 26 | // #include "msvfw32.h"
|
|---|
| 27 |
|
|---|
| 28 | #include "debugtools.h"
|
|---|
| 29 | #include <debugstr.h>
|
|---|
| 30 | #include <heapstring.h>
|
|---|
| 31 |
|
|---|
| 32 | DEFAULT_DEBUG_CHANNEL(msvideo)
|
|---|
| 33 |
|
|---|
| 34 |
|
|---|
| 35 | /* Stubs not included in Wine-Code*/
|
|---|
| 36 |
|
|---|
| 37 |
|
|---|
| 38 | /****************************************************************************
|
|---|
| 39 | * DrawDibChangePalette [MSVFW.4]
|
|---|
| 40 | */
|
|---|
| 41 |
|
|---|
| 42 | BOOL VFWAPI DrawDibChangePalette(HANDLE /*HDRAWDIB*/ hdd, int iStart, int iLen, LPPALETTEENTRY lppe)
|
|---|
| 43 | {
|
|---|
| 44 | dprintf(("MSVFW32: DrawDibChangePalette not implemented\n"));
|
|---|
| 45 | return TRUE;
|
|---|
| 46 | }
|
|---|
| 47 |
|
|---|
| 48 |
|
|---|
| 49 | /****************************************************************************
|
|---|
| 50 | * DrawDibProfileDisplay [MSVFW.11]
|
|---|
| 51 | */
|
|---|
| 52 | DWORD VFWAPI DrawDibProfileDisplay(LPBITMAPINFOHEADER lpbi)
|
|---|
| 53 | {
|
|---|
| 54 | dprintf(("MSVFW32: DrawDibProfileDisplay not implemented\n"));
|
|---|
| 55 | return TRUE;
|
|---|
| 56 | }
|
|---|
| 57 |
|
|---|
| 58 | /****************************************************************************
|
|---|
| 59 | * DrawDibTime [MSVFW.16]
|
|---|
| 60 | */
|
|---|
| 61 | BOOL VFWAPI DrawDibTime(HANDLE /*HDRAWDIB*/ hdd, DWORD lpddtime)
|
|---|
| 62 | {
|
|---|
| 63 | dprintf(("MSVFW32: DrawDibTime not implemented\n"));
|
|---|
| 64 | return TRUE;
|
|---|
| 65 | }
|
|---|
| 66 |
|
|---|
| 67 | /****************************************************************************
|
|---|
| 68 | * DrawDibGetBuffer [MSVFW.8]
|
|---|
| 69 | */
|
|---|
| 70 | LPVOID VFWAPI DrawDibGetBuffer(HANDLE /*HDRAWDIB*/ hdd, LPBITMAPINFOHEADER lpbi, DWORD dwSize, DWORD dwFlags)
|
|---|
| 71 | {
|
|---|
| 72 | dprintf(("MSVFW32: DrawDibGetBuffer not implemented\n"));
|
|---|
| 73 | return 0;
|
|---|
| 74 | }
|
|---|
| 75 |
|
|---|
| 76 | /****************************************************************************
|
|---|
| 77 | * GetOpenFileNamePreview [MSVFW.17]
|
|---|
| 78 | */
|
|---|
| 79 |
|
|---|
| 80 | /* NO */
|
|---|
| 81 |
|
|---|
| 82 |
|
|---|
| 83 | /****************************************************************************
|
|---|
| 84 | * GetOpenFileNamePreviewA [MSVFW.18]
|
|---|
| 85 | */
|
|---|
| 86 | BOOL VFWAPI GetOpenFileNamePreviewA(LPOPENFILENAMEA lpofn)
|
|---|
| 87 | {
|
|---|
| 88 | #ifdef DEBUG
|
|---|
| 89 | dprintf(("MSVFW32: GetOpenFileNamePreviewA not implemented\n"));
|
|---|
| 90 | #endif
|
|---|
| 91 | return TRUE;
|
|---|
| 92 | }
|
|---|
| 93 |
|
|---|
| 94 |
|
|---|
| 95 | /****************************************************************************
|
|---|
| 96 | * GetOpenFileNamePreviewW [MSVFW.19]
|
|---|
| 97 | */
|
|---|
| 98 | BOOL VFWAPI GetOpenFileNamePreviewW(LPOPENFILENAMEW lpofn)
|
|---|
| 99 | {
|
|---|
| 100 | #ifdef DEBUG
|
|---|
| 101 | dprintf(("MSVFW32: GetOpenFileNamePreviewW not implemented\n"));
|
|---|
| 102 | #endif
|
|---|
| 103 | return TRUE;
|
|---|
| 104 | }
|
|---|
| 105 |
|
|---|
| 106 |
|
|---|
| 107 | /****************************************************************************
|
|---|
| 108 | * GetSaveFileNamePreviewA [MSVFW.20]
|
|---|
| 109 | */
|
|---|
| 110 | BOOL VFWAPI GetSaveFileNamePreviewA(LPOPENFILENAMEA lpofn)
|
|---|
| 111 | {
|
|---|
| 112 | #ifdef DEBUG
|
|---|
| 113 | dprintf(("MSVFW32: GetSaveFileNamePreviewA not implemented\n"));
|
|---|
| 114 | #endif
|
|---|
| 115 | return TRUE;
|
|---|
| 116 | }
|
|---|
| 117 |
|
|---|
| 118 |
|
|---|
| 119 | /****************************************************************************
|
|---|
| 120 | * GetSaveFileNamePreviewW [MSVFW.21]
|
|---|
| 121 | */
|
|---|
| 122 | BOOL VFWAPI GetSaveFileNamePreviewW(LPOPENFILENAMEW lpofn)
|
|---|
| 123 | {
|
|---|
| 124 | #ifdef DEBUG
|
|---|
| 125 | dprintf(("MSVFW32: GetSaveFileNamePreviewW not implemented\n"));
|
|---|
| 126 | #endif
|
|---|
| 127 | return TRUE;
|
|---|
| 128 | }
|
|---|
| 129 |
|
|---|
| 130 |
|
|---|
| 131 | /****************************************************************************
|
|---|
| 132 | * ICCompressorChoose [MSVFW.24]
|
|---|
| 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 | {
|
|---|
| 142 | #ifdef DEBUG
|
|---|
| 143 | dprintf(("MSVFW32: ICCompressorChoose not implemented\n"));
|
|---|
| 144 | #endif
|
|---|
| 145 | return TRUE;
|
|---|
| 146 | }
|
|---|
| 147 |
|
|---|
| 148 |
|
|---|
| 149 | /****************************************************************************
|
|---|
| 150 | * ICCompressorFree [MSVFW.25]
|
|---|
| 151 | */
|
|---|
| 152 | void VFWAPI ICCompressorFree(PCOMPVARS pc)
|
|---|
| 153 | {
|
|---|
| 154 | #ifdef DEBUG
|
|---|
| 155 | dprintf(("MSVFW32: ICCompressorFree not implemented\n"));
|
|---|
| 156 | #endif
|
|---|
| 157 | return;
|
|---|
| 158 | }
|
|---|
| 159 |
|
|---|
| 160 |
|
|---|
| 161 | /****************************************************************************
|
|---|
| 162 | * ICImageCompress [MSVFW.31]
|
|---|
| 163 | */
|
|---|
| 164 | HANDLE VFWAPI ICImageCompress(
|
|---|
| 165 | HIC hic, // compressor to use
|
|---|
| 166 | UINT uiFlags, // flags (none yet)
|
|---|
| 167 | LPBITMAPINFO lpbiIn, // format to compress from
|
|---|
| 168 | LPVOID lpBits, // data to compress
|
|---|
| 169 | LPBITMAPINFO lpbiOut, // compress to this (NULL ==> default)
|
|---|
| 170 | LONG lQuality, // quality to use
|
|---|
| 171 | LONG * plSize) // compress to this size (0=whatever)
|
|---|
| 172 | {
|
|---|
| 173 | #ifdef DEBUG
|
|---|
| 174 | dprintf(("MSVFW32: ICImageCompress not implemented\n"));
|
|---|
| 175 | #endif
|
|---|
| 176 | return 0;
|
|---|
| 177 | }
|
|---|
| 178 |
|
|---|
| 179 |
|
|---|
| 180 | /****************************************************************************
|
|---|
| 181 | * ICImageDecompress [MSVFW.32]
|
|---|
| 182 | */
|
|---|
| 183 | HANDLE VFWAPI ICImageDecompress(
|
|---|
| 184 | HIC hic, // compressor to use
|
|---|
| 185 | UINT uiFlags, // flags (none yet)
|
|---|
| 186 | LPBITMAPINFO lpbiIn, // format to decompress from
|
|---|
| 187 | LPVOID lpBits, // data to decompress
|
|---|
| 188 | LPBITMAPINFO lpbiOut) // decompress to this (NULL ==> default)
|
|---|
| 189 | {
|
|---|
| 190 | #ifdef DEBUG
|
|---|
| 191 | dprintf(("MSVFW32: ICImageDecompress not implemented\n"));
|
|---|
| 192 | #endif
|
|---|
| 193 | return 0;
|
|---|
| 194 | }
|
|---|
| 195 |
|
|---|
| 196 |
|
|---|
| 197 | /****************************************************************************
|
|---|
| 198 | * ICInstall [MSVFW.34]
|
|---|
| 199 | */
|
|---|
| 200 | BOOL VFWAPI ICInstall(DWORD fccType, DWORD fccHandler, LPARAM lParam, LPSTR szDesc, UINT wFlags)
|
|---|
| 201 | {
|
|---|
| 202 | #ifdef DEBUG
|
|---|
| 203 | dprintf(("MSVFW32: ICInstall not implemented\n"));
|
|---|
| 204 | #endif
|
|---|
| 205 | return TRUE;
|
|---|
| 206 | }
|
|---|
| 207 |
|
|---|
| 208 |
|
|---|
| 209 | /**************************************************************************
|
|---|
| 210 | * ICRemove [MSVFW.39]
|
|---|
| 211 | */
|
|---|
| 212 | BOOL VFWAPI ICRemove(DWORD fccType, DWORD fccHandler, UINT wFlags)
|
|---|
| 213 | {
|
|---|
| 214 | #ifdef DEBUG
|
|---|
| 215 | dprintf(("MSVFW32: ICRemove not implemented\n"));
|
|---|
| 216 | #endif
|
|---|
| 217 | return TRUE;
|
|---|
| 218 | }
|
|---|
| 219 |
|
|---|
| 220 |
|
|---|
| 221 | /**************************************************************************
|
|---|
| 222 | * ICSeqCompressFrame [MSVFW.41]
|
|---|
| 223 | */
|
|---|
| 224 | LPVOID VFWAPI ICSeqCompressFrame(
|
|---|
| 225 | PCOMPVARS pc, // set by ICCompressorChoose
|
|---|
| 226 | UINT uiFlags, // flags
|
|---|
| 227 | LPVOID lpBits, // input DIB bits
|
|---|
| 228 | BOOL *pfKey, // did it end up being a key frame?
|
|---|
| 229 | LONG *plSize) // size to compress to/of returned image
|
|---|
| 230 | {
|
|---|
| 231 | #ifdef DEBUG
|
|---|
| 232 | dprintf(("MSVFW32: ICSeqCompressFrame not implemented\n"));
|
|---|
| 233 | #endif
|
|---|
| 234 | return 0;
|
|---|
| 235 | }
|
|---|
| 236 |
|
|---|
| 237 |
|
|---|
| 238 | /**************************************************************************
|
|---|
| 239 | * ICSeqCompressFrameEnd [MSVFW.42]
|
|---|
| 240 | */
|
|---|
| 241 | BOOL VFWAPI ICSeqCompressFrameStart(PCOMPVARS pc, LPBITMAPINFO lpbiIn)
|
|---|
| 242 | {
|
|---|
| 243 | #ifdef DEBUG
|
|---|
| 244 | dprintf(("MSVFW32: ICSeqCompressFrameEnd not implemented\n"));
|
|---|
| 245 | #endif
|
|---|
| 246 | return TRUE;
|
|---|
| 247 | }
|
|---|
| 248 |
|
|---|
| 249 |
|
|---|
| 250 | /**************************************************************************
|
|---|
| 251 | * ICSeqCompressFrameStart [MSVFW.43]
|
|---|
| 252 | */
|
|---|
| 253 | void VFWAPI ICSeqCompressFrameEnd(PCOMPVARS pc)
|
|---|
| 254 | {
|
|---|
| 255 | #ifdef DEBUG
|
|---|
| 256 | dprintf(("MSVFW32: ICSeqCompressFrameStart not implemented\n"));
|
|---|
| 257 | #endif
|
|---|
| 258 | return;
|
|---|
| 259 | }
|
|---|
| 260 |
|
|---|
| 261 |
|
|---|
| 262 | /**************************************************************************
|
|---|
| 263 | * MCIWndRegisterClass [MSVFW.47]
|
|---|
| 264 | */
|
|---|
| 265 | BOOL VFWAPIV MCIWndRegisterClass()
|
|---|
| 266 | {
|
|---|
| 267 | #ifdef DEBUG
|
|---|
| 268 | dprintf(("MSVFW32: MCIWndRegisterClass not implemented\n"));
|
|---|
| 269 | #endif
|
|---|
| 270 | return TRUE;
|
|---|
| 271 | }
|
|---|