]> git.saurik.com Git - wxWidgets.git/blob - include/wx/gtk1/win_gtk.h
?jl
[wxWidgets.git] / include / wx / gtk1 / win_gtk.h
1 /* ///////////////////////////////////////////////////////////////////////////
2 // Name: win_gtk.h
3 // Purpose: wxWindows's GTK base widget = GtkPizza
4 // Author: Robert Roebling
5 // Id: $Id$
6 // Copyright: (c) 1998 Robert Roebling
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////// */
9
10
11 #ifndef __GTK_PIZZA_H__
12 #define __GTK_PIZZA_H__
13
14 #include <gdk/gdk.h>
15 #include <gtk/gtkcontainer.h>
16 #include <gtk/gtkadjustment.h>
17 #include <gtk/gtkfeatures.h>
18
19 #ifdef __cplusplus
20 extern "C" {
21 #endif /* __cplusplus */
22
23
24 #define GTK_PIZZA(obj) GTK_CHECK_CAST (obj, gtk_pizza_get_type (), GtkPizza)
25 #define GTK_PIZZA_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, gtk_pizza_get_type (), GtkPizzaClass)
26 #define GTK_IS_PIZZA(obj) GTK_CHECK_TYPE (obj, gtk_pizza_get_type ())
27
28 /* Shadow types */
29 typedef enum
30 {
31 GTK_MYSHADOW_NONE,
32 GTK_MYSHADOW_THIN,
33 GTK_MYSHADOW_IN,
34 GTK_MYSHADOW_OUT
35 } GtkMyShadowType;
36
37 typedef struct _GtkPizza GtkPizza;
38 typedef struct _GtkPizzaClass GtkPizzaClass;
39
40 struct _GtkPizza
41 {
42 GtkContainer container;
43 GList *children;
44 GtkMyShadowType shadow_type;
45
46 guint width;
47 guint height;
48
49 guint xoffset;
50 guint yoffset;
51
52 GdkWindow *bin_window;
53
54 GdkVisibilityState visibility;
55 gulong configure_serial;
56 gint scroll_x;
57 gint scroll_y;
58
59 gboolean clear_on_draw;
60 };
61
62 struct _GtkPizzaClass
63 {
64 GtkContainerClass parent_class;
65
66 void (*set_scroll_adjustments) (GtkPizza *pizza,
67 GtkAdjustment *hadjustment,
68 GtkAdjustment *vadjustment);
69 };
70
71 guint gtk_pizza_get_type (void);
72 GtkWidget* gtk_pizza_new (void);
73
74 void gtk_pizza_set_shadow_type (GtkPizza *pizza,
75 GtkMyShadowType type);
76
77 void gtk_pizza_set_clear (GtkPizza *pizza,
78 gboolean clear);
79
80 void gtk_pizza_scroll (GtkPizza *pizza,
81 gint dx,
82 gint dy);
83
84 void gtk_pizza_put (GtkPizza *pizza,
85 GtkWidget *widget,
86 gint x,
87 gint y,
88 gint width,
89 gint height);
90
91 void gtk_pizza_move (GtkPizza *pizza,
92 GtkWidget *widget,
93 gint x,
94 gint y );
95
96 void gtk_pizza_resize (GtkPizza *pizza,
97 GtkWidget *widget,
98 gint width,
99 gint height );
100
101 void gtk_pizza_set_size (GtkPizza *pizza,
102 GtkWidget *widget,
103 gint x,
104 gint y,
105 gint width,
106 gint height);
107 #ifdef __cplusplus
108 }
109 #endif /* __cplusplus */
110
111
112 #endif /* __GTK_PIZZA_H__ */