#include "wx/wx.h"
#endif
-#if defined(__WINDOWS__) && !defined(__GNUWIN32__)
+#if defined(__WINDOWS__) && !defined(__MINGW32__) && !defined(__WATCOMC__) && !defined(__CYGWIN__)
+// versions of Open Watcom and MinGW tested against this source does not
+// deliver "digitalv.h" required in this feature
#ifdef __BORLANDC__
#pragma hdrstop
: wxVideoBaseDriver(str)
{
m_internal = new wxVIDWinternal;
- m_remove_file = TRUE;
- m_filename = wxGetTempFileName("wxvid");
- m_paused = FALSE;
- m_stopped = TRUE;
+ m_remove_file = true;
+ m_filename = wxGetTempFileName(_T("wxvid"));
+ m_paused = false;
+ m_stopped = true;
m_frameRate = 1.0;
wxFileOutputStream temp_file(m_filename);
: wxVideoBaseDriver(filename)
{
m_internal = new wxVIDWinternal;
- m_remove_file = FALSE;
+ m_remove_file = false;
m_filename = filename;
- m_paused = FALSE;
- m_stopped = TRUE;
+ m_paused = false;
+ m_stopped = true;
m_frameRate = 1.0;
OpenFile();
}
MCI_DGV_OPEN_PARMS openStruct;
MCI_DGV_SET_PARMS setStruct;
MCI_STATUS_PARMS statusStruct;
- DWORD ret;
- openStruct.lpstrDeviceType = "avivideo";
- openStruct.lpstrElementName = (LPSTR)(m_filename.mb_str());
+ openStruct.lpstrDeviceType = _T("avivideo");
+ openStruct.lpstrElementName = (wxChar *)m_filename.c_str();
openStruct.hWndParent = 0;
- ret = mciSendCommand(0, MCI_OPEN,
- MCI_OPEN_ELEMENT|MCI_DGV_OPEN_PARENT|MCI_OPEN_TYPE|MCI_DGV_OPEN_32BIT,
+ mciSendCommand(0, MCI_OPEN,
+ MCI_OPEN_ELEMENT|MCI_DGV_OPEN_PARENT|MCI_OPEN_TYPE|MCI_DGV_OPEN_32BIT,
(DWORD)(LPVOID)&openStruct);
m_internal->m_dev_id = openStruct.wDeviceID;
setStruct.dwCallback = 0;
setStruct.dwTimeFormat = MCI_FORMAT_FRAMES;
- ret = mciSendCommand(m_internal->m_dev_id, MCI_SET, MCI_SET_TIME_FORMAT,
+ mciSendCommand(m_internal->m_dev_id, MCI_SET, MCI_SET_TIME_FORMAT,
(DWORD)(LPVOID)&setStruct);
statusStruct.dwCallback = 0;
statusStruct.dwItem = MCI_DGV_STATUS_FRAME_RATE;
- ret = mciSendCommand(m_internal->m_dev_id, MCI_STATUS,
+ mciSendCommand(m_internal->m_dev_id, MCI_STATUS,
MCI_STATUS_ITEM,
(DWORD)(LPVOID)&statusStruct);
m_frameRate = ((double)statusStruct.dwReturn) / 1000;
statusStruct.dwItem = MCI_DGV_STATUS_BITSPERSAMPLE;
- ret = mciSendCommand(m_internal->m_dev_id, MCI_STATUS, MCI_STATUS_ITEM,
+ mciSendCommand(m_internal->m_dev_id, MCI_STATUS, MCI_STATUS_ITEM,
(DWORD)(LPVOID)&statusStruct);
m_bps = statusStruct.dwReturn;
bool wxVideoWindows::Pause()
{
if (m_paused || m_stopped)
- return TRUE;
- m_paused = TRUE;
+ return true;
+ m_paused = true;
return (mciSendCommand(m_internal->m_dev_id, MCI_PAUSE, MCI_WAIT, 0) == 0);
}
bool wxVideoWindows::Resume()
{
if (!m_paused || m_stopped)
- return TRUE;
- m_paused = FALSE;
+ return true;
+ m_paused = false;
return (mciSendCommand(m_internal->m_dev_id, MCI_RESUME, 0, 0) == 0);
}
{
size.SetWidth(200);
size.SetHeight(200);
- return TRUE;
+ return true;
}
-bool wxVideoWindows::SetSize(wxSize size)
+bool wxVideoWindows::SetSize(wxSize WXUNUSED(size))
{
- return TRUE;
+ return true;
}
-bool wxVideoWindows::IsCapable(wxVideoType v_type)
+bool wxVideoWindows::IsCapable(wxVideoType v_type) const
{
return (v_type == wxVIDEO_MSAVI);
}
MCI_DGV_WINDOW_PARMS win_struct;
if (!wxVideoBaseDriver::AttachOutput(output))
- return FALSE;
+ return false;
win_struct.hWnd = (HWND)output.GetHWND();
mciSendCommand(m_internal->m_dev_id, MCI_WINDOW,
- MCI_DGV_WINDOW_HWND, (DWORD)(LPVOID)&win_struct);
- return TRUE;
+ MCI_DGV_WINDOW_HWND, (DWORD)(LPVOID)&win_struct);
+ return true;
}
void wxVideoWindows::DetachOutput()
win_struct.hWnd = 0;
mciSendCommand(m_internal->m_dev_id, MCI_WINDOW,
- MCI_DGV_WINDOW_HWND, (DWORD)(LPVOID)&win_struct);
+ MCI_DGV_WINDOW_HWND, (DWORD)(LPVOID)&win_struct);
}
bool wxVideoWindows::Play()
{
if (!m_stopped)
- return FALSE;
- m_stopped = FALSE;
+ return false;
+ m_stopped = false;
return (mciSendCommand(m_internal->m_dev_id, MCI_PLAY, 0, NULL) == 0);
}
MCI_SEEK_PARMS seekStruct;
if (m_stopped)
- return FALSE;
- m_stopped = TRUE;
+ return false;
+ m_stopped = true;
if (::mciSendCommand(m_internal->m_dev_id, MCI_STOP, MCI_WAIT, NULL) != 0)
- return FALSE;
+ return false;
seekStruct.dwCallback = 0;
seekStruct.dwTo = 0;