]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/win_gtk.h
Implement wxSetCusorEvent better than before.
[wxWidgets.git] / include / wx / gtk / win_gtk.h
index b4bd331726536463cf773a4604ba21e2bbebaf8d..8b8769b21488595ff9dc17c5d658c362632d5bd3 100644 (file)
@@ -1,27 +1,25 @@
 /* ///////////////////////////////////////////////////////////////////////////
 // Name:        win_gtk.h
-// Purpose:     wxWindows's GTK base widget = GtkPizza
+// Purpose:     wxWidgets's GTK base widget = GtkPizza
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////// */
 
 
 #ifndef __GTK_PIZZA_H__
 #define __GTK_PIZZA_H__
 
-#include <gdk/gdk.h>
-#include <gtk/gtkcontainer.h>
-#include <gtk/gtkadjustment.h>
-#include <gtk/gtkfeatures.h>
-
 #ifdef __cplusplus
 extern "C" {
 #endif /* __cplusplus */
 
+#include <gtk/gtkcontainer.h>
+
+#include "wx/dlimpexp.h"
+
 #define GTK_PIZZA(obj)          GTK_CHECK_CAST (obj, gtk_pizza_get_type (), GtkPizza)
-#define GTK_PIZZA_CLASS(klass)  GTK_CHECK_CLASS_CAST (klass, gtk_pizza_get_type (), GtkPizzaClass)
 #define GTK_IS_PIZZA(obj)       GTK_CHECK_TYPE (obj, gtk_pizza_get_type ())
 
 /* Shadow types */
@@ -33,15 +31,25 @@ typedef enum
     GTK_MYSHADOW_OUT
 } GtkMyShadowType;
 
+typedef struct _GtkPizzaChild    GtkPizzaChild;
 typedef struct _GtkPizza        GtkPizza;
 typedef struct _GtkPizzaClass   GtkPizzaClass;
 
+struct _GtkPizzaChild
+{
+    GtkWidget *widget;
+    gint x;
+    gint y;
+    gint width;
+    gint height;
+};
+
 struct _GtkPizza
 {
     GtkContainer container;
     GList *children;
     GtkMyShadowType shadow_type;
-  
+
     guint width;
     guint height;
 
@@ -50,13 +58,10 @@ struct _GtkPizza
 
     GdkWindow *bin_window;
 
-    GdkVisibilityState visibility;
-    gulong configure_serial;
     gint scroll_x;
     gint scroll_y;
-  
-    gboolean clear_on_draw;
-    gboolean use_filter;
+
+    gboolean external_expose;
 };
 
 struct _GtkPizzaClass
@@ -64,43 +69,37 @@ struct _GtkPizzaClass
   GtkContainerClass parent_class;
 
   void  (*set_scroll_adjustments)   (GtkPizza     *pizza,
-                                    GtkAdjustment  *hadjustment,
-                                    GtkAdjustment  *vadjustment);
+                                     GtkAdjustment  *hadjustment,
+                                     GtkAdjustment  *vadjustment);
 };
 
-guint      gtk_pizza_get_type        (void);
+WXDLLIMPEXP_CORE
+GtkType    gtk_pizza_get_type        (void);
+WXDLLIMPEXP_CORE
 GtkWidget* gtk_pizza_new             (void);
 
+WXDLLIMPEXP_CORE
 void       gtk_pizza_set_shadow_type (GtkPizza          *pizza,
-                                                     GtkMyShadowType    type);
-                                       
-void       gtk_pizza_set_clear       (GtkPizza          *pizza,
-                                      gboolean           clear);               
-                                       
-void       gtk_pizza_set_filter      (GtkPizza          *pizza,
-                                      gboolean           use);         
-                                       
-void       gtk_pizza_scroll          (GtkPizza          *pizza,        
+                                      GtkMyShadowType    type);
+
+WXDLLIMPEXP_CORE
+void       gtk_pizza_set_external    (GtkPizza          *pizza,
+                                      gboolean           expose);
+
+WXDLLIMPEXP_CORE
+void       gtk_pizza_scroll          (GtkPizza          *pizza,
                                       gint               dx,
                                       gint               dy);
-                                       
+
+WXDLLIMPEXP_CORE
 void       gtk_pizza_put             (GtkPizza          *pizza,
                                       GtkWidget         *widget,
                                       gint               x,
                                       gint               y,
-                                                         gint               width,
-                                                         gint               height);
-
-void       gtk_pizza_move            (GtkPizza          *pizza,
-                                      GtkWidget         *widget,
-                                      gint               x,
-                                      gint               y );
-                                       
-void       gtk_pizza_resize          (GtkPizza          *pizza,
-                                      GtkWidget         *widget,
                                       gint               width,
-                                      gint               height );
-                                       
+                                      gint               height);
+
+WXDLLIMPEXP_CORE
 void       gtk_pizza_set_size        (GtkPizza          *pizza,
                                       GtkWidget         *widget,
                                       gint               x,