X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fxemacs-chise.git.1;a=blobdiff_plain;f=src%2Fglyphs-msw.h;h=c2cba15f3cc79b5220f5fa2dd0db73c46f34e27a;hp=dbfd85ef8c87387e09be6debbff050b34ea8ebc3;hb=14ac73276fa152e8f0b74602792afc0b9c3236c9;hpb=3890a2e3064a7f562107c58e59d928284ec04741 diff --git a/src/glyphs-msw.h b/src/glyphs-msw.h index dbfd85e..c2cba15 100644 --- a/src/glyphs-msw.h +++ b/src/glyphs-msw.h @@ -36,6 +36,7 @@ struct mswindows_image_instance_data { HBITMAP* bitmaps; HICON icon; + int real_width, real_height; }; #define MSWINDOWS_IMAGE_INSTANCE_DATA(i) \ @@ -51,6 +52,10 @@ struct mswindows_image_instance_data (*(HBITMAP*)&(IMAGE_INSTANCE_PIXMAP_MASK (i))) /* Make it lvalue */ #define IMAGE_INSTANCE_MSWINDOWS_ICON(i) \ (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->icon) +#define IMAGE_INSTANCE_MSWINDOWS_BITMAP_REAL_WIDTH(i) \ + (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->real_width) +#define IMAGE_INSTANCE_MSWINDOWS_BITMAP_REAL_HEIGHT(i) \ + (MSWINDOWS_IMAGE_INSTANCE_DATA (i)->real_height) #define XIMAGE_INSTANCE_MSWINDOWS_BITMAP(i) \ IMAGE_INSTANCE_MSWINDOWS_BITMAP (XIMAGE_INSTANCE (i)) @@ -91,14 +96,21 @@ struct mswindows_subwindow_data }; #define MSWINDOWS_SUBWINDOW_DATA(i) \ -((struct mswindows_subwindow_data *) (i)->data) - + ((struct mswindows_subwindow_data *) (i)->data) #define IMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW(i) \ (MSWINDOWS_SUBWINDOW_DATA (i)->clip_window) +#define XIMAGE_INSTANCE_MSWINDOWS_SUBWINDOW_DATA(i) \ + MSWINDOWS_SUBWINDOW_DATA (XIMAGE_INSTANCE (i)) #define XIMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW(i) \ IMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW (XIMAGE_INSTANCE (i)) +#define DOMAIN_MSWINDOWS_HANDLE(domain) \ + ((IMAGE_INSTANCEP (domain) && \ + XIMAGE_INSTANCE_MSWINDOWS_SUBWINDOW_DATA (domain)) ? \ + XWIDGET_INSTANCE_MSWINDOWS_HANDLE (domain) : \ + FRAME_MSWINDOWS_HANDLE (DOMAIN_XFRAME (domain))) + #endif /* HAVE_MS_WINDOWS */ #endif /* INCLUDED_glyphs_msw_h_ */