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