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