2007-03-23 22:26:35 +00:00
|
|
|
//#define WIN32_LEAN_AND_MEAN
|
2010-12-30 20:10:48 +00:00
|
|
|
|
|
|
|
// Required for Win98/ME support:
|
|
|
|
// . See: http://support.embarcadero.com/article/35754
|
|
|
|
// . "GetOpenFileName() fails under Windows 95/98/NT/ME due to incorrect OPENFILENAME structure size"
|
|
|
|
#define _WIN32_WINNT 0x0400
|
2016-07-12 21:43:31 +00:00
|
|
|
#define WINVER 0x500
|
2006-06-26 16:59:48 +00:00
|
|
|
|
|
|
|
// Mouse Wheel is not supported on Win95.
|
|
|
|
// If we didn't care about supporting Win95 (compile/run-time errors)
|
2010-02-14 21:11:26 +00:00
|
|
|
// we would just define the minimum windows version to support.
|
2006-06-26 16:59:48 +00:00
|
|
|
// #define _WIN32_WINDOWS 0x0401
|
|
|
|
#ifndef WM_MOUSEWHEEL
|
|
|
|
#define WM_MOUSEWHEEL 0x020A
|
|
|
|
#endif
|
|
|
|
|
2006-02-27 18:29:38 +00:00
|
|
|
// Not needed in VC7.1, but needed in VC Express
|
2016-03-21 23:48:02 +00:00
|
|
|
#include <tchar.h>
|
2006-02-27 18:29:38 +00:00
|
|
|
|
2006-02-25 20:50:29 +00:00
|
|
|
#include <crtdbg.h>
|
|
|
|
#include <dsound.h>
|
|
|
|
#include <dshow.h>
|
|
|
|
|
|
|
|
#include <math.h>
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include <time.h>
|
2016-03-21 22:27:09 +00:00
|
|
|
#if _MSC_VER >= 1600 // <stdint.h> supported from VS2010 (cl.exe v16.00)
|
|
|
|
#include <stdint.h> // cleanup WORD DWORD -> uint16_t uint32_t
|
|
|
|
#else
|
|
|
|
typedef UINT8 uint8_t;
|
|
|
|
typedef UINT16 uint16_t;
|
|
|
|
typedef UINT32 uint32_t;
|
2018-06-02 21:26:29 +00:00
|
|
|
typedef UINT64 uint64_t;
|
2016-03-21 22:27:09 +00:00
|
|
|
#endif
|
2006-06-26 16:59:48 +00:00
|
|
|
|
2006-02-25 20:50:29 +00:00
|
|
|
#include <windows.h>
|
2006-06-26 16:59:48 +00:00
|
|
|
#include <winuser.h> // WM_MOUSEWHEEL
|
2006-02-25 20:50:29 +00:00
|
|
|
#include <commctrl.h>
|
|
|
|
#include <ddraw.h>
|
|
|
|
#include <htmlhelp.h>
|
2010-02-14 21:11:26 +00:00
|
|
|
#include <assert.h>
|
2006-02-25 20:50:29 +00:00
|
|
|
|
2014-08-14 19:29:01 +00:00
|
|
|
#include <algorithm>
|
|
|
|
#include <map>
|
2010-01-03 18:43:08 +00:00
|
|
|
#include <queue>
|
2016-03-21 23:48:02 +00:00
|
|
|
#include <stack>
|
|
|
|
#include <string>
|
2010-01-03 18:43:08 +00:00
|
|
|
#include <vector>
|
2017-01-21 09:15:26 +00:00
|
|
|
#include <memory>
|
2010-01-03 18:43:08 +00:00
|
|
|
|
2014-08-20 21:40:48 +00:00
|
|
|
// SM_CXPADDEDBORDER is not supported on 2000 & XP:
|
|
|
|
// http://msdn.microsoft.com/en-nz/library/windows/desktop/ms724385(v=vs.85).aspx
|
|
|
|
#ifndef SM_CXPADDEDBORDER
|
|
|
|
#define SM_CXPADDEDBORDER 92
|
|
|
|
#endif
|
|
|
|
|
2014-08-13 20:30:35 +00:00
|
|
|
#define USE_SPEECH_API
|