diff dwt/widgets/Display.d @ 38:6e625fa1612d

Shell, some code left
author Frank Benoit <benoit@tionex.de>
date Thu, 10 Jan 2008 07:33:15 +0100
parents 27324bbbac70
children 7fb1ab011933
line wrap: on
line diff
--- a/dwt/widgets/Display.d	Thu Jan 10 05:17:47 2008 +0100
+++ b/dwt/widgets/Display.d	Thu Jan 10 07:33:15 2008 +0100
@@ -923,6 +923,21 @@
 	OS.gdk_window_add_filter  (null, &filterProcFunc, cast(void*)&filterProcCallbackData );
 }
 
+/*
+ * Used by Shell
+ */
+package void doWindowAddFilter( CallbackData* cbdata, GdkWindow* window, GtkWidget* widget ){
+    cbdata.display = this;
+    cbdata.data = widget;
+    OS.gdk_window_add_filter (window, &filterProcFunc, cast(void*)&cbdata );
+}
+
+package void doWindowRemoveFilter( CallbackData* cbdata, GdkWindow* window, GtkWidget* widget ){
+    cbdata.display = this;
+    cbdata.data = widget;
+    OS.gdk_window_remove_filter(window, &filterProcFunc, cast(void*)&cbdata );
+}
+
 Image createImage (char[] name) {
 	auto style = OS.gtk_widget_get_default_style ();
 	char[] buffer = name;
@@ -1442,7 +1457,7 @@
     }
     Widget widget = getWidget (cast(GtkWidget*)callbackData.data);
     if (widget is null) return 0;
-    return widget.filterProc (xEvent, gdkEvent, callbackData.data);
+    return widget.filterProc (cast(XEvent*)xEvent, gdkEvent, callbackData.data);
 }
 
 /**
@@ -3690,13 +3705,14 @@
 	return 0;
 }
 
-int /*long*/ sizeAllocateProc (int /*long*/ handle, int /*long*/ arg0, int /*long*/ user_data) {
+int /*long*/ sizeAllocateProc (GtkWidget* handle, int /*long*/ arg0, int /*long*/ user_data) {
 	Widget widget = getWidget ( cast(GtkWidget*)user_data);
 	if (widget is null) return 0;
 	return widget.sizeAllocateProc (handle, arg0, user_data);
 }
 
-int /*long*/ sizeRequestProcMeth (int /*long*/ handle, int /*long*/ arg0, int /*long*/ user_data) {
+
+int /*long*/ sizeRequestProcMeth (GtkWidget* handle, int /*long*/ arg0, int /*long*/ user_data) {
 	Widget widget = getWidget (cast(GtkWidget*)user_data);
 	if (widget is null) return 0;
 	return widget.sizeRequestProc (handle, arg0, user_data);
@@ -3764,10 +3780,10 @@
 
 private static extern(C) int /*long*/ shellMapProcFunc (int /*long*/ handle, int /*long*/ arg0, int /*long*/ user_data) {
     auto cbdata = cast(CallbackData*)user_data;
-    return cbdata.display.shellMapProc( handle, arg0, cast(int)cbdata.data );
+    return cbdata.display.shellMapProc( cast(GtkWidget*)handle, arg0, cast(int)cbdata.data );
 }
 
-int /*long*/ shellMapProc (int /*long*/ handle, int /*long*/ arg0, int /*long*/ user_data) {
+int /*long*/ shellMapProc (GtkWidget* handle, int /*long*/ arg0, int /*long*/ user_data) {
 	Widget widget = getWidget (cast(GtkWidget*)handle);
 	if (widget is null) return 0;
 	return widget.shellMapProc (handle, arg0, user_data);