Mercurial > hg > xemacs-beta
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_ */ |