X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/da048e3d4c244a0d0b42e6e6970ad895ea948a53..3056dddc5438f7273ac6c75d8396520cd798812c:/include/wx/gtk/win_gtk.h diff --git a/include/wx/gtk/win_gtk.h b/include/wx/gtk/win_gtk.h index 1029d03f85..f98a775a3d 100644 --- a/include/wx/gtk/win_gtk.h +++ b/include/wx/gtk/win_gtk.h @@ -1,112 +1,38 @@ /* /////////////////////////////////////////////////////////////////////////// // Name: win_gtk.h -// Purpose: wxWindows's GTK base widget = GtkPizza +// Purpose: native GTK+ widget for wxWindow // Author: Robert Roebling // Id: $Id$ // Copyright: (c) 1998 Robert Roebling -// Licence: wxWindows licence +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////// */ +#ifndef _WX_GTK_PIZZA_H_ +#define _WX_GTK_PIZZA_H_ -#ifndef __GTK_PIZZA_H__ -#define __GTK_PIZZA_H__ +#include -#include -#include -#include -#include +#define WX_PIZZA(obj) G_TYPE_CHECK_INSTANCE_CAST(obj, wxPizza::type(), wxPizza) +#define WX_IS_PIZZA(obj) G_TYPE_CHECK_INSTANCE_TYPE(obj, wxPizza::type()) -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - - -#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 +struct WXDLLIMPEXP_CORE wxPizza { - GTK_MYSHADOW_NONE, - GTK_MYSHADOW_THIN, - GTK_MYSHADOW_IN, - GTK_MYSHADOW_OUT -} GtkMyShadowType; - -typedef struct _GtkPizza GtkPizza; -typedef struct _GtkPizzaClass GtkPizzaClass; - -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; + // borders styles which can be used with wxPizza + enum { BORDER_STYLES = + wxBORDER_SIMPLE | wxBORDER_RAISED | wxBORDER_SUNKEN | wxBORDER_THEME }; + + static GtkWidget* New(long windowStyle = 0); + static GType type(); + void move(GtkWidget* widget, int x, int y); + void scroll(int dx, int dy); + void get_border_widths(int& x, int& y); + + GtkFixed m_fixed; + GdkWindow* m_backing_window; + int m_scroll_x; + int m_scroll_y; + int m_border_style; + bool m_is_scrollable; }; -struct _GtkPizzaClass -{ - GtkContainerClass parent_class; - - void (*set_scroll_adjustments) (GtkPizza *pizza, - GtkAdjustment *hadjustment, - GtkAdjustment *vadjustment); -}; - -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, - 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_PIZZA_H__ */ +#endif // _WX_GTK_PIZZA_H_