comparison src/glyphs-msw.h @ 412:697ef44129c6 r21-2-14

Import from CVS: tag r21-2-14
author cvs
date Mon, 13 Aug 2007 11:20:41 +0200
parents 501cfd01ee6d
children 11054d720c21
comparison
equal deleted inserted replaced
411:12e008d41344 412:697ef44129c6
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */ 19 Boston, MA 02111-1307, USA. */
20 20
21 /* Synched up with: Not in FSF. */ 21 /* Synched up with: Not in FSF. */
22 22
23 #ifndef INCLUDED_glyphs_msw_h_ 23 #ifndef _XEMACS_GLYPHS_MSW_H_
24 #define INCLUDED_glyphs_msw_h_ 24 #define _XEMACS_GLYPHS_MSW_H_
25 25
26 #ifdef HAVE_MS_WINDOWS 26 #ifdef HAVE_MS_WINDOWS
27 27
28 #include <windows.h> 28 #include <windows.h>
29 #include "glyphs.h" 29 #include "glyphs.h"
32 * Image-Instance Object * 32 * Image-Instance Object *
33 ****************************************************************************/ 33 ****************************************************************************/
34 34
35 struct mswindows_image_instance_data 35 struct mswindows_image_instance_data
36 { 36 {
37 HBITMAP* bitmaps; 37 HBITMAP bitmap;
38 HBITMAP mask;
38 HICON icon; 39 HICON icon;
39 int real_width, real_height;
40 }; 40 };
41 41
42 #define MSWINDOWS_IMAGE_INSTANCE_DATA(i) \ 42 #define MSWINDOWS_IMAGE_INSTANCE_DATA(i) \
43 ((struct mswindows_image_instance_data *) (i)->data) 43 ((struct mswindows_image_instance_data *) (i)->data)
44 44
45 #define IMAGE_INSTANCE_MSWINDOWS_BITMAP(i) \ 45 #define IMAGE_INSTANCE_MSWINDOWS_BITMAP(i) \
46 (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->bitmaps[0]) 46 (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->bitmap)
47 #define IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE(i,slice) \
48 (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->bitmaps[slice])
49 #define IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES(i) \
50 (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->bitmaps)
51 #define IMAGE_INSTANCE_MSWINDOWS_MASK(i) \ 47 #define IMAGE_INSTANCE_MSWINDOWS_MASK(i) \
52 (*(HBITMAP*)&(IMAGE_INSTANCE_PIXMAP_MASK (i))) /* Make it lvalue */ 48 (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->mask)
53 #define IMAGE_INSTANCE_MSWINDOWS_ICON(i) \ 49 #define IMAGE_INSTANCE_MSWINDOWS_ICON(i) \
54 (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->icon) 50 (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->icon)
55 #define IMAGE_INSTANCE_MSWINDOWS_BITMAP_REAL_WIDTH(i) \
56 (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->real_width)
57 #define IMAGE_INSTANCE_MSWINDOWS_BITMAP_REAL_HEIGHT(i) \
58 (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->real_height)
59 51
60 #define XIMAGE_INSTANCE_MSWINDOWS_BITMAP(i) \ 52 #define XIMAGE_INSTANCE_MSWINDOWS_BITMAP(i) \
61 IMAGE_INSTANCE_MSWINDOWS_BITMAP (XIMAGE_INSTANCE (i)) 53 IMAGE_INSTANCE_MSWINDOWS_BITMAP (XIMAGE_INSTANCE (i))
62 #define XIMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE(i,slice) \
63 IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE (XIMAGE_INSTANCE (i,slice))
64 #define XIMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES(i) \
65 IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES (XIMAGE_INSTANCE (i))
66 #define XIMAGE_INSTANCE_MSWINDOWS_MASK(i) \ 54 #define XIMAGE_INSTANCE_MSWINDOWS_MASK(i) \
67 IMAGE_INSTANCE_MSWINDOWS_MASK (XIMAGE_INSTANCE (i)) 55 IMAGE_INSTANCE_MSWINDOWS_MASK (XIMAGE_INSTANCE (i))
68 #define XIMAGE_INSTANCE_MSWINDOWS_ICON(i) \ 56 #define XIMAGE_INSTANCE_MSWINDOWS_ICON(i) \
69 IMAGE_INSTANCE_MSWINDOWS_ICON (XIMAGE_INSTANCE (i)) 57 IMAGE_INSTANCE_MSWINDOWS_ICON (XIMAGE_INSTANCE (i))
70 58
71 int 59 int
72 mswindows_resize_dibitmap_instance (Lisp_Image_Instance* ii, 60 mswindows_resize_dibitmap_instance (struct Lisp_Image_Instance* ii,
73 struct frame* f, 61 struct frame* f,
74 int newx, int newy); 62 int newx, int newy);
75 HBITMAP 63 HBITMAP
76 mswindows_create_resized_bitmap (Lisp_Image_Instance* ii, 64 mswindows_create_resized_bitmap (struct Lisp_Image_Instance* ii,
77 struct frame* f, 65 struct frame* f,
78 int newx, int newy); 66 int newx, int newy);
79 HBITMAP 67 HBITMAP
80 mswindows_create_resized_mask (Lisp_Image_Instance* ii, 68 mswindows_create_resized_mask (struct Lisp_Image_Instance* ii,
81 struct frame* f, 69 struct frame* f,
82 int newx, int newy); 70 int newx, int newy);
83 void 71 void
84 mswindows_initialize_image_instance_icon (Lisp_Image_Instance* image, 72 mswindows_initialize_image_instance_icon (struct Lisp_Image_Instance* image,
85 int cursor); 73 int cursor);
86 74
87 #define WIDGET_INSTANCE_MSWINDOWS_HANDLE(i) \ 75 #define WIDGET_INSTANCE_MSWINDOWS_HANDLE(i) \
88 (HWND) (IMAGE_INSTANCE_SUBWINDOW_ID (i)) 76 (HWND) (IMAGE_INSTANCE_SUBWINDOW_ID (i))
89 77
90 #define XWIDGET_INSTANCE_MSWINDOWS_HANDLE(i) \ 78 #define XWIDGET_INSTANCE_MSWINDOWS_HANDLE(i) \
91 WIDGET_INSTANCE_MSWINDOWS_HANDLE (XIMAGE_INSTANCE (i)) 79 WIDGET_INSTANCE_MSWINDOWS_HANDLE (XIMAGE_INSTANCE (i))
92 80
93 struct mswindows_subwindow_data
94 {
95 HWND clip_window;
96 };
97
98 #define MSWINDOWS_SUBWINDOW_DATA(i) \
99 ((struct mswindows_subwindow_data *) (i)->data)
100 #define IMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW(i) \
101 (MSWINDOWS_SUBWINDOW_DATA (i)->clip_window)
102
103 #define XIMAGE_INSTANCE_MSWINDOWS_SUBWINDOW_DATA(i) \
104 MSWINDOWS_SUBWINDOW_DATA (XIMAGE_INSTANCE (i))
105 #define XIMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW(i) \
106 IMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW (XIMAGE_INSTANCE (i))
107
108 #define DOMAIN_MSWINDOWS_HANDLE(domain) \
109 ((IMAGE_INSTANCEP (domain) && \
110 XIMAGE_INSTANCE_MSWINDOWS_SUBWINDOW_DATA (domain)) ? \
111 XWIDGET_INSTANCE_MSWINDOWS_HANDLE (domain) : \
112 FRAME_MSWINDOWS_HANDLE (DOMAIN_XFRAME (domain)))
113
114 #endif /* HAVE_MS_WINDOWS */ 81 #endif /* HAVE_MS_WINDOWS */
115 82 #endif /* _XEMACS_GLYPHS_MSW_H_ */
116 #endif /* INCLUDED_glyphs_msw_h_ */