/* ///////////////////////////////////////////////////////////////////////////
// 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 */
-typedef enum
-{
- GTK_MYSHADOW_NONE,
- GTK_MYSHADOW_THIN,
- GTK_MYSHADOW_IN,
- 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;
-
- guint xoffset;
- guint yoffset;
+ guint m_xoffset;
+ guint m_yoffset;
+
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
-{
- GtkContainerClass parent_class;
+WXDLLIMPEXP_CORE
+GtkType gtk_pizza_get_type (void);
+WXDLLIMPEXP_CORE
+GtkWidget* gtk_pizza_new (void);
- void (*set_scroll_adjustments) (GtkPizza *pizza,
- GtkAdjustment *hadjustment,
- GtkAdjustment *vadjustment);
-};
+/* accessors */
+
+WXDLLIMPEXP_CORE
+gint gtk_pizza_get_xoffset (GtkPizza *pizza);
+WXDLLIMPEXP_CORE
+gint gtk_pizza_get_yoffset (GtkPizza *pizza);
+WXDLLIMPEXP_CORE
+void gtk_pizza_set_xoffset (GtkPizza *pizza, gint xoffset);
+WXDLLIMPEXP_CORE
+void gtk_pizza_set_yoffset (GtkPizza *pizza, gint yoffset);
+
+
+WXDLLIMPEXP_CORE
+gint gtk_pizza_get_rtl_offset (GtkPizza *pizza);
-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_set_filter (GtkPizza *pizza,
- gboolean use);
-
-void gtk_pizza_set_external (GtkPizza *pizza,
- gboolean expose);
-
-void gtk_pizza_scroll (GtkPizza *pizza,
+WXDLLIMPEXP_CORE
+void gtk_pizza_scroll (GtkPizza *pizza,
gint dx,
gint dy);
-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);
-
-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,