annotate src/w32gui.h @ 88196:a71ec02fb6d3

(rmail): Only insert the file if it actually exists. (rmail-show-message): Do not display labels if there are no messages. This corrects the mistake if visiting an empty file, but it doesn't fix the situation where you delete the all messages and expunge them. This may leave the labels of the last message in the modeline.
author Alex Schroeder <alex@gnu.org>
date Tue, 17 Jan 2006 23:05:56 +0000
parents d7ddb3e565de
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16886
c686d4f3728a Change all uses of win95, winnt, and win32 into Windows 95, Windows
Geoff Voelker <voelker@cs.washington.edu>
parents: 14186
diff changeset
1 /* Definitions and headers for communication on the Microsoft W32 API.
88155
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
2 Copyright (C) 1995, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
3
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
4 This file is part of GNU Emacs.
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
5
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
6 GNU Emacs is free software; you can redistribute it and/or modify
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
7 it under the terms of the GNU General Public License as published by
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
8 the Free Software Foundation; either version 2, or (at your option)
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
9 any later version.
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
10
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
11 GNU Emacs is distributed in the hope that it will be useful,
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
14 GNU General Public License for more details.
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
15
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
16 You should have received a copy of the GNU General Public License
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
17 along with GNU Emacs; see the file COPYING. If not, write to
88155
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
18 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
19 Boston, MA 02110-1301, USA. */
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
20
29605
beb7f126f175 (EMACS_W32GUI_H): Renamed from __W32GUI_H__
Jason Rumney <jasonr@gnu.org>
parents: 29318
diff changeset
21 #ifndef EMACS_W32GUI_H
beb7f126f175 (EMACS_W32GUI_H): Renamed from __W32GUI_H__
Jason Rumney <jasonr@gnu.org>
parents: 29318
diff changeset
22 #define EMACS_W32GUI_H
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
23 #include <windows.h>
31112
1c1c5d1eb49c Undefine min, max.
Andrew Innes <andrewi@gnu.org>
parents: 29605
diff changeset
24
24144
236627b268cc Include w32bdf.h.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16890
diff changeset
25 #include "w32bdf.h"
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
26
32724
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
27 /* Emulate XCharStruct. */
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
28 typedef struct _XCharStruct
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
29 {
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
30 short rbearing;
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
31 short lbearing;
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
32 short width;
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
33 short ascent;
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
34 short descent;
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
35 } XCharStruct;
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
36
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
37 enum w32_char_font_type
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
38 {
88155
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
39 UNKNOWN_FONT = 0 /* FONT_TYPE_UNKNOWN */,
32724
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
40 ANSI_FONT,
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
41 UNICODE_FONT,
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
42 BDF_1D_FONT,
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
43 BDF_2D_FONT
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
44 };
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
45
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
46 typedef struct W32FontStruct {
32724
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
47 enum w32_char_font_type font_type;
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
48 TEXTMETRIC tm;
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
49 HFONT hfont;
24144
236627b268cc Include w32bdf.h.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16890
diff changeset
50 bdffont *bdf;
29318
d54d4038df20 (W32FontStruct): Add double_byte_p member.
Jason Rumney <jasonr@gnu.org>
parents: 27895
diff changeset
51 int double_byte_p;
32724
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
52 XCharStruct max_bounds;
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
53 XCharStruct scratch;
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
54 /* Only store info for ascii chars, if not fixed pitch. */
22afed8d7e3f (w32_char_font_type): Move enum from w32term.c
Andrew Innes <andrewi@gnu.org>
parents: 31112
diff changeset
55 XCharStruct * per_char;
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
56 } W32FontStruct;
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
57
27398
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
58 typedef struct W32FontStruct XFontStruct;
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
59
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
60 /* Emulate X GC's by keeping color and font info in a structure. */
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
61 typedef struct _XGCValues
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
62 {
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
63 COLORREF foreground;
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
64 COLORREF background;
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
65 XFontStruct * font;
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
66 } XGCValues;
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
67
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
68 #define GCForeground 0x01
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
69 #define GCBackground 0x02
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
70 #define GCFont 0x03
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
71
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
72 typedef HBITMAP Pixmap;
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
73 typedef HBITMAP Bitmap;
27398
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
74
88155
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
75 typedef char * XrmDatabase;
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
76
27398
d6331257c601 (XGCValue): New struct for emulating X GCs.
Jason Rumney <jasonr@gnu.org>
parents: 24144
diff changeset
77 typedef XGCValues * GC;
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
78 typedef COLORREF Color;
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
79 typedef DWORD Time;
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
80 typedef HWND Window;
88155
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
81 typedef HDC Display; /* HDC so it doesn't conflict with xpm lib. */
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
82 typedef HCURSOR Cursor;
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
83
88155
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
84 #define No_Cursor (0)
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
85
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
86 #define XChar2b wchar_t
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
87
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
88 /* Dealing with bits of wchar_t as if they were an XChar2b. */
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
89 #define STORE_XCHAR2B(chp, byte1, byte2) \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
90 ((*chp) = ((XChar2b)((((byte1) & 0x00ff) << 8) | ((byte2) & 0x00ff))))
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
91
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
92 #define XCHAR2B_BYTE1(chp) \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
93 (((*chp) & 0xff00) >> 8)
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
94
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
95 #define XCHAR2B_BYTE2(chp) \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
96 ((*chp) & 0x00ff)
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
97
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
98
44046
994f2deaa5bc (struct XImage): Define.
Jason Rumney <jasonr@gnu.org>
parents: 40327
diff changeset
99 /* Windows equivalent of XImage. */
994f2deaa5bc (struct XImage): Define.
Jason Rumney <jasonr@gnu.org>
parents: 40327
diff changeset
100 typedef struct _XImage
994f2deaa5bc (struct XImage): Define.
Jason Rumney <jasonr@gnu.org>
parents: 40327
diff changeset
101 {
994f2deaa5bc (struct XImage): Define.
Jason Rumney <jasonr@gnu.org>
parents: 40327
diff changeset
102 unsigned char * data;
994f2deaa5bc (struct XImage): Define.
Jason Rumney <jasonr@gnu.org>
parents: 40327
diff changeset
103 BITMAPINFO info;
994f2deaa5bc (struct XImage): Define.
Jason Rumney <jasonr@gnu.org>
parents: 40327
diff changeset
104 /* Optional RGBQUAD array for palette follows (see BITMAPINFO docs). */
994f2deaa5bc (struct XImage): Define.
Jason Rumney <jasonr@gnu.org>
parents: 40327
diff changeset
105 } XImage;
40327
57a44aac3228 Add a dummy typedef for XImage. From Juanma Barranquero <lektu@terra.es>.
Eli Zaretskii <eliz@gnu.org>
parents: 39711
diff changeset
106
13434
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
107 #define FACE_DEFAULT (~0)
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
108
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
109 extern HINSTANCE hinst;
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
110 extern HINSTANCE hprevinst;
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
111 extern LPSTR lpCmdLine;
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
112 extern int nCmdShow;
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
113
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
114 /* Bit Gravity */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
115
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
116 #define ForgetGravity 0
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
117 #define NorthWestGravity 1
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
118 #define NorthGravity 2
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
119 #define NorthEastGravity 3
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
120 #define WestGravity 4
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
121 #define CenterGravity 5
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
122 #define EastGravity 6
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
123 #define SouthWestGravity 7
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
124 #define SouthGravity 8
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
125 #define SouthEastGravity 9
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
126 #define StaticGravity 10
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
127
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
128 #define NoValue 0x0000
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
129 #define XValue 0x0001
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
130 #define YValue 0x0002
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
131 #define WidthValue 0x0004
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
132 #define HeightValue 0x0008
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
133 #define AllValues 0x000F
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
134 #define XNegative 0x0010
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
135 #define YNegative 0x0020
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
136
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
137 #define USPosition (1L << 0) /* user specified x, y */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
138 #define USSize (1L << 1) /* user specified width, height */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
139
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
140 #define PPosition (1L << 2) /* program specified position */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
141 #define PSize (1L << 3) /* program specified size */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
142 #define PMinSize (1L << 4) /* program specified minimum size */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
143 #define PMaxSize (1L << 5) /* program specified maximum size */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
144 #define PResizeInc (1L << 6) /* program specified resize increments */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
145 #define PAspect (1L << 7) /* program specified min and max aspect ratios */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
146 #define PBaseSize (1L << 8) /* program specified base for incrementing */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
147 #define PWinGravity (1L << 9) /* program specified window gravity */
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
148
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
149 extern int XParseGeometry ();
53ba95a88cf2 Initial revision
Geoff Voelker <voelker@cs.washington.edu>
parents:
diff changeset
150
88155
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
151
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
152 typedef struct {
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
153 int x, y;
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
154 unsigned width, height;
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
155 } XRectangle;
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
156
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
157 #define NativeRectangle RECT
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
158
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
159 #define CONVERT_TO_XRECT(xr,nr) \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
160 ((xr).x = (nr).left, \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
161 (xr).y = (nr).top, \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
162 (xr).width = ((nr).right - (nr).left), \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
163 (xr).height = ((nr).bottom - (nr).top))
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
164
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
165 #define CONVERT_FROM_XRECT(xr,nr) \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
166 ((nr).left = (xr).x, \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
167 (nr).top = (xr).y, \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
168 (nr).right = ((xr).x + (xr).width), \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
169 (nr).bottom = ((xr).y + (xr).height))
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
170
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
171 #define STORE_NATIVE_RECT(nr,x,y,width,height) \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
172 ((nr).left = (x), \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
173 (nr).top = (y), \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
174 (nr).right = ((nr).left + (width)), \
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
175 (nr).bottom = ((nr).top + (height)))
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
176
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
177
29605
beb7f126f175 (EMACS_W32GUI_H): Renamed from __W32GUI_H__
Jason Rumney <jasonr@gnu.org>
parents: 29318
diff changeset
178 #endif /* EMACS_W32GUI_H */
88155
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
179
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
180 /* arch-tag: 9172e5fb-45a5-4684-afd9-ca0e81324604
d7ddb3e565de sync with trunk
Henrik Enberg <henrik.enberg@telia.com>
parents: 47997
diff changeset
181 (do not change this comment) */