]> git.saurik.com Git - wxWidgets.git/blame - include/wx/gtk/win_gtk.h
great copy ctor/assignment operators cleanup by Paul Cornett (patch 1307665)
[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 <gdk/gdk.h>
e8106239 19#include <gdk/gdkx.h>
c801d85f 20#include <gtk/gtkcontainer.h>
034be888 21#include <gtk/gtkadjustment.h>
c801d85f 22
20123d49
MW
23#include "wx/dlimpexp.h"
24
da048e3d
RR
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 ())
c801d85f 28
5e014a0c
RR
29/* Shadow types */
30typedef enum
31{
0e09f76e
RR
32 GTK_MYSHADOW_NONE,
33 GTK_MYSHADOW_THIN,
34 GTK_MYSHADOW_IN,
35 GTK_MYSHADOW_OUT
5e014a0c 36} GtkMyShadowType;
c801d85f 37
b6fa52db 38typedef struct _GtkPizzaChild GtkPizzaChild;
da048e3d
RR
39typedef struct _GtkPizza GtkPizza;
40typedef struct _GtkPizzaClass GtkPizzaClass;
c801d85f 41
b6fa52db
RR
42struct _GtkPizzaChild
43{
44 GtkWidget *widget;
45 gint x;
46 gint y;
47 gint width;
48 gint height;
49};
50
da048e3d 51struct _GtkPizza
c801d85f 52{
0e09f76e
RR
53 GtkContainer container;
54 GList *children;
55 GtkMyShadowType shadow_type;
5b12ccee 56
0e09f76e
RR
57 guint width;
58 guint height;
ed673c6a 59
0e09f76e
RR
60 guint xoffset;
61 guint yoffset;
ed673c6a 62
0e09f76e 63 GdkWindow *bin_window;
ed673c6a 64
0e09f76e
RR
65 GdkVisibilityState visibility;
66 gulong configure_serial;
67 gint scroll_x;
68 gint scroll_y;
5b12ccee 69
0e09f76e
RR
70 gboolean clear_on_draw;
71 gboolean use_filter;
b420fb6a 72 gboolean external_expose;
c801d85f
KB
73};
74
da048e3d 75struct _GtkPizzaClass
c801d85f
KB
76{
77 GtkContainerClass parent_class;
034be888 78
da048e3d 79 void (*set_scroll_adjustments) (GtkPizza *pizza,
5b12ccee
MW
80 GtkAdjustment *hadjustment,
81 GtkAdjustment *vadjustment);
c801d85f
KB
82};
83
20123d49 84WXDLLIMPEXP_CORE
e1ff9329 85GtkType gtk_pizza_get_type (void);
20123d49 86WXDLLIMPEXP_CORE
da048e3d 87GtkWidget* gtk_pizza_new (void);
147bc491 88
20123d49 89WXDLLIMPEXP_CORE
0e09f76e 90void gtk_pizza_set_shadow_type (GtkPizza *pizza,
5b12ccee
MW
91 GtkMyShadowType type);
92
20123d49 93WXDLLIMPEXP_CORE
0e09f76e 94void gtk_pizza_set_clear (GtkPizza *pizza,
5b12ccee
MW
95 gboolean clear);
96
20123d49 97WXDLLIMPEXP_CORE
0e09f76e 98void gtk_pizza_set_filter (GtkPizza *pizza,
5b12ccee
MW
99 gboolean use);
100
20123d49 101WXDLLIMPEXP_CORE
b420fb6a 102void gtk_pizza_set_external (GtkPizza *pizza,
5b12ccee
MW
103 gboolean expose);
104
20123d49 105WXDLLIMPEXP_CORE
5b12ccee 106void gtk_pizza_scroll (GtkPizza *pizza,
0e09f76e
RR
107 gint dx,
108 gint dy);
8cb9f0d0 109
20123d49 110WXDLLIMPEXP_CORE
8cb9f0d0
RR
111gint gtk_pizza_child_resized (GtkPizza *pizza,
112 GtkWidget *widget);
5b12ccee 113
20123d49 114WXDLLIMPEXP_CORE
0e09f76e
RR
115void gtk_pizza_put (GtkPizza *pizza,
116 GtkWidget *widget,
117 gint x,
118 gint y,
5b12ccee
MW
119 gint width,
120 gint height);
0e09f76e 121
20123d49 122WXDLLIMPEXP_CORE
0e09f76e
RR
123void gtk_pizza_move (GtkPizza *pizza,
124 GtkWidget *widget,
125 gint x,
126 gint y );
5b12ccee 127
20123d49 128WXDLLIMPEXP_CORE
0e09f76e
RR
129void gtk_pizza_resize (GtkPizza *pizza,
130 GtkWidget *widget,
131 gint width,
132 gint height );
5b12ccee 133
20123d49 134WXDLLIMPEXP_CORE
0e09f76e
RR
135void gtk_pizza_set_size (GtkPizza *pizza,
136 GtkWidget *widget,
137 gint x,
138 gint y,
139 gint width,
140 gint height);
c801d85f
KB
141#ifdef __cplusplus
142}
143#endif /* __cplusplus */
144
145
da048e3d 146#endif /* __GTK_PIZZA_H__ */