+#define WIDGET_INSTANCE_MSWINDOWS_HANDLE(i) \
+ (HWND) (IMAGE_INSTANCE_SUBWINDOW_ID (i))
+
+#define XWIDGET_INSTANCE_MSWINDOWS_HANDLE(i) \
+ WIDGET_INSTANCE_MSWINDOWS_HANDLE (XIMAGE_INSTANCE (i))
+
+struct mswindows_subwindow_data
+{
+ HWND clip_window;
+};
+
+#define MSWINDOWS_SUBWINDOW_DATA(i) \
+ ((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)))
+