40static const WCHAR mciWndClassW[] = {
'M',
'C',
'I',
'W',
'n',
'd',
'C',
'l',
'a',
's',
's',0};
41static const WCHAR mciWndNameW[] = {
'M',
'C',
'I',
'W',
'n',
'd',
'C',
'r',
'e',
'a',
't',
'e',
42 'W',
'i',
'n',
'e',
'I',
'n',
't',
'e',
'r',
'n',
'a',
'l', 0};
65#define CTL_PLAYSTOP 0x3200
66#define CTL_MENU 0x3201
67#define CTL_TRACKBAR 0x3202
150 if (new_mode != mwi->
mode)
152 mwi->
mode = new_mode;
190 static const WCHAR no_deviceW[] = {
'N',
'o',
' ',
'D',
'e',
'v',
'i',
'c',
'e',0};
211 static const WCHAR l_braceW[] = {
'(',0};
228 static const WCHAR dashW[] = {
' ',
'-',
' ',0};
243 static const WCHAR r_braceW[] = {
')',0};
255 static const WCHAR buttonW[] = {
'b',
'u',
't',
't',
'o',
'n',0};
257 mwi =
calloc(1,
sizeof(*mwi));
265 mwi->
dwStyle &= ~MCIWNDF_SHOWALL;
277 static const WCHAR menuW[] = {
'M',
'e',
'n',
'u',0};
281 TRACE(
"Get Button2: %p\n", hChld);
287 static const WCHAR playW[] = {
'P',
'l',
'a',
'y',0};
292 TRACE(
"Get Button1: %p\n", hChld);
300 TRACE(
"Get status: %p\n", hChld);
306 if (
cs->lpCreateParams)
344 TRACE(
"Cannot do much...\n");
551 static const WCHAR formatW[] = {
'%',
'd',0};
552 static const WCHAR mci32W[] = {
'm',
'c',
'i',
'3',
'2',0};
553 static const WCHAR system_iniW[] = {
's',
'y',
's',
't',
'e',
'm',
'.',
'i',
'n',
'i',0};
560 goto end_of_mci_open;
583 static const WCHAR caption[] = {
'M',
'C',
'I',
' ',
'E',
'r',
'r',
'o',
'r',0};
589 goto end_of_mci_open;
605 goto end_of_mci_open;
627 goto end_of_mci_open;
666 TRACE(
"MCIWNDM_GETDEVICEID\n");
670 TRACE(
"MCIWNDM_GETALIAS\n");
791 TRACE(
"MCIWNDM_GETPOSITION\n");
807 static const WCHAR formatW[] = {
's',
't',
'a',
't',
'u',
's',
' ',
'%',
'd',
' ',
'p',
'o',
's',
'i',
't',
'i',
'o',
'n',0};
832 TRACE(
"MCIWNDM_GETMODE\n");
851 static const WCHAR formatW[] = {
's',
't',
'a',
't',
'u',
's',
' ',
'%',
'd',
' ',
'm',
'o',
'd',
'e',0};
935#ifdef MCI_VCR_PLAY_REVERSE
937 flags |= MCI_VCR_PLAY_REVERSE;
993 static const WCHAR formatW[] = {
'%',
'd',
' ',0};
1034 TRACE(
"MCIWNDM_SETTIMERS active %d ms, inactive %d ms\n", (
int)
wParam, (
int)
lParam);
1040 TRACE(
"MCIWNDM_SETACTIVETIMER %d ms\n", (
int)
wParam);
1045 TRACE(
"MCIWNDM_SETINACTIVETIMER %d ms\n", (
int)
wParam);
1067 TRACE(
"MCIWNDM_GETSTYLES: %08lx\n", mwi->
dwStyle & 0xffff);
1103 TRACE(
"MCIWNDM_VALIDATEMEDIA\n");
1145 static const WCHAR formatW[] = {
's',
't',
'a',
't',
'u',
's',
' ',
'%',
'd',
' ',
't',
'i',
'm',
'e',
' ',
'f',
'o',
'r',
'm',
'a',
't',0};
1176 static const WCHAR formatW[] = {
's',
'e',
't',
' ',
'%',
'd',
' ',
't',
'i',
'm',
'e',
' ',
'f',
'o',
'r',
'm',
'a',
't',
' ',0};
1204 TRACE(
"MCIWNDM_CAN_PLAY\n");
1210 TRACE(
"MCIWNDM_CAN_RECORD\n");
1216 TRACE(
"MCIWNDM_CAN_SAVE\n");
1222 TRACE(
"MCIWNDM_CAN_EJECT\n");
1228 TRACE(
"MCIWNDM_CAN_WINDOW\n");
1239 TRACE(
"MCIWNDM_CAN_CONFIG\n");
1265 TRACE(
"MCIWNDM_GETZOOM: %d\n", mwi->
zoom);
1272 TRACE(
"MCIWNDM_EJECT\n");
1296 FIXME(
"support for MCIWNDM_ message WM_USER+%d not implemented\n", wMsg -
WM_USER);
1413 FIXME(
"support for MCI_ command %04x not implemented\n", wMsg);
1419 FIXME(
"support for MCIWNDM_ message WM_USER+%d not implemented\n", wMsg -
WM_USER);
static const char * wine_dbgstr_rect(const RECT *prc)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static const WCHAR nameW[]
static const TCHAR empty_str[]
BOOL WINAPI InitCommonControlsEx(const INITCOMMONCONTROLSEX *lpInitCtrls)
#define MCI_DGV_PUT_DESTINATION
#define MCI_DGV_PUT_SOURCE
#define MCI_DGV_UPDATE_HDC
#define MCI_DGV_UPDATE_PAINT
#define MCI_DGV_WINDOW_HWND
#define MCI_DGV_WHERE_SOURCE
#define MCI_DGV_PLAY_REVERSE
#define MCI_DGV_WHERE_DESTINATION
static __inline const char * debugstr_an(const char *s, int n)
#define WideCharToMultiByte
HMODULE WINAPI GetModuleHandleW(LPCWSTR lpModuleName)
INT WINAPI GetPrivateProfileStringW(LPCWSTR section, LPCWSTR entry, LPCWSTR def_val, LPWSTR buffer, UINT len, LPCWSTR filename)
int WINAPI lstrcmpW(LPCWSTR str1, LPCWSTR str2)
_ACRTIMP size_t __cdecl wcslen(const wchar_t *)
static wchar_t * wcsdup(const wchar_t *str)
HWND VFWAPIV MCIWndCreateA(HWND hwndParent, HINSTANCE hInstance, DWORD dwStyle, LPCSTR szFile)
HWND VFWAPIV MCIWndCreateW(HWND hwndParent, HINSTANCE hInstance, DWORD dwStyle, LPCWSTR szFile)
BOOL VFWAPIV MCIWndRegisterClass(void)
static LRESULT mci_get_devcaps(MCIWndInfo *mwi, UINT cap)
static void MCIWND_UpdateState(MCIWndInfo *mwi)
static void MCIWND_notify_size(MCIWndInfo *mwi)
static void MCIWND_notify_mode(MCIWndInfo *mwi)
static void MCIWND_notify_error(MCIWndInfo *mwi)
static LRESULT MCIWND_Create(HWND hWnd, LPCREATESTRUCTW cs)
static LRESULT MCIWND_Command(MCIWndInfo *mwi, WPARAM wParam, LPARAM lParam)
static LRESULT WINAPI MCIWndProc(HWND hWnd, UINT wMsg, WPARAM wParam, LPARAM lParam)
static const WCHAR mciWndNameW[]
static LRESULT MCIWND_KeyDown(MCIWndInfo *mwi, UINT key)
static void MCIWND_notify_pos(MCIWndInfo *mwi)
static void MCIWND_notify_media(MCIWndInfo *mwi)
static MCIERROR mci_generic_command(MCIWndInfo *mwi, UINT cmd)
static const WCHAR mciWndClassW[]
static void MCIWND_ToggleState(MCIWndInfo *mwi)
LRESULT WINAPI SendDriverMessage(HDRVR hDriver, UINT msg, LPARAM lParam1, LPARAM lParam2)
HDRVR WINAPI OpenDriver(LPCWSTR lpDriverName, LPCWSTR lpSectionName, LPARAM lParam)
LRESULT WINAPI CloseDriver(HDRVR hDrvr, LPARAM lParam1, LPARAM lParam2)
DWORD WINAPI mciSendCommandA(MCIDEVICEID wDevID, UINT wMsg, DWORD_PTR dwParam1, DWORD_PTR dwParam2)
DWORD WINAPI mciSendStringA(LPCSTR lpstrCommand, LPSTR lpstrRet, UINT uRetLen, HWND hwndCallback)
DWORD WINAPI mciSendCommandW(MCIDEVICEID wDevID, UINT wMsg, DWORD_PTR dwParam1, DWORD_PTR dwParam2)
BOOL WINAPI mciGetErrorStringA(MCIERROR dwError, LPSTR lpstrBuffer, UINT uLength)
DWORD WINAPI mciSendStringW(LPCWSTR lpstrCommand, LPWSTR lpstrRet, UINT uRetLen, HWND hwndCallback)
BOOL WINAPI mciGetErrorStringW(MCIERROR wError, LPWSTR lpstrBuffer, UINT uLength)
GLuint GLsizei GLsizei * length
static const WCHAR buttonW[]
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
#define memcpy(s1, s2, n)
#define MCI_DEVTYPE_VIDEODISC
#define MCI_GETDEVCAPS_CAN_SAVE
#define MCI_STATUS_POSITION
#define DRV_QUERYCONFIGURE
#define MCI_GETDEVCAPS_CAN_RECORD
#define MCI_GETDEVCAPS_DEVICE_TYPE
#define MCI_DEVTYPE_ANIMATION
#define MCI_VD_PLAY_REVERSE
#define MCI_SET_DOOR_OPEN
#define MCI_GETDEVCAPS_CAN_PLAY
#define MCI_GETDEVCAPS_CAN_EJECT
#define MCI_DEVTYPE_DIGITAL_VIDEO
#define MCI_GETDEVCAPS_ITEM
#define MCI_STATUS_LENGTH
#define MCI_SYSINFO_INSTALLNAME
#define MCI_ANIM_PLAY_REVERSE
#define MCI_DEVTYPE_OVERLAY
#define MCI_SEEK_TO_START
#define MCI_MODE_NOT_READY
#define MCI_STATUS_TIME_FORMAT
static const WCHAR menuW[]
static const WCHAR stringW[]
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
INT WINAPI MulDiv(INT nNumber, INT nNumerator, INT nDenominator)
static const WCHAR spaceW[]
NTSYSAPI BOOLEAN NTAPI RtlCreateUnicodeStringFromAsciiz(_Out_ PUNICODE_STRING Destination, _In_ PCSZ Source)
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
#define GetWindowLongPtrW
LRESULT WINAPI DefWindowProcW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI AdjustWindowRect(_Inout_ LPRECT, _In_ DWORD, _In_ BOOL)
int WINAPIV wsprintfW(_Out_ LPWSTR, _In_ _Printf_format_string_ LPCWSTR,...)
BOOL WINAPI SetWindowPos(_In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
LONG WINAPI GetWindowLongW(_In_ HWND, _In_ int)
ATOM WINAPI RegisterClassW(_In_ CONST WNDCLASSW *)
HCURSOR WINAPI SetCursor(_In_opt_ HCURSOR)
LRESULT WINAPI DefMDIChildProcW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
HCURSOR WINAPI LoadCursorW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
int WINAPI MessageBoxW(_In_opt_ HWND hWnd, _In_opt_ LPCWSTR lpText, _In_opt_ LPCWSTR lpCaption, _In_ UINT uType)
int WINAPIV wsprintfA(_Out_ LPSTR, _In_ _Printf_format_string_ LPCSTR,...)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
UINT_PTR WINAPI SetTimer(_In_opt_ HWND, _In_ UINT_PTR, _In_ UINT, _In_opt_ TIMERPROC)
LRESULT WINAPI SendDlgItemMessageW(_In_ HWND, _In_ int, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI SetWindowTextW(_In_ HWND, _In_opt_ LPCWSTR)
BOOL WINAPI IsWindowUnicode(_In_ HWND)
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
HWND WINAPI CreateWindowExW(_In_ DWORD dwExStyle, _In_opt_ LPCWSTR lpClassName, _In_opt_ LPCWSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
BOOL WINAPI EndPaint(_In_ HWND, _In_ const PAINTSTRUCT *)
#define MB_ICONEXCLAMATION
HWND WINAPI GetWindow(_In_ HWND, _In_ UINT)
BOOL WINAPI InvalidateRect(_In_opt_ HWND, _In_opt_ LPCRECT, _In_ BOOL)
HDC WINAPI BeginPaint(_In_ HWND, _Out_ LPPAINTSTRUCT)
BOOL WINAPI KillTimer(_In_opt_ HWND, _In_ UINT_PTR)
#define SetWindowLongPtrW
BOOL WINAPI DestroyWindow(_In_ HWND)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
static HRESULT return_string(VARIANT *res, const WCHAR *str)
#define MCIWNDM_GETLENGTH
#define MCIWNDM_GETPOSITIONA
#define MCIWNDM_GETTIMEFORMATW
#define MCIWNDM_GETERRORA
#define MCIWNDM_GETDEVICEW
#define MCIWNDM_GETPOSITIONW
#define MCIWNDM_GETPALETTE
#define MCIWNDM_SETACTIVETIMER
#define MCIWNDM_GET_SOURCE
#define MCIWNDM_CHANGESTYLES
#define MCIWNDM_PLAYREVERSE
#define MCIWNDM_NOTIFYSIZE
#define MCIWNDM_PALETTEKICK
#define MCIWNDF_NOTIFYMODE
#define MCIWNDM_SETVOLUME
#define MCIWNDM_GETSTYLES
#define MCIWNDM_GETFILENAMEW
#define MCIWNDM_CAN_WINDOW
#define MCIWNDM_CAN_RECORD
#define MCIWNDM_NOTIFYPOS
#define MCIWNDM_SETREPEAT
#define MCIWNDM_GETACTIVETIMER
#define MCIWNDF_NOERRORDLG
#define MCIWNDM_GETERRORW
#define MCIWNDM_GETINACTIVETIMER
#define MCIWNDF_NOAUTOSIZEMOVIE
#define MCIWNDF_NOTIFYMEDIAA
#define MCIWNDM_NOTIFYMEDIA
#define MCIWNDF_NOTIFYMEDIAW
#define MCIWNDF_NOTIFYPOS
#define MCIWNDF_NOAUTOSIZEWINDOW
#define MCIWNDM_GETTIMEFORMATA
#define MCIWNDM_SETINACTIVETIMER
#define MCIWNDF_NOPLAYBAR
#define MCIWNDM_GETDEVICEA
#define MCIWNDM_CAN_CONFIG
#define MCIWNDM_OPENINTERFACE
#define MCIWNDM_NOTIFYERROR
#define MCIWNDM_SETTIMEFORMATA
#define MCIWNDM_SETTIMEFORMATW
#define MCIWNDM_RETURNSTRINGA
#define MCIWNDM_CAN_EJECT
#define MCIWNDF_NOTIFYSIZE
#define MCIWNDM_GETVOLUME
#define MCIWNDM_GETFILENAMEA
#define MCIWNDM_GETDEVICEID
#define MCIWNDM_PUT_SOURCE
#define MCIWNDM_SENDSTRINGA
#define MCIWNDM_VALIDATEMEDIA
#define MCIWNDM_GETREPEAT
#define MCIWNDF_NOTIFYANSI
#define MCIWNDM_SETTIMERS
#define MCIWNDM_RETURNSTRINGW
#define MCIWNDM_SENDSTRINGW
#define MCIWNDF_NOTIFYERROR
#define MCIWNDM_NOTIFYMODE
#define MCIWNDM_SETPALETTE
DWORD WINAPI GetLastError(void)
#define ERROR_CLASS_ALREADY_EXISTS