]> git.saurik.com Git - wxWidgets.git/blame - include/wx/gtk/win_gtk.h
Implement wxSetCusorEvent better than before.
[wxWidgets.git] / include / wx / gtk / win_gtk.h
CommitLineData
c67daf87 1/* ///////////////////////////////////////////////////////////////////////////
c801d85f 2// Name: win_gtk.h
77ffb593 3// Purpose: wxWidgets's GTK base widget = GtkPizza
c801d85f 4// Author: Robert Roebling
58614078
RR
5// Id: $Id$
6// Copyright: (c) 1998 Robert Roebling
5b12ccee 7// Licence: wxWindows licence
c67daf87 8/////////////////////////////////////////////////////////////////////////// */
c801d85f
KB
9
10
da048e3d
RR
11#ifndef __GTK_PIZZA_H__
12#define __GTK_PIZZA_H__
c801d85f 13
e8106239
VZ
14#ifdef __cplusplus
15extern "C" {
16#endif /* __cplusplus */
17
c801d85f 18#include <gtk/gtkcontainer.h>
c801d85f 19
20123d49
MW
20#include "wx/dlimpexp.h"
21
da048e3d 22#define GTK_PIZZA(obj) GTK_CHECK_CAST (obj, gtk_pizza_get_type (), GtkPizza)
da048e3d 23#define GTK_IS_PIZZA(obj) GTK_CHECK_TYPE (obj, gtk_pizza_get_type ())
c801d85f 24
5e014a0c
RR
25/* Shadow types */
26typedef enum
27{
0e09f76e
RR
28 GTK_MYSHADOW_NONE,
29 GTK_MYSHADOW_THIN,
30 GTK_MYSHADOW_IN,
31 GTK_MYSHADOW_OUT
5e014a0c 32} GtkMyShadowType;
c801d85f 33
b6fa52db 34typedef struct _GtkPizzaChild GtkPizzaChild;
da048e3d
RR
35typedef struct _GtkPizza GtkPizza;
36typedef struct _GtkPizzaClass GtkPizzaClass;
c801d85f 37
b6fa52db
RR
38struct _GtkPizzaChild
39{
40 GtkWidget *widget;
41 gint x;
42 gint y;
43 gint width;
44 gint height;
45};
46
da048e3d 47struct _GtkPizza
c801d85f 48{
0e09f76e
RR
49 GtkContainer container;
50 GList *children;
51 GtkMyShadowType shadow_type;
5b12ccee 52
0e09f76e
RR
53 guint width;
54 guint height;
ed673c6a 55
0e09f76e
RR
56 guint xoffset;
57 guint yoffset;
ed673c6a 58
0e09f76e 59 GdkWindow *bin_window;
ed673c6a 60
0e09f76e
RR
61 gint scroll_x;
62 gint scroll_y;
5b12ccee 63
b420fb6a 64 gboolean external_expose;
c801d85f
KB
65};
66
da048e3d 67struct _GtkPizzaClass
c801d85f
KB
68{
69 GtkContainerClass parent_class;
034be888 70
da048e3d 71 void (*set_scroll_adjustments) (GtkPizza *pizza,
5b12ccee
MW
72 GtkAdjustment *hadjustment,
73 GtkAdjustment *vadjustment);
c801d85f
KB
74};
75
20123d49 76WXDLLIMPEXP_CORE
e1ff9329 77GtkType gtk_pizza_get_type (void);
20123d49 78WXDLLIMPEXP_CORE
da048e3d 79GtkWidget* gtk_pizza_new (void);
147bc491 80
20123d49 81WXDLLIMPEXP_CORE
0e09f76e 82void gtk_pizza_set_shadow_type (GtkPizza *pizza,
5b12ccee
MW
83 GtkMyShadowType type);
84
20123d49 85WXDLLIMPEXP_CORE
b420fb6a 86void gtk_pizza_set_external (GtkPizza *pizza,
5b12ccee
MW
87 gboolean expose);
88
20123d49 89WXDLLIMPEXP_CORE
5b12ccee 90void gtk_pizza_scroll (GtkPizza *pizza,
0e09f76e
RR
91 gint dx,
92 gint dy);
8cb9f0d0 93
20123d49 94WXDLLIMPEXP_CORE
0e09f76e
RR
95void gtk_pizza_put (GtkPizza *pizza,
96 GtkWidget *widget,
97 gint x,
98 gint y,
5b12ccee
MW
99 gint width,
100 gint height);
0e09f76e 101
20123d49 102WXDLLIMPEXP_CORE
0e09f76e
RR
103void gtk_pizza_set_size (GtkPizza *pizza,
104 GtkWidget *widget,
105 gint x,
106 gint y,
107 gint width,
108 gint height);
c801d85f
KB
109#ifdef __cplusplus
110}
111#endif /* __cplusplus */
112
113
da048e3d 114#endif /* __GTK_PIZZA_H__ */