]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk1/win_gtk.h
Add wxCairoLibrary (not yet built)
[wxWidgets.git] / include / wx / gtk1 / win_gtk.h
index b4bd331726536463cf773a4604ba21e2bbebaf8d..78cbe0b531ae327c91656096207425be697c8b76 100644 (file)
@@ -1,24 +1,27 @@
 /* ///////////////////////////////////////////////////////////////////////////
-// Name:        win_gtk.h
-// Purpose:     wxWindows's GTK base widget = GtkPizza
+// Name:        wx/gtk1/win_gtk.h
+// 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__
 
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
 #include <gdk/gdk.h>
+#include <gdk/gdkx.h>
 #include <gtk/gtkcontainer.h>
 #include <gtk/gtkadjustment.h>
 #include <gtk/gtkfeatures.h>
 
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
+#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)
@@ -33,15 +36,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;
 
@@ -54,9 +67,10 @@ struct _GtkPizza
     gulong configure_serial;
     gint scroll_x;
     gint scroll_y;
-  
+
     gboolean clear_on_draw;
     gboolean use_filter;
+    gboolean external_expose;
 };
 
 struct _GtkPizzaClass
@@ -64,43 +78,61 @@ 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);
-                                       
+                                      GtkMyShadowType    type);
+
+WXDLLIMPEXP_CORE
 void       gtk_pizza_set_clear       (GtkPizza          *pizza,
-                                      gboolean           clear);               
-                                       
+                                      gboolean           clear);
+
+WXDLLIMPEXP_CORE
 void       gtk_pizza_set_filter      (GtkPizza          *pizza,
-                                      gboolean           use);         
-                                       
-void       gtk_pizza_scroll          (GtkPizza          *pizza,        
+                                      gboolean           use);
+
+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
+gint       gtk_pizza_child_resized   (GtkPizza          *pizza,
+                                      GtkWidget         *widget);
+
+WXDLLIMPEXP_CORE
 void       gtk_pizza_put             (GtkPizza          *pizza,
                                       GtkWidget         *widget,
                                       gint               x,
                                       gint               y,
-                                                         gint               width,
-                                                         gint               height);
+                                      gint               width,
+                                      gint               height);
 
+WXDLLIMPEXP_CORE
 void       gtk_pizza_move            (GtkPizza          *pizza,
                                       GtkWidget         *widget,
                                       gint               x,
                                       gint               y );
-                                       
+
+WXDLLIMPEXP_CORE
 void       gtk_pizza_resize          (GtkPizza          *pizza,
                                       GtkWidget         *widget,
                                       gint               width,
                                       gint               height );
-                                       
+
+WXDLLIMPEXP_CORE
 void       gtk_pizza_set_size        (GtkPizza          *pizza,
                                       GtkWidget         *widget,
                                       gint               x,