X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtklayout.h;h=04dcb51c5724b48bc83280d8a39c57fb175924fd;hb=0cc688aa92b8fe5452b63fb49c51204498a2988b;hp=b0f2004affdbeb1457eec90852541dd45ba52b63;hpb=2c5d938ff81480846539d9659dd92ca90cfb9e40;p=~andy%2Fgtk diff --git a/gtk/gtklayout.h b/gtk/gtklayout.h index b0f2004af..04dcb51c5 100644 --- a/gtk/gtklayout.h +++ b/gtk/gtklayout.h @@ -12,9 +12,7 @@ * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * License along with this library. If not, see . * * GtkLayout: Widget for scrolling of arbitrary-sized areas. * @@ -25,103 +23,86 @@ * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS * file for a list of people on the GTK+ Team. See the ChangeLog * files for a list of changes. These files are distributed with - * GTK+ at ftp://ftp.gtk.org/pub/gtk/. + * GTK+ at ftp://ftp.gtk.org/pub/gtk/. */ -#ifndef __GTK_LAYOUT_H -#define __GTK_LAYOUT_H +#ifndef __GTK_LAYOUT_H__ +#define __GTK_LAYOUT_H__ + + +#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) +#error "Only can be included directly." +#endif -#include #include -#include -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ +G_BEGIN_DECLS #define GTK_TYPE_LAYOUT (gtk_layout_get_type ()) -#define GTK_LAYOUT(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_LAYOUT, GtkLayout)) -#define GTK_LAYOUT_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_LAYOUT, GtkLayoutClass)) -#define GTK_IS_LAYOUT(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_LAYOUT)) -#define GTK_IS_LAYOUT_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_LAYOUT)) -#define GTK_LAYOUT_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), GTK_TYPE_LAYOUT, GtkLayoutClass)) +#define GTK_LAYOUT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_LAYOUT, GtkLayout)) +#define GTK_LAYOUT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_LAYOUT, GtkLayoutClass)) +#define GTK_IS_LAYOUT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_LAYOUT)) +#define GTK_IS_LAYOUT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_LAYOUT)) +#define GTK_LAYOUT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_LAYOUT, GtkLayoutClass)) -typedef struct _GtkLayout GtkLayout; -typedef struct _GtkLayoutClass GtkLayoutClass; +typedef struct _GtkLayout GtkLayout; +typedef struct _GtkLayoutPrivate GtkLayoutPrivate; +typedef struct _GtkLayoutClass GtkLayoutClass; -struct _GtkLayout { +struct _GtkLayout +{ GtkContainer container; - GList *children; - - guint width; - guint height; - - guint xoffset; - guint yoffset; - - GtkAdjustment *hadjustment; - GtkAdjustment *vadjustment; - - GdkWindow *bin_window; - - GdkVisibilityState visibility; - gint scroll_x; - gint scroll_y; - - guint freeze_count; + /*< private >*/ + GtkLayoutPrivate *priv; }; -struct _GtkLayoutClass { +struct _GtkLayoutClass +{ GtkContainerClass parent_class; - void (*set_scroll_adjustments) (GtkLayout *layout, - GtkAdjustment *hadjustment, - GtkAdjustment *vadjustment); + /* Padding for future expansion */ + void (*_gtk_reserved1) (void); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); + void (*_gtk_reserved4) (void); }; -GtkType gtk_layout_get_type (void) G_GNUC_CONST; +GType gtk_layout_get_type (void) G_GNUC_CONST; GtkWidget* gtk_layout_new (GtkAdjustment *hadjustment, GtkAdjustment *vadjustment); -void gtk_layout_put (GtkLayout *layout, - GtkWidget *widget, - gint x, +GdkWindow* gtk_layout_get_bin_window (GtkLayout *layout); +void gtk_layout_put (GtkLayout *layout, + GtkWidget *child_widget, + gint x, gint y); - -void gtk_layout_move (GtkLayout *layout, - GtkWidget *widget, - gint x, + +void gtk_layout_move (GtkLayout *layout, + GtkWidget *child_widget, + gint x, gint y); - -void gtk_layout_set_size (GtkLayout *layout, + +void gtk_layout_set_size (GtkLayout *layout, guint width, guint height); +void gtk_layout_get_size (GtkLayout *layout, + guint *width, + guint *height); +GDK_DEPRECATED_IN_3_0_FOR(gtk_scrollable_get_hadjustment) GtkAdjustment* gtk_layout_get_hadjustment (GtkLayout *layout); +GDK_DEPRECATED_IN_3_0_FOR(gtk_scrollable_get_vadjustment) GtkAdjustment* gtk_layout_get_vadjustment (GtkLayout *layout); +GDK_DEPRECATED_IN_3_0_FOR(gtk_scrollable_set_hadjustment) void gtk_layout_set_hadjustment (GtkLayout *layout, - GtkAdjustment *adjustment); + GtkAdjustment *adjustment); +GDK_DEPRECATED_IN_3_0_FOR(gtk_scrollable_set_vadjustment) void gtk_layout_set_vadjustment (GtkLayout *layout, - GtkAdjustment *adjustment); + GtkAdjustment *adjustment); -#ifndef GTK_DISABLE_DEPRECATED -/* These disable and enable moving and repainting the scrolling window - * of the GtkLayout, respectively. If you want to update the layout's - * offsets but do not want it to repaint itself, you should use these - * functions. - * - * - I don't understand these are supposed to work, so I suspect - * - they don't now. OWT 1/20/98 - */ -void gtk_layout_freeze (GtkLayout *layout); -void gtk_layout_thaw (GtkLayout *layout); -#endif /* GTK_DISABLE_DEPRECATED */ - -#ifdef __cplusplus -} -#endif /* __cplusplus */ +G_END_DECLS -#endif /* __GTK_LAYOUT_H */ +#endif /* __GTK_LAYOUT_H__ */