]> git.saurik.com Git - wxWidgets.git/blame_incremental - include/wx/gtk/win_gtk.h
Next try at avoiding too few or too many size events.
[wxWidgets.git] / include / wx / gtk / win_gtk.h
... / ...
CommitLineData
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
20extern "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 */
29typedef enum
30{
31 GTK_MYSHADOW_NONE,
32 GTK_MYSHADOW_THIN,
33 GTK_MYSHADOW_IN,
34 GTK_MYSHADOW_OUT
35} GtkMyShadowType;
36
37typedef struct _GtkPizza GtkPizza;
38typedef struct _GtkPizzaClass GtkPizzaClass;
39
40struct _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
62struct _GtkPizzaClass
63{
64 GtkContainerClass parent_class;
65
66 void (*set_scroll_adjustments) (GtkPizza *pizza,
67 GtkAdjustment *hadjustment,
68 GtkAdjustment *vadjustment);
69};
70
71guint gtk_pizza_get_type (void);
72GtkWidget* gtk_pizza_new (void);
73
74void gtk_pizza_set_shadow_type (GtkPizza *pizza,
75 GtkMyShadowType type);
76
77void gtk_pizza_set_clear (GtkPizza *pizza,
78 gboolean clear);
79
80void gtk_pizza_scroll (GtkPizza *pizza,
81 gint dx,
82 gint dy);
83
84void gtk_pizza_put (GtkPizza *pizza,
85 GtkWidget *widget,
86 gint x,
87 gint y,
88 gint width,
89 gint height);
90
91void gtk_pizza_move (GtkPizza *pizza,
92 GtkWidget *widget,
93 gint x,
94 gint y );
95
96void gtk_pizza_resize (GtkPizza *pizza,
97 GtkWidget *widget,
98 gint width,
99 gint height );
100
101void 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__ */