author | Darkvater |
Sun, 31 Dec 2006 01:21:00 +0000 | |
branch | 0.5 |
changeset 5384 | 5a47b3011cf7 |
parent 5312 | 884ebccbd847 |
child 5472 | 16f71955fc3b |
permissions | -rw-r--r-- |
2186 | 1 |
/* $Id$ */ |
2 |
||
2183
6fba9150225b
(svn r2697) Make compiling with SDL on Windows work again (missing #includes) and fix some warnings
tron
parents:
diff
changeset
|
3 |
#ifndef WIN32_H |
6fba9150225b
(svn r2697) Make compiling with SDL on Windows work again (missing #includes) and fix some warnings
tron
parents:
diff
changeset
|
4 |
#define WIN32_H |
6fba9150225b
(svn r2697) Make compiling with SDL on Windows work again (missing #includes) and fix some warnings
tron
parents:
diff
changeset
|
5 |
|
5304
50daae4d7d38
(svn r7460) -Fix (r7337): [win32] If the underlying OS didn't have support for SHGetFolderPath the
Darkvater
parents:
5222
diff
changeset
|
6 |
#include <windows.h> |
2207
40c928fbde8a
(svn r2725) Move MyShowCursor() back into win32.c, it fits better there
tron
parents:
2186
diff
changeset
|
7 |
bool MyShowCursor(bool show); |
40c928fbde8a
(svn r2725) Move MyShowCursor() back into win32.c, it fits better there
tron
parents:
2186
diff
changeset
|
8 |
|
2183
6fba9150225b
(svn r2697) Make compiling with SDL on Windows work again (missing #includes) and fix some warnings
tron
parents:
diff
changeset
|
9 |
typedef void (*Function)(int); |
5168
10a8dc9788d7
(svn r7278) -Codechange: [win32] Add UNICODE support so it should compile on OS's using UNICODE
Darkvater
parents:
2436
diff
changeset
|
10 |
bool LoadLibraryList(Function proc[], const char *dll); |
10a8dc9788d7
(svn r7278) -Codechange: [win32] Add UNICODE support so it should compile on OS's using UNICODE
Darkvater
parents:
2436
diff
changeset
|
11 |
|
5218
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
12 |
char *convert_from_fs(const wchar_t *name, char *utf8_buf, size_t buflen); |
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
13 |
wchar_t *convert_to_fs(const char *name, wchar_t *utf16_buf, size_t buflen); |
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
14 |
|
5312
884ebccbd847
(svn r7468) -Codechange: [win32] Add some comments to MB/WIDE_TO_WIDE/MB_[BUFFER] macros and
Darkvater
parents:
5304
diff
changeset
|
15 |
/* Function shortcuts for UTF-8 <> UNICODE conversion. When unicode is not |
884ebccbd847
(svn r7468) -Codechange: [win32] Add some comments to MB/WIDE_TO_WIDE/MB_[BUFFER] macros and
Darkvater
parents:
5304
diff
changeset
|
16 |
* defined these macros return the string passed to them, with UNICODE |
884ebccbd847
(svn r7468) -Codechange: [win32] Add some comments to MB/WIDE_TO_WIDE/MB_[BUFFER] macros and
Darkvater
parents:
5304
diff
changeset
|
17 |
* they return a pointer to the converted string. The only difference between |
884ebccbd847
(svn r7468) -Codechange: [win32] Add some comments to MB/WIDE_TO_WIDE/MB_[BUFFER] macros and
Darkvater
parents:
5304
diff
changeset
|
18 |
* XX_TO_YY and XX_TO_YY_BUFFER is that with the buffer variant you can |
884ebccbd847
(svn r7468) -Codechange: [win32] Add some comments to MB/WIDE_TO_WIDE/MB_[BUFFER] macros and
Darkvater
parents:
5304
diff
changeset
|
19 |
* specify where to put the converted string (and how long it can be). Without |
884ebccbd847
(svn r7468) -Codechange: [win32] Add some comments to MB/WIDE_TO_WIDE/MB_[BUFFER] macros and
Darkvater
parents:
5304
diff
changeset
|
20 |
* the buffer and internal buffer is used, of max 512 characters */ |
5168
10a8dc9788d7
(svn r7278) -Codechange: [win32] Add UNICODE support so it should compile on OS's using UNICODE
Darkvater
parents:
2436
diff
changeset
|
21 |
#if defined(UNICODE) |
5218
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
22 |
# define MB_TO_WIDE(str) OTTD2FS(str) |
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
23 |
# define MB_TO_WIDE_BUFFER(str, buffer, buflen) convert_to_fs(str, buffer, buflen) |
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
24 |
# define WIDE_TO_MB(str) FS2OTTD(str) |
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
25 |
# define WIDE_TO_MB_BUFFER(str, buffer, buflen) convert_from_fs(str, buffer, buflen) |
5168
10a8dc9788d7
(svn r7278) -Codechange: [win32] Add UNICODE support so it should compile on OS's using UNICODE
Darkvater
parents:
2436
diff
changeset
|
26 |
#else |
5218
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
27 |
# define MB_TO_WIDE(str) (str) |
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
28 |
# define MB_TO_WIDE_BUFFER(str, buffer, buflen) (str) |
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
29 |
# define WIDE_TO_MB(str) (str) |
aae5f36a5256
(svn r7333) -Codechange: [win32] Extend the OTTD2FS and FS2OTTD functions to also accept conversions
Darkvater
parents:
5168
diff
changeset
|
30 |
# define WIDE_TO_MB_BUFFER(str, buffer, buflen) (str) |
5168
10a8dc9788d7
(svn r7278) -Codechange: [win32] Add UNICODE support so it should compile on OS's using UNICODE
Darkvater
parents:
2436
diff
changeset
|
31 |
#endif |
2183
6fba9150225b
(svn r2697) Make compiling with SDL on Windows work again (missing #includes) and fix some warnings
tron
parents:
diff
changeset
|
32 |
|
5304
50daae4d7d38
(svn r7460) -Fix (r7337): [win32] If the underlying OS didn't have support for SHGetFolderPath the
Darkvater
parents:
5222
diff
changeset
|
33 |
/* Override SHGetFolderPath with our custom implementation */ |
50daae4d7d38
(svn r7460) -Fix (r7337): [win32] If the underlying OS didn't have support for SHGetFolderPath the
Darkvater
parents:
5222
diff
changeset
|
34 |
#if defined(SHGetFolderPath) |
50daae4d7d38
(svn r7460) -Fix (r7337): [win32] If the underlying OS didn't have support for SHGetFolderPath the
Darkvater
parents:
5222
diff
changeset
|
35 |
#undef SHGetFolderPath |
50daae4d7d38
(svn r7460) -Fix (r7337): [win32] If the underlying OS didn't have support for SHGetFolderPath the
Darkvater
parents:
5222
diff
changeset
|
36 |
#endif |
50daae4d7d38
(svn r7460) -Fix (r7337): [win32] If the underlying OS didn't have support for SHGetFolderPath the
Darkvater
parents:
5222
diff
changeset
|
37 |
#define SHGetFolderPath OTTDSHGetFolderPath |
50daae4d7d38
(svn r7460) -Fix (r7337): [win32] If the underlying OS didn't have support for SHGetFolderPath the
Darkvater
parents:
5222
diff
changeset
|
38 |
|
50daae4d7d38
(svn r7460) -Fix (r7337): [win32] If the underlying OS didn't have support for SHGetFolderPath the
Darkvater
parents:
5222
diff
changeset
|
39 |
HRESULT OTTDSHGetFolderPath(HWND, int, HANDLE, DWORD, LPTSTR); |
50daae4d7d38
(svn r7460) -Fix (r7337): [win32] If the underlying OS didn't have support for SHGetFolderPath the
Darkvater
parents:
5222
diff
changeset
|
40 |
|
5222
4f4cfb2e248e
(svn r7337) -Feature: [win32] Add font selection by specifying a font-name, ala Fontconfig. Pretty
Darkvater
parents:
5218
diff
changeset
|
41 |
#if defined(__MINGW32__) |
4f4cfb2e248e
(svn r7337) -Feature: [win32] Add font selection by specifying a font-name, ala Fontconfig. Pretty
Darkvater
parents:
5218
diff
changeset
|
42 |
#define SHGFP_TYPE_CURRENT 0 |
4f4cfb2e248e
(svn r7337) -Feature: [win32] Add font selection by specifying a font-name, ala Fontconfig. Pretty
Darkvater
parents:
5218
diff
changeset
|
43 |
#endif /* __MINGW32__ */ |
4f4cfb2e248e
(svn r7337) -Feature: [win32] Add font selection by specifying a font-name, ala Fontconfig. Pretty
Darkvater
parents:
5218
diff
changeset
|
44 |
|
2436
177cb6a8339f
(svn r2962) - const correctness for all Get* functions and most Draw* functions that don't change their pointer parameters
Darkvater
parents:
2207
diff
changeset
|
45 |
#endif /* WIN32_H */ |