]> git.saurik.com Git - wxWidgets.git/blame_incremental - include/wx/gtk1/win_gtk.h
No real changes, just make wxWindow::CanScroll() virtual.
[wxWidgets.git] / include / wx / gtk1 / win_gtk.h
... / ...
CommitLineData
1/* ///////////////////////////////////////////////////////////////////////////
2// Name: wx/gtk1/win_gtk.h
3// Purpose: wxWidgets's GTK base widget = GtkPizza
4// Author: Robert Roebling
5// Copyright: (c) 1998 Robert Roebling
6// Licence: wxWindows licence
7/////////////////////////////////////////////////////////////////////////// */
8
9
10#ifndef __GTK_PIZZA_H__
11#define __GTK_PIZZA_H__
12
13#ifdef __cplusplus
14extern "C" {
15#endif /* __cplusplus */
16
17#include <gdk/gdk.h>
18#include <gdk/gdkx.h>
19#include <gtk/gtkcontainer.h>
20#include <gtk/gtkadjustment.h>
21#include <gtk/gtkfeatures.h>
22
23#include "wx/dlimpexp.h"
24
25#define GTK_PIZZA(obj) GTK_CHECK_CAST (obj, gtk_pizza_get_type (), GtkPizza)
26#define GTK_PIZZA_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, gtk_pizza_get_type (), GtkPizzaClass)
27#define GTK_IS_PIZZA(obj) GTK_CHECK_TYPE (obj, gtk_pizza_get_type ())
28
29/* Shadow types */
30typedef enum
31{
32 GTK_MYSHADOW_NONE,
33 GTK_MYSHADOW_THIN,
34 GTK_MYSHADOW_IN,
35 GTK_MYSHADOW_OUT
36} GtkMyShadowType;
37
38typedef struct _GtkPizzaChild GtkPizzaChild;
39typedef struct _GtkPizza GtkPizza;
40typedef struct _GtkPizzaClass GtkPizzaClass;
41
42struct _GtkPizzaChild
43{
44 GtkWidget *widget;
45 gint x;
46 gint y;
47 gint width;
48 gint height;
49};
50
51struct _GtkPizza
52{
53 GtkContainer container;
54 GList *children;
55 GtkMyShadowType shadow_type;
56
57 guint width;
58 guint height;
59
60 guint xoffset;
61 guint yoffset;
62
63 GdkWindow *bin_window;
64
65 GdkVisibilityState visibility;
66 gulong configure_serial;
67 gint scroll_x;
68 gint scroll_y;
69
70 gboolean clear_on_draw;
71 gboolean use_filter;
72 gboolean external_expose;
73};
74
75struct _GtkPizzaClass
76{
77 GtkContainerClass parent_class;
78
79 void (*set_scroll_adjustments) (GtkPizza *pizza,
80 GtkAdjustment *hadjustment,
81 GtkAdjustment *vadjustment);
82};
83
84WXDLLIMPEXP_CORE
85GtkType gtk_pizza_get_type (void);
86WXDLLIMPEXP_CORE
87GtkWidget* gtk_pizza_new (void);
88
89WXDLLIMPEXP_CORE
90void gtk_pizza_set_shadow_type (GtkPizza *pizza,
91 GtkMyShadowType type);
92
93WXDLLIMPEXP_CORE
94void gtk_pizza_set_clear (GtkPizza *pizza,
95 gboolean clear);
96
97WXDLLIMPEXP_CORE
98void gtk_pizza_set_filter (GtkPizza *pizza,
99 gboolean use);
100
101WXDLLIMPEXP_CORE
102void gtk_pizza_set_external (GtkPizza *pizza,
103 gboolean expose);
104
105WXDLLIMPEXP_CORE
106void gtk_pizza_scroll (GtkPizza *pizza,
107 gint dx,
108 gint dy);
109
110WXDLLIMPEXP_CORE
111gint gtk_pizza_child_resized (GtkPizza *pizza,
112 GtkWidget *widget);
113
114WXDLLIMPEXP_CORE
115void gtk_pizza_put (GtkPizza *pizza,
116 GtkWidget *widget,
117 gint x,
118 gint y,
119 gint width,
120 gint height);
121
122WXDLLIMPEXP_CORE
123void gtk_pizza_move (GtkPizza *pizza,
124 GtkWidget *widget,
125 gint x,
126 gint y );
127
128WXDLLIMPEXP_CORE
129void gtk_pizza_resize (GtkPizza *pizza,
130 GtkWidget *widget,
131 gint width,
132 gint height );
133
134WXDLLIMPEXP_CORE
135void gtk_pizza_set_size (GtkPizza *pizza,
136 GtkWidget *widget,
137 gint x,
138 gint y,
139 gint width,
140 gint height);
141#ifdef __cplusplus
142}
143#endif /* __cplusplus */
144
145
146#endif /* __GTK_PIZZA_H__ */