usp10: Fix advance width when glyph is missing.
[wine.git] / include / wfext.h
blob92cb4fb8c9ae301204dad3000a4c157203fd989c
1 /*
2 * Copyright (C) 2007 Francois Gouget
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
18 #ifndef __WINE_WFEXT_H
19 #define __WINE_WFEXT_H
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
25 #define MENU_TEXT_LEN 40
27 #define FMMENU_FIRST 1
28 #define FMMENU_LAST 99
30 #define FMEVENT_LOAD 100
31 #define FMEVENT_UNLOAD 101
32 #define FMEVENT_INITMENU 102
33 #define FMEVENT_USER_REFRESH 103
34 #define FMEVENT_SELCHANGE 104
35 #define FMEVENT_TOOLBARLOAD 105
36 #define FMEVENT_HELPSTRING 106
37 #define FMEVENT_HELPMENUITEM 107
39 #define FMFOCUS_DIR 1
40 #define FMFOCUS_TREE 2
41 #define FMFOCUS_DRIVES 3
42 #define FMFOCUS_SEARCH 4
44 #define FM_GETFOCUS (WM_USER + 0x0200)
45 #define FM_GETDRIVEINFOA (WM_USER + 0x0201)
46 #define FM_GETSELCOUNT (WM_USER + 0x0202)
47 #define FM_GETSELCOUNTLFN (WM_USER + 0x0203)
48 #define FM_GETFILESELA (WM_USER + 0x0204)
49 #define FM_GETFILESELLFNA (WM_USER + 0x0205)
50 #define FM_REFRESH_WINDOWS (WM_USER + 0x0206)
51 #define FM_RELOAD_EXTENSIONS (WM_USER + 0x0207)
52 #define FM_GETDRIVEINFOW (WM_USER + 0x0211)
53 #define FM_GETFILESELW (WM_USER + 0x0214)
54 #define FM_GETFILESELLFNW (WM_USER + 0x0215)
56 #define FM_GETDRIVEINFO WINELIB_NAME_AW(FM_GETDRIVEINFO)
57 #define FM_GETFILESEL WINELIB_NAME_AW(FM_GETFILESEL)
58 #define FM_GETFILESELLFN WINELIB_NAME_AW(FM_GETFILESELLFN)
60 typedef struct _FMS_GETFILESELA
62 FILETIME ftTime;
63 DWORD dwSize;
64 BYTE bAttr;
65 CHAR szName[260];
66 } FMS_GETFILESELA, *LPFMS_GETFILESELA;
68 typedef struct _FMS_GETFILESELW
70 FILETIME ftTime;
71 DWORD dwSize;
72 BYTE bAttr;
73 WCHAR szName[260];
74 } FMS_GETFILESELW, *LPFMS_GETFILESELW;
76 #define FMS_GETFILESEL WINELIB_NAME_AW(FMS_GETFILESEL)
77 #define LPFMS_GETFILESEL WINELIB_NAME_AW(LPFMS_GETFILESEL)
79 typedef struct _FMS_GETDRIVEINFOA
81 DWORD dwTotalSpace;
82 DWORD dwFreeSpace;
83 CHAR szPath[260];
84 CHAR szVolume[14];
85 CHAR szShare[128];
86 } FMS_GETDRIVEINFOA, *LPFMS_GETDRIVEINFOA;
88 typedef struct _FMS_GETDRIVEINFOW
90 DWORD dwTotalSpace;
91 DWORD dwFreeSpace;
92 WCHAR szPath[260];
93 WCHAR szVolume[14];
94 WCHAR szShare[128];
95 } FMS_GETDRIVEINFOW, *LPFMS_GETDRIVEINFOW;
97 #define FMS_GETDRIVEINFO WINELIB_NAME_AW(FMS_GETDRIVEINFO)
98 #define LPFMS_GETDRIVEINFO WINELIB_NAME_AW(LPFMS_GETDRIVEINFO)
100 typedef struct _FMS_LOADA
102 DWORD dwSize;
103 CHAR szMenuName[MENU_TEXT_LEN];
104 HMENU hMenu;
105 UINT wMenuDelta;
106 } FMS_LOADA, *LPFMS_LOADA;
108 typedef struct _FMS_LOADW
110 DWORD dwSize;
111 WCHAR szMenuName[MENU_TEXT_LEN];
112 HMENU hMenu;
113 UINT wMenuDelta;
114 } FMS_LOADW, *LPFMS_LOADW;
116 #define FMS_LOAD WINELIB_NAME_AW(FMS_LOAD)
117 #define LPFMS_LOAD WINELIB_NAME_AW(LPFMS_LOAD)
119 typedef struct tagEXT_BUTTON
121 WORD idCommand;
122 WORD idsHelp;
123 WORD fsStyle;
124 } EXT_BUTTON, *LPEXT_BUTTON;
126 typedef struct tagFMS_TOOLBARLOAD
128 DWORD dwSize;
129 LPEXT_BUTTON lpButtons;
130 WORD cButtons;
131 WORD cBitmaps;
132 WORD idBitmap;
133 HBITMAP hBitmap;
134 } FMS_TOOLBARLOAD, *LPFMS_TOOLBARLOAD;
136 typedef struct tagFMS_HELPSTRINGA
138 INT idCommand;
139 HMENU hMenu;
140 CHAR szHelp[128];
141 } FMS_HELPSTRINGA, *LPFMS_HELPSTRINGA;
143 typedef struct tagFMS_HELPSTRINGW
145 INT idCommand;
146 HMENU hMenu;
147 WCHAR szHelp[128];
148 } FMS_HELPSTRINGW, *LPFMS_HELPSTRINGW;
150 #define FMS_HELPSTRING WINELIB_NAME_AW(FMS_HELPSTRING)
151 #define LPFMS_HELPSTRING WINELIB_NAME_AW(LPFMS_HELPSTRING)
153 typedef DWORD (WINAPI *FM_EXT_PROC)(HWND,WORD,LONG);
154 typedef DWORD (WINAPI *FM_UNDELETE_PROCA)(HWND,LPSTR);
155 typedef DWORD (WINAPI *FM_UNDELETE_PROCW)(HWND,LPWSTR);
156 DECL_WINELIB_TYPE_AW(FM_UNDELETE_PROC);
158 LONG WINAPI FMExtensionProc(HWND,WORD,LONG);
159 LONG WINAPI FMExtensionProcW(HWND,WORD,LONG);
161 #ifdef __cplusplus
163 #endif
165 #endif