]> git.saurik.com Git - wxWidgets.git/blob - include/wx/gtk1/win_gtk.h
no message
[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 #define GTK_PIZZA(obj) GTK_CHECK_CAST (obj, gtk_pizza_get_type (), GtkPizza)
24 #define GTK_PIZZA_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, gtk_pizza_get_type (), GtkPizzaClass)
25 #define GTK_IS_PIZZA(obj) GTK_CHECK_TYPE (obj, gtk_pizza_get_type ())
26
27 /* Shadow types */
28 typedef enum
29 {
30 GTK_MYSHADOW_NONE,
31 GTK_MYSHADOW_THIN,
32 GTK_MYSHADOW_IN,
33 GTK_MYSHADOW_OUT
34 } GtkMyShadowType;
35
36 typedef struct _GtkPizzaChild GtkPizzaChild;
37 typedef struct _GtkPizza GtkPizza;
38 typedef struct _GtkPizzaClass GtkPizzaClass;
39
40 struct _GtkPizzaChild
41 {
42 GtkWidget *widget;
43 gint x;
44 gint y;
45 gint width;
46 gint height;
47 };
48
49 struct _GtkPizza
50 {
51 GtkContainer container;
52 GList *children;
53 GtkMyShadowType shadow_type;
54
55 guint width;
56 guint height;
57
58 guint xoffset;
59 guint yoffset;
60
61 GdkWindow *bin_window;
62
63 GdkVisibilityState visibility;
64 gulong configure_serial;
65 gint scroll_x;
66 gint scroll_y;
67
68 gboolean clear_on_draw;
69 gboolean use_filter;
70 };
71
72 struct _GtkPizzaClass
73 {
74 GtkContainerClass parent_class;
75
76 void (*set_scroll_adjustments) (GtkPizza *pizza,
77 GtkAdjustment *hadjustment,
78 GtkAdjustment *vadjustment);
79 };
80
81 guint gtk_pizza_get_type (void);
82 GtkWidget* gtk_pizza_new (void);
83
84 void gtk_pizza_set_shadow_type (GtkPizza *pizza,
85 GtkMyShadowType type);
86
87 void gtk_pizza_set_clear (GtkPizza *pizza,
88 gboolean clear);
89
90 void gtk_pizza_set_filter (GtkPizza *pizza,
91 gboolean use);
92
93 void gtk_pizza_scroll (GtkPizza *pizza,
94 gint dx,
95 gint dy);
96
97 void gtk_pizza_put (GtkPizza *pizza,
98 GtkWidget *widget,
99 gint x,
100 gint y,
101 gint width,
102 gint height);
103
104 void gtk_pizza_move (GtkPizza *pizza,
105 GtkWidget *widget,
106 gint x,
107 gint y );
108
109 void gtk_pizza_resize (GtkPizza *pizza,
110 GtkWidget *widget,
111 gint width,
112 gint height );
113
114 void gtk_pizza_set_size (GtkPizza *pizza,
115 GtkWidget *widget,
116 gint x,
117 gint y,
118 gint width,
119 gint height);
120 #ifdef __cplusplus
121 }
122 #endif /* __cplusplus */
123
124
125 #endif /* __GTK_PIZZA_H__ */