Mercurial > projects > dwt-linux
diff dwt/internal/gtk/OS.d @ 26:09f5459a5014
Display in work
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Tue, 08 Jan 2008 08:07:04 +0100 |
parents | bc06000c0816 |
children | ffa3c27c4328 |
line wrap: on
line diff
--- a/dwt/internal/gtk/OS.d Tue Jan 08 01:23:25 2008 +0100 +++ b/dwt/internal/gtk/OS.d Tue Jan 08 08:07:04 2008 +0100 @@ -28,6 +28,17 @@ dwt.internal.gtk.c.gdkpixbuf; // temporary added, because was not yet available +struct XAnyEvent { + int type; + uint serial; + int send_event; + void * display; + uint window; +} +union XEvent{ + int type; + XAnyEvent xany; +} struct XRenderPictureAttributes{ int repeat; @@ -65,26 +76,80 @@ struct XTransform { int [3][3] matrix; } - struct XRectangle { - short x; - short y; - ushort width; - ushort height; - } -private extern (C) uint XRenderCreatePicture(void *, uint, XRenderPictFormat *, uint, XRenderPictureAttributes *); -private extern (C) XRenderPictFormat * XRenderFindStandardFormat (dwt.internal.gtk.c.cairotypes.Display *dpy, int format); -private extern (C) XRenderPictFormat * XRenderFindVisualFormat (dwt.internal.gtk.c.cairotypes.Display *dpy, void *visual); -private extern (C) void XRenderSetPictureTransform (void *dpy,uint picture, XTransform *transform); -private extern (C) void XRenderSetPictureClipRectangles(void *, uint, int, int, XRectangle *, int); -private extern (C) void XRenderFreePicture(void *, uint); -private extern (C) void XRenderComposite(void *, int, uint, uint, uint, int, int, int, int, int, int, uint, uint); +struct XRectangle { + short x; + short y; + ushort width; + ushort height; +} +struct XExposeEvent { + int type; + uint serial; + int send_event; + void * display; + uint window; + int x; + int y; + int width; + int height; + int count; +} +struct XVisibilityEvent { + int type; + uint serial; + int send_event; + void * display; + uint window; + int state; +} -private extern (C) cairo_font_options_t * pango_cairo_context_get_font_options(void *); -private extern (C) void pango_cairo_context_set_font_options(void *, cairo_font_options_t *); +struct XButtonEvent { + int type; + uint serial; + int send_event; + void * display; + uint window; + uint root; + uint subwindow; + uint time; + int x; + int y; + int x_root; + int y_root; + uint state; + uint button; + int same_screen; +} + +private extern (C){ + GdkWindow * gdk_window_lookup(uint); + uint XRenderCreatePicture(void *, uint, XRenderPictFormat *, uint, XRenderPictureAttributes *); + XRenderPictFormat * XRenderFindStandardFormat (dwt.internal.gtk.c.cairotypes.Display *dpy, int format); + XRenderPictFormat * XRenderFindVisualFormat (dwt.internal.gtk.c.cairotypes.Display *dpy, void *visual); + void XRenderSetPictureTransform (void *dpy,uint picture, XTransform *transform); + void XRenderSetPictureClipRectangles(void *, uint, int, int, XRectangle *, int); + void XRenderFreePicture(void *, uint); + void XRenderComposite(void *, int, uint, uint, uint, int, int, int, int, int, int, uint, uint); + + cairo_font_options_t * pango_cairo_context_get_font_options(void *); + void pango_cairo_context_set_font_options(void *, cairo_font_options_t *); + + alias int function(void *, XEvent *, void *) _BCD_func__1812; + int XCheckIfEvent(void *, XEvent *, _BCD_func__1812, void *); + + extern uint gtk_major_version; + extern uint gtk_minor_version; + extern uint gtk_micro_version; +} + + //void function(GtkWidget* widget, gchar* firstPropertyName, ... )gtk_widget_style_get; private void gtk_widget_style_get1( GtkWidget* widget, gchar* firstPropertyName, int* res ){ gtk_widget_style_get( widget, firstPropertyName, res, null ); } +private void g_object_get1( void* obj, gchar* firstPropertyName, int* res ){ + g_object_get( obj, firstPropertyName, res, null ); +} private extern(C) PangoLayout *pango_cairo_create_layout (cairo_t *cr); @@ -122,25 +187,24 @@ //struct Visual{} //private extern(C) Visual* gdk_x11_visual_get_xvisual(GdkVisual* visual); -GdkDisplay* GDK_DISPLAY(){ - return gtk_display; -} +private extern (C) GdkDisplay* GDK_DISPLAY(); -XID GDK_PIXMAP_XID(GdkDrawable* win){ - return gdk_x11_drawable_get_xid(win); -} +private extern (C) XID GDK_PIXMAP_XID(GdkDrawable* win); +struct XErrorEvent {} -struct XErrorEvent {} +private extern (C) bool GDK_WINDOWING_X11(); +private extern (C) int XFlush(void *); public alias extern(C) int function(dwt.internal.gtk.c.cairotypes.Display*) XIOErrorHandler; public alias extern(C) int function(dwt.internal.gtk.c.cairotypes.Display*, XErrorEvent *) XErrorHandler; -extern (C) XIOErrorHandler XSetIOErrorHandler(XIOErrorHandler); -extern (C) XErrorHandler XSetErrorHandler(XErrorHandler); - -int PANGO_PIXELS( int v ){ - return (v+512) >> 10; -} - +private extern (C) XIOErrorHandler XSetIOErrorHandler(XIOErrorHandler); +private extern (C) XErrorHandler XSetErrorHandler(XErrorHandler); +private extern (C) int PANGO_PIXELS( int v ); +private GType GTK_TYPE_FIXED(); +private GType GTK_TYPE_CELL_RENDERER_TEXT(); +private GType GTK_TYPE_CELL_RENDERER_PIXBUF(); +private GType GTK_TYPE_CELL_RENDERER_TOGGLE(); +private bool GTK_IS_WINDOW(GtkWidget *); template NameOfFunc(alias f) { // Note: highly dependent on the .stringof formatting @@ -784,34 +848,40 @@ public static const int PictOpSrc = 1; public static const int PictOpOver = 3; - -/++ + public static int gtk_major_version(){ + return .gtk_major_version; + } + public static int gtk_minor_version(){ + return .gtk_minor_version; + } + public static int gtk_micro_version(){ + return .gtk_micro_version; + } // mixin ForwardGtkOsCFunc!(localeconv_decimal_point); // mixin ForwardGtkOsCFunc!(realpath); - mixin ForwardGtkOsCFunc!(X_EVENT_TYPE); - mixin ForwardGtkOsCFunc!(X_EVENT_WINDOW); +// mixin ForwardGtkOsCFunc!(X_EVENT_TYPE); +// mixin ForwardGtkOsCFunc!(X_EVENT_WINDOW); // mixin ForwardGtkOsCFunc!(.Call); // mixin ForwardGtkOsCFunc!(.call ); - mixin ForwardGtkOsCFunc!(GDK_WINDOWING_X11); -++/ + mixin ForwardGtkOsCFunc!(.GDK_WINDOWING_X11); mixin ForwardGtkOsCFunc!(.GDK_PIXMAP_XID); -/++ - mixin ForwardGtkOsCFunc!(.XCheckMaskEvent); - mixin ForwardGtkOsCFunc!(.XCheckWindowEvent); - mixin ForwardGtkOsCFunc!(.XCheckIfEvent); - mixin ForwardGtkOsCFunc!(.XDefaultScreen); - mixin ForwardGtkOsCFunc!(.XDefaultRootWindow); + +// mixin ForwardGtkOsCFunc!(.XCheckMaskEvent); +// mixin ForwardGtkOsCFunc!(.XCheckWindowEvent); + mixin ForwardGtkOsCFunc!(.XCheckIfEvent); +// mixin ForwardGtkOsCFunc!(.XDefaultScreen); +// mixin ForwardGtkOsCFunc!(.XDefaultRootWindow); mixin ForwardGtkOsCFunc!(.XFlush); - mixin ForwardGtkOsCFunc!(.XFree); - mixin ForwardGtkOsCFunc!(.XGetSelectionOwner); - mixin ForwardGtkOsCFunc!(.XInternAtom); - mixin ForwardGtkOsCFunc!(.XQueryTree); - mixin ForwardGtkOsCFunc!(.XKeysymToKeycode); - mixin ForwardGtkOsCFunc!(.XListProperties); - mixin ForwardGtkOsCFunc!(.XReconfigureWMWindow); - mixin ForwardGtkOsCFunc!(.XSendEvent); - +/ +// mixin ForwardGtkOsCFunc!(.XFree); +// mixin ForwardGtkOsCFunc!(.XGetSelectionOwner); +// mixin ForwardGtkOsCFunc!(.XInternAtom); +// mixin ForwardGtkOsCFunc!(.XQueryTree); +// mixin ForwardGtkOsCFunc!(.XKeysymToKeycode); +// mixin ForwardGtkOsCFunc!(.XListProperties); +// mixin ForwardGtkOsCFunc!(.XReconfigureWMWindow); +// mixin ForwardGtkOsCFunc!(.XSendEvent); + mixin ForwardGtkOsCFunc!(.XSetIOErrorHandler); mixin ForwardGtkOsCFunc!(.XSetErrorHandler); //mixin ForwardGtkOsCFunc!(.XSetInputFocus); @@ -830,15 +900,14 @@ //mixin ForwardGtkOsCFunc!(.gdk_x11_screen_lookup_visual); //mixin ForwardGtkOsCFunc!(.gdk_x11_screen_get_window_manager_name); mixin ForwardGtkOsCFunc!(.gdk_x11_visual_get_xvisual); - /+ - mixin ForwardGtkOsCFunc!(.gdk_pixmap_foreign_new); +// mixin ForwardGtkOsCFunc!(.gdk_pixmap_foreign_new); mixin ForwardGtkOsCFunc!(.gdk_window_lookup); mixin ForwardGtkOsCFunc!(.gdk_window_add_filter); - mixin ForwardGtkOsCFunc!(.gdk_window_remove_filter); +// mixin ForwardGtkOsCFunc!(.gdk_window_remove_filter); /** X render natives and constants */ // mixin ForwardGtkOsCFunc!(XRenderPictureAttributes_sizeof); - +/ + mixin ForwardGtkOsCFunc!(.XRenderQueryExtension); mixin ForwardGtkOsCFunc!(.XRenderQueryVersion); mixin ForwardGtkOsCFunc!(.XRenderCreatePicture); @@ -851,43 +920,41 @@ //mixin ForwardGtkOsCFunc!(Call ); mixin ForwardGtkOsCFunc!(.GDK_DISPLAY); mixin ForwardGtkOsCFunc!(.GDK_ROOT_PARENT); - /+ - mixin ForwardGtkOsCFunc!(.GDK_TYPE_COLOR); - mixin ForwardGtkOsCFunc!(.GDK_TYPE_PIXBUF); - mixin ForwardGtkOsCFunc!(.GTK_IS_BUTTON); - mixin ForwardGtkOsCFunc!(.GTK_IS_WINDOW); - mixin ForwardGtkOsCFunc!(.GTK_IS_CELL_RENDERER_PIXBUF); - mixin ForwardGtkOsCFunc!(.GTK_IS_CELL_RENDERER_TEXT); - mixin ForwardGtkOsCFunc!(.GTK_IS_CELL_RENDERER_TOGGLE); - mixin ForwardGtkOsCFunc!(.GTK_IS_CONTAINER); - mixin ForwardGtkOsCFunc!(.GTK_IS_IMAGE_MENU_ITEM); - mixin ForwardGtkOsCFunc!(.GTK_IS_PLUG); - mixin ForwardGtkOsCFunc!(.GTK_STOCK_CANCEL); - mixin ForwardGtkOsCFunc!(.GTK_STOCK_OK); - mixin ForwardGtkOsCFunc!(.GTK_TYPE_CELL_RENDERER_TEXT); - mixin ForwardGtkOsCFunc!(.GTK_TYPE_CELL_RENDERER_PIXBUF); - mixin ForwardGtkOsCFunc!(.GTK_TYPE_CELL_RENDERER_TOGGLE); - mixin ForwardGtkOsCFunc!(.GTK_TYPE_FIXED); - mixin ForwardGtkOsCFunc!(.GTK_TYPE_MENU); - mixin ForwardGtkOsCFunc!(.GTK_TYPE_WIDGET); - mixin ForwardGtkOsCFunc!(.GTK_WIDGET_FLAGS); - mixin ForwardGtkOsCFunc!(.GTK_WIDGET_STATE); - mixin ForwardGtkOsCFunc!(.GTK_WIDGET_HAS_DEFAULT); - mixin ForwardGtkOsCFunc!(.GTK_WIDGET_HAS_FOCUS); - mixin ForwardGtkOsCFunc!(.GTK_WIDGET_IS_SENSITIVE); - mixin ForwardGtkOsCFunc!(.GTK_WIDGET_MAPPED); - mixin ForwardGtkOsCFunc!(.GTK_WIDGET_SENSITIVE); - mixin ForwardGtkOsCFunc!(.GTK_WIDGET_SET_FLAGS); - mixin ForwardGtkOsCFunc!(.GTK_WIDGET_UNSET_FLAGS); - mixin ForwardGtkOsCFunc!(.GTK_WIDGET_VISIBLE); - mixin ForwardGtkOsCFunc!(.G_OBJECT_CLASS ); - mixin ForwardGtkOsCFunc!(.G_OBJECT_GET_CLASS ); - mixin ForwardGtkOsCFunc!(.G_OBJECT_TYPE_NAME ); - mixin ForwardGtkOsCFunc!(.G_TYPE_BOOLEAN); - mixin ForwardGtkOsCFunc!(.G_TYPE_INT); - mixin ForwardGtkOsCFunc!(.G_OBJECT_TYPE ); - mixin ForwardGtkOsCFunc!(.G_TYPE_STRING); - +/ +// mixin ForwardGtkOsCFunc!(.GDK_TYPE_COLOR); +// mixin ForwardGtkOsCFunc!(.GDK_TYPE_PIXBUF); +// mixin ForwardGtkOsCFunc!(.GTK_IS_BUTTON); + mixin ForwardGtkOsCFunc!(.GTK_IS_WINDOW); +// mixin ForwardGtkOsCFunc!(.GTK_IS_CELL_RENDERER_PIXBUF); +// mixin ForwardGtkOsCFunc!(.GTK_IS_CELL_RENDERER_TEXT); +// mixin ForwardGtkOsCFunc!(.GTK_IS_CELL_RENDERER_TOGGLE); +// mixin ForwardGtkOsCFunc!(.GTK_IS_CONTAINER); +// mixin ForwardGtkOsCFunc!(.GTK_IS_IMAGE_MENU_ITEM); +// mixin ForwardGtkOsCFunc!(.GTK_IS_PLUG); +// mixin ForwardGtkOsCFunc!(.GTK_STOCK_CANCEL); +// mixin ForwardGtkOsCFunc!(.GTK_STOCK_OK); + mixin ForwardGtkOsCFunc!(.GTK_TYPE_CELL_RENDERER_TEXT); + mixin ForwardGtkOsCFunc!(.GTK_TYPE_CELL_RENDERER_PIXBUF); + mixin ForwardGtkOsCFunc!(.GTK_TYPE_CELL_RENDERER_TOGGLE); + mixin ForwardGtkOsCFunc!(.GTK_TYPE_FIXED); +// mixin ForwardGtkOsCFunc!(.GTK_TYPE_MENU); +// mixin ForwardGtkOsCFunc!(.GTK_TYPE_WIDGET); +// mixin ForwardGtkOsCFunc!(.GTK_WIDGET_FLAGS); +// mixin ForwardGtkOsCFunc!(.GTK_WIDGET_STATE); +// mixin ForwardGtkOsCFunc!(.GTK_WIDGET_HAS_DEFAULT); +// mixin ForwardGtkOsCFunc!(.GTK_WIDGET_HAS_FOCUS); +// mixin ForwardGtkOsCFunc!(.GTK_WIDGET_IS_SENSITIVE); +// mixin ForwardGtkOsCFunc!(.GTK_WIDGET_MAPPED); +// mixin ForwardGtkOsCFunc!(.GTK_WIDGET_SENSITIVE); +// mixin ForwardGtkOsCFunc!(.GTK_WIDGET_SET_FLAGS); +// mixin ForwardGtkOsCFunc!(.GTK_WIDGET_UNSET_FLAGS); +// mixin ForwardGtkOsCFunc!(.GTK_WIDGET_VISIBLE); +// mixin ForwardGtkOsCFunc!(.G_OBJECT_CLASS ); +// mixin ForwardGtkOsCFunc!(.G_OBJECT_GET_CLASS ); +// mixin ForwardGtkOsCFunc!(.G_OBJECT_TYPE_NAME ); +// mixin ForwardGtkOsCFunc!(.G_TYPE_BOOLEAN); +// mixin ForwardGtkOsCFunc!(.G_TYPE_INT); +// mixin ForwardGtkOsCFunc!(.G_OBJECT_TYPE ); +// mixin ForwardGtkOsCFunc!(.G_TYPE_STRING); mixin ForwardGtkOsCFunc!(.PANGO_PIXELS); //mixin ForwardGtkOsCFunc!(.PANGO_TYPE_FONT_DESCRIPTION); @@ -930,7 +997,7 @@ mixin ForwardGtkOsCFunc!(.g_log_remove_handler); mixin ForwardGtkOsCFunc!(.g_log_set_handler); mixin ForwardGtkOsCFunc!(.g_malloc); - mixin ForwardGtkOsCFunc!(.g_object_get); + mixin ForwardGtkOsCFunc!(.g_object_get1); mixin ForwardGtkOsCFunc!(.g_object_get_qdata); mixin ForwardGtkOsCFunc!(.g_object_new ); mixin ForwardGtkOsCFunc!(.g_object_ref); @@ -1922,14 +1989,14 @@ GtkIMContext* GTK_TEXTVIEW_IM_CONTEXT( GtkTextView* arg0) { return arg0.im_context; } - GtkWidget* GTK_TOOLTIPS_TIP_WINDOW( GtkTooltips* arg0) + static GtkWidget* GTK_TOOLTIPS_TIP_WINDOW( GtkTooltips* arg0) { return arg0.tip_window; } - void GTK_TOOLTIPS_SET_ACTIVE( GtkTooltips* arg0, GtkTooltipsData* arg1 ) + static void GTK_TOOLTIPS_SET_ACTIVE( GtkTooltips* arg0, GtkTooltipsData* arg1 ) { arg0.active_tips_data = arg1; } - int GDK_EVENT_TYPE( GdkEvent* arg0 ) + static int GDK_EVENT_TYPE( GdkEvent* arg0 ) { return arg0.type; } - GdkWindow* GDK_EVENT_WINDOW( GdkEventAny* arg0 ) + static GdkWindow* GDK_EVENT_WINDOW( GdkEventAny* arg0 ) { return arg0.window; } /+ int X_EVENT_TYPE( XEvent* arg0 )