comparison src/console-msw.h @ 294:4b85ae5eabfb r21-0b45

Import from CVS: tag r21-0b45
author cvs
date Mon, 13 Aug 2007 10:38:01 +0200
parents e11d67e05968
children 70ad99077275
comparison
equal deleted inserted replaced
293:403535bfea94 294:4b85ae5eabfb
81 81
82 /* 82 /*
83 * Device 83 * Device
84 */ 84 */
85 85
86 #define MSW_FONTSIZE (LF_FACESIZE*4+12)
87
88 struct mswindows_font_enum
89 {
90 char fontname[MSW_FONTSIZE];
91 struct mswindows_font_enum *next;
92 };
93
86 struct mswindows_device 94 struct mswindows_device
87 { 95 {
88 int logpixelsx, logpixelsy; 96 int logpixelsx, logpixelsy;
89 int planes, cells; 97 int planes, cells;
90 int horzres, vertres; /* Size in pixels */ 98 int horzres, vertres; /* Size in pixels */
91 int horzsize, vertsize; /* Size in mm */ 99 int horzsize, vertsize; /* Size in mm */
92 int bitspixel; 100 int bitspixel;
101 struct mswindows_font_enum *fontlist;
93 }; 102 };
94 103
95 #define DEVICE_MSWINDOWS_DATA(d) DEVICE_TYPE_DATA (d, mswindows) 104 #define DEVICE_MSWINDOWS_DATA(d) DEVICE_TYPE_DATA (d, mswindows)
96 #define DEVICE_MSWINDOWS_LOGPIXELSX(d) (DEVICE_MSWINDOWS_DATA (d)->logpixelsx) 105 #define DEVICE_MSWINDOWS_LOGPIXELSX(d) (DEVICE_MSWINDOWS_DATA (d)->logpixelsx)
97 #define DEVICE_MSWINDOWS_LOGPIXELSY(d) (DEVICE_MSWINDOWS_DATA (d)->logpixelsy) 106 #define DEVICE_MSWINDOWS_LOGPIXELSY(d) (DEVICE_MSWINDOWS_DATA (d)->logpixelsy)
100 #define DEVICE_MSWINDOWS_HORZRES(d) (DEVICE_MSWINDOWS_DATA (d)->horzres) 109 #define DEVICE_MSWINDOWS_HORZRES(d) (DEVICE_MSWINDOWS_DATA (d)->horzres)
101 #define DEVICE_MSWINDOWS_VERTRES(d) (DEVICE_MSWINDOWS_DATA (d)->vertres) 110 #define DEVICE_MSWINDOWS_VERTRES(d) (DEVICE_MSWINDOWS_DATA (d)->vertres)
102 #define DEVICE_MSWINDOWS_HORZSIZE(d) (DEVICE_MSWINDOWS_DATA (d)->horzsize) 111 #define DEVICE_MSWINDOWS_HORZSIZE(d) (DEVICE_MSWINDOWS_DATA (d)->horzsize)
103 #define DEVICE_MSWINDOWS_VERTSIZE(d) (DEVICE_MSWINDOWS_DATA (d)->vertsize) 112 #define DEVICE_MSWINDOWS_VERTSIZE(d) (DEVICE_MSWINDOWS_DATA (d)->vertsize)
104 #define DEVICE_MSWINDOWS_BITSPIXEL(d) (DEVICE_MSWINDOWS_DATA (d)->bitspixel) 113 #define DEVICE_MSWINDOWS_BITSPIXEL(d) (DEVICE_MSWINDOWS_DATA (d)->bitspixel)
114 #define DEVICE_MSWINDOWS_FONTLIST(d) (DEVICE_MSWINDOWS_DATA (d)->fontlist)
105 115
106 116
107 /* 117 /*
108 * Frame 118 * Frame
109 */ 119 */
120 typedef struct
121 {
122 int left;
123 int top;
124 int width;
125 int height;
126 } XEMACS_RECT_WH;
110 127
111 struct mswindows_frame 128 struct mswindows_frame
112 { 129 {
113 /* win32 window handle */ 130 /* win32 window handle */
114 HWND hwnd; 131 HWND hwnd;
148 int button2_need_rbutton : 1; 165 int button2_need_rbutton : 1;
149 int button2_is_down : 1; 166 int button2_is_down : 1;
150 int ignore_next_lbutton_up : 1; 167 int ignore_next_lbutton_up : 1;
151 int ignore_next_rbutton_up : 1; 168 int ignore_next_rbutton_up : 1;
152 int sizing : 1; 169 int sizing : 1;
170
171 /* Geometry, in characters, as specified by proplist during frame
172 creation. Memebers are set to -1 for unspecified */
173 XEMACS_RECT_WH* target_rect;
153 }; 174 };
154 175
155 #define FRAME_MSWINDOWS_DATA(f) FRAME_TYPE_DATA (f, mswindows) 176 #define FRAME_MSWINDOWS_DATA(f) FRAME_TYPE_DATA (f, mswindows)
156 177
157 #define FRAME_MSWINDOWS_HANDLE(f) (FRAME_MSWINDOWS_DATA (f)->hwnd) 178 #define FRAME_MSWINDOWS_HANDLE(f) (FRAME_MSWINDOWS_DATA (f)->hwnd)
164 (FRAME_MSWINDOWS_DATA (f)->toolbar_checksum[pos]) 185 (FRAME_MSWINDOWS_DATA (f)->toolbar_checksum[pos])
165 #define FRAME_MSWINDOWS_MENU_CHECKSUM(f) (FRAME_MSWINDOWS_DATA (f)->menu_checksum) 186 #define FRAME_MSWINDOWS_MENU_CHECKSUM(f) (FRAME_MSWINDOWS_DATA (f)->menu_checksum)
166 #define FRAME_MSWINDOWS_TITLE_CHECKSUM(f) (FRAME_MSWINDOWS_DATA (f)->title_checksum) 187 #define FRAME_MSWINDOWS_TITLE_CHECKSUM(f) (FRAME_MSWINDOWS_DATA (f)->title_checksum)
167 #define FRAME_MSWINDOWS_CHARWIDTH(f) (FRAME_MSWINDOWS_DATA (f)->charwidth) 188 #define FRAME_MSWINDOWS_CHARWIDTH(f) (FRAME_MSWINDOWS_DATA (f)->charwidth)
168 #define FRAME_MSWINDOWS_CHARHEIGHT(f) (FRAME_MSWINDOWS_DATA (f)->charheight) 189 #define FRAME_MSWINDOWS_CHARHEIGHT(f) (FRAME_MSWINDOWS_DATA (f)->charheight)
190 #define FRAME_MSWINDOWS_TARGET_RECT(f) (FRAME_MSWINDOWS_DATA (f)->target_rect)
169 191
170 /* Frame check and validation macros */ 192 /* Frame check and validation macros */
171 #define FRAME_MSWINDOWS_P(frm) CONSOLE_TYPESYM_MSWINDOWS_P (FRAME_TYPE (frm)) 193 #define FRAME_MSWINDOWS_P(frm) CONSOLE_TYPESYM_MSWINDOWS_P (FRAME_TYPE (frm))
172 #define CHECK_MSWINDOWS_FRAME(z) CHECK_FRAME_TYPE (z, mswindows) 194 #define CHECK_MSWINDOWS_FRAME(z) CHECK_FRAME_TYPE (z, mswindows)
173 #define CONCHECK_MSWINDOWS_FRAME(z) CONCHECK_FRAME_TYPE (z, mswindows) 195 #define CONCHECK_MSWINDOWS_FRAME(z) CONCHECK_FRAME_TYPE (z, mswindows)
198 LRESULT WINAPI mswindows_wnd_proc (HWND hwnd, UINT msg, WPARAM wParam, 220 LRESULT WINAPI mswindows_wnd_proc (HWND hwnd, UINT msg, WPARAM wParam,
199 LPARAM lParam); 221 LPARAM lParam);
200 222
201 void mswindows_redraw_exposed_area (struct frame *f, int x, int y, 223 void mswindows_redraw_exposed_area (struct frame *f, int x, int y,
202 int width, int height); 224 int width, int height);
225 void mswindows_size_frame_internal (struct frame* f, XEMACS_RECT_WH* dest);
203 226
204 /* win32 DDE management library */ 227 /* win32 DDE management library */
205 #define MSWINDOWS_DDE_ITEM_OPEN "Open" 228 #define MSWINDOWS_DDE_ITEM_OPEN "Open"
206 extern DWORD mswindows_dde_mlid; 229 extern DWORD mswindows_dde_mlid;
207 extern HSZ mswindows_dde_service; 230 extern HSZ mswindows_dde_service;
223 #ifdef HAVE_WIN32_PROCESSES 246 #ifdef HAVE_WIN32_PROCESSES
224 HANDLE get_nt_process_handle (struct Lisp_Process *p); 247 HANDLE get_nt_process_handle (struct Lisp_Process *p);
225 #endif 248 #endif
226 249
227 extern Lisp_Object Vmswindows_frame_being_created; 250 extern Lisp_Object Vmswindows_frame_being_created;
228 typedef struct
229 {
230 int left;
231 int top;
232 int width;
233 int height;
234 } XEMACS_RECT_WH;
235
236 extern XEMACS_RECT_WH mswindows_frame_target_rect;
237 extern Lisp_Object mswindows_frame_being_created; 251 extern Lisp_Object mswindows_frame_being_created;
238 252
239 #endif /* _XEMACS_CONSOLE_MSW_H_ */ 253 #endif /* _XEMACS_CONSOLE_MSW_H_ */