]> git.saurik.com Git - wxWidgets.git/blame - include/wx/gtk1/win_gtk.h
some fwd declarations added to the header
[wxWidgets.git] / include / wx / gtk1 / win_gtk.h
CommitLineData
c67daf87 1/* ///////////////////////////////////////////////////////////////////////////
c801d85f 2// Name: win_gtk.h
da048e3d 3// Purpose: wxWindows's GTK base widget = GtkPizza
c801d85f 4// Author: Robert Roebling
58614078
RR
5// Id: $Id$
6// Copyright: (c) 1998 Robert Roebling
c801d85f 7// Licence: wxWindows licence
c67daf87 8/////////////////////////////////////////////////////////////////////////// */
c801d85f
KB
9
10
da048e3d
RR
11#ifndef __GTK_PIZZA_H__
12#define __GTK_PIZZA_H__
c801d85f 13
c801d85f
KB
14#include <gdk/gdk.h>
15#include <gtk/gtkcontainer.h>
034be888
RR
16#include <gtk/gtkadjustment.h>
17#include <gtk/gtkfeatures.h>
c801d85f
KB
18
19#ifdef __cplusplus
20extern "C" {
21#endif /* __cplusplus */
22
da048e3d
RR
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 ())
c801d85f 26
5e014a0c
RR
27/* Shadow types */
28typedef enum
29{
0e09f76e
RR
30 GTK_MYSHADOW_NONE,
31 GTK_MYSHADOW_THIN,
32 GTK_MYSHADOW_IN,
33 GTK_MYSHADOW_OUT
5e014a0c 34} GtkMyShadowType;
c801d85f 35
b6fa52db 36typedef struct _GtkPizzaChild GtkPizzaChild;
da048e3d
RR
37typedef struct _GtkPizza GtkPizza;
38typedef struct _GtkPizzaClass GtkPizzaClass;
c801d85f 39
b6fa52db
RR
40struct _GtkPizzaChild
41{
42 GtkWidget *widget;
43 gint x;
44 gint y;
45 gint width;
46 gint height;
47};
48
da048e3d 49struct _GtkPizza
c801d85f 50{
0e09f76e
RR
51 GtkContainer container;
52 GList *children;
53 GtkMyShadowType shadow_type;
ed673c6a 54
0e09f76e
RR
55 guint width;
56 guint height;
ed673c6a 57
0e09f76e
RR
58 guint xoffset;
59 guint yoffset;
ed673c6a 60
0e09f76e 61 GdkWindow *bin_window;
ed673c6a 62
0e09f76e
RR
63 GdkVisibilityState visibility;
64 gulong configure_serial;
65 gint scroll_x;
66 gint scroll_y;
147bc491 67
0e09f76e
RR
68 gboolean clear_on_draw;
69 gboolean use_filter;
b420fb6a 70 gboolean external_expose;
c801d85f
KB
71};
72
da048e3d 73struct _GtkPizzaClass
c801d85f
KB
74{
75 GtkContainerClass parent_class;
034be888 76
da048e3d 77 void (*set_scroll_adjustments) (GtkPizza *pizza,
034be888
RR
78 GtkAdjustment *hadjustment,
79 GtkAdjustment *vadjustment);
c801d85f
KB
80};
81
da048e3d
RR
82guint gtk_pizza_get_type (void);
83GtkWidget* gtk_pizza_new (void);
147bc491 84
0e09f76e
RR
85void gtk_pizza_set_shadow_type (GtkPizza *pizza,
86 GtkMyShadowType type);
87
88void gtk_pizza_set_clear (GtkPizza *pizza,
89 gboolean clear);
ed673c6a 90
0e09f76e
RR
91void gtk_pizza_set_filter (GtkPizza *pizza,
92 gboolean use);
147bc491 93
b420fb6a
RR
94void gtk_pizza_set_external (GtkPizza *pizza,
95 gboolean expose);
96
0e09f76e
RR
97void gtk_pizza_scroll (GtkPizza *pizza,
98 gint dx,
99 gint dy);
8cb9f0d0
RR
100
101gint gtk_pizza_child_resized (GtkPizza *pizza,
102 GtkWidget *widget);
ed673c6a 103
0e09f76e
RR
104void gtk_pizza_put (GtkPizza *pizza,
105 GtkWidget *widget,
106 gint x,
107 gint y,
108 gint width,
109 gint height);
110
111void gtk_pizza_move (GtkPizza *pizza,
112 GtkWidget *widget,
113 gint x,
114 gint y );
fdd3ed7a 115
0e09f76e
RR
116void gtk_pizza_resize (GtkPizza *pizza,
117 GtkWidget *widget,
118 gint width,
119 gint height );
fdd3ed7a 120
0e09f76e
RR
121void gtk_pizza_set_size (GtkPizza *pizza,
122 GtkWidget *widget,
123 gint x,
124 gint y,
125 gint width,
126 gint height);
c801d85f
KB
127#ifdef __cplusplus
128}
129#endif /* __cplusplus */
130
131
da048e3d 132#endif /* __GTK_PIZZA_H__ */