]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/win_gtk.h
Cleaned up paint DC cache in ~wxPaintDC to avoid spurious memory warning
[wxWidgets.git] / include / wx / gtk / win_gtk.h
index 38901e8f1dd29b91b445926310ef779ca6bb2645..1029d03f85318539652bcd5500866c4cc4fe492b 100644 (file)
-/////////////////////////////////////////////////////////////////////////////
+////////////////////////////////////////////////////////////////////////////
 // Name:        win_gtk.h
-// Purpose:     wxWindows's GTK base widget
+// Purpose:     wxWindows's GTK base widget = GtkPizza
 // Author:      Robert Roebling
-// Created:     01/02/97
-// Id:
-// Copyright:   (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
+// Id:          $Id$
+// Copyright:   (c) 1998 Robert Roebling
 // Licence:    wxWindows licence
-/////////////////////////////////////////////////////////////////////////////
+/////////////////////////////////////////////////////////////////////////// */
 
 
-#ifndef __GTK_MYFIXED_H__
-#define __GTK_MYFIXED_H__
-
+#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 */
 
 
-#define GTK_MYFIXED(obj)          GTK_CHECK_CAST (obj, gtk_myfixed_get_type (), GtkMyFixed)
-#define GTK_MYFIXED_CLASS(klass)  GTK_CHECK_CLASS_CAST (klass, gtk_myfixed_get_type (), GtkMyFixedClass)
-#define GTK_IS_MYFIXED(obj)       GTK_CHECK_TYPE (obj, gtk_myfixed_get_type ())
+#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 */
+typedef enum
+{
+  GTK_MYSHADOW_NONE,
+  GTK_MYSHADOW_THIN,
+  GTK_MYSHADOW_IN,
+  GTK_MYSHADOW_OUT
+} GtkMyShadowType;
 
-typedef struct _GtkMyFixed        GtkMyFixed;
-typedef struct _GtkMyFixedClass   GtkMyFixedClass;
-typedef struct _GtkMyFixedChild   GtkMyFixedChild;
+typedef struct _GtkPizza        GtkPizza;
+typedef struct _GtkPizzaClass   GtkPizzaClass;
 
-struct _GtkMyFixed
+struct _GtkPizza
 {
   GtkContainer container;
-
   GList *children;
+  GtkMyShadowType shadow_type;
+  
+  guint width;
+  guint height;
+
+  guint xoffset;
+  guint yoffset;
+
+  GdkWindow *bin_window;
+
+  GdkVisibilityState visibility;
+  gulong configure_serial;
+  gint scroll_x;
+  gint scroll_y;
+  
+  gboolean clear_on_draw;
 };
 
-struct _GtkMyFixedClass
+struct _GtkPizzaClass
 {
   GtkContainerClass parent_class;
-};
 
-struct _GtkMyFixedChild
-{
-  GtkWidget *widget;
-  gint16 x;
-  gint16 y;
+  void  (*set_scroll_adjustments)   (GtkPizza     *pizza,
+                                    GtkAdjustment  *hadjustment,
+                                    GtkAdjustment  *vadjustment);
 };
 
-guint      gtk_myfixed_get_type        (void);
-GtkWidget* gtk_myfixed_new             (void);
-void       gtk_myfixed_put             (GtkMyFixed     *myfixed,
-                                        GtkWidget      *widget,
-                                        gint16         x,
-                                        gint16         y);
-void       gtk_myfixed_move            (GtkMyFixed     *myfixed,
+guint      gtk_pizza_get_type        (void);
+GtkWidget* gtk_pizza_new             (void);
+
+void       gtk_pizza_set_shadow_type (GtkPizza     *pizza,
+                                       GtkMyShadowType  type);
+                                       
+void       gtk_pizza_set_clear      (GtkPizza     *pizza,
+                                        gboolean        clear);                
+                                       
+void       gtk_pizza_scroll            (GtkPizza     *pizza,   
+                                         gint         dx,
+                                         gint         dy);
+                                       
+void       gtk_pizza_put             (GtkPizza     *pizza,
                                         GtkWidget      *widget,
-                                        gint16         x,
-                                        gint16         y);
+                                        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 );
+                                       
+void       gtk_pizza_set_size        (GtkPizza     *pizza,
+                                        GtkWidget      *widget,
+                                        gint         x,
+                                        gint         y,
+                                        gint         width,
+                                        gint         height);
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */
 
 
-#endif /* __GTK_MYFIXED_H__ */
+#endif /* __GTK_PIZZA_H__ */