X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkpaned.h;h=55ec32c2506ef6469adf7c0dc01667f702af3b9a;hb=9d81b69e06cd9c2ad9cb5204056bfae5a3128e9c;hp=ae8f8443cb6869789b2b4f108125a2721b0b8a6c;hpb=fd2c0c5651ced62c6c235629ee0dcc9cb5d154f2;p=~andy%2Fgtk diff --git a/gtk/gtkpaned.h b/gtk/gtkpaned.h index ae8f8443c..55ec32c25 100644 --- a/gtk/gtkpaned.h +++ b/gtk/gtkpaned.h @@ -2,110 +2,104 @@ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald * * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public + * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. + * Lesser General Public License for more details. * - * You should have received a copy of the GNU Library 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. + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see . */ + +/* + * 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/. + */ + #ifndef __GTK_PANED_H__ #define __GTK_PANED_H__ +#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) +#error "Only can be included directly." +#endif -#include #include - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - +G_BEGIN_DECLS #define GTK_TYPE_PANED (gtk_paned_get_type ()) -#define GTK_PANED(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_PANED, GtkPaned)) -#define GTK_PANED_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_PANED, GtkPanedClass)) -#define GTK_IS_PANED(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_PANED)) -#define GTK_IS_PANED_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_PANED)) +#define GTK_PANED(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_PANED, GtkPaned)) +#define GTK_PANED_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_PANED, GtkPanedClass)) +#define GTK_IS_PANED(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_PANED)) +#define GTK_IS_PANED_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_PANED)) +#define GTK_PANED_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_PANED, GtkPanedClass)) -typedef struct _GtkPaned GtkPaned; -typedef struct _GtkPanedClass GtkPanedClass; +typedef struct _GtkPaned GtkPaned; +typedef struct _GtkPanedClass GtkPanedClass; +typedef struct _GtkPanedPrivate GtkPanedPrivate; struct _GtkPaned { GtkContainer container; - - GtkWidget *child1; - GtkWidget *child2; - - GdkWindow *handle; - GdkRectangle groove_rectangle; - GdkGC *xor_gc; - - /*< public >*/ - guint16 handle_size; - guint16 gutter_size; /*< private >*/ - gint child1_size; - gint last_allocation; - gint min_position; - gint max_position; - - guint position_set : 1; - guint in_drag : 1; - guint child1_shrink : 1; - guint child1_resize : 1; - guint child2_shrink : 1; - guint child2_resize : 1; - - gint16 handle_xpos; - gint16 handle_ypos; + GtkPanedPrivate *priv; }; struct _GtkPanedClass { GtkContainerClass parent_class; + + gboolean (* cycle_child_focus) (GtkPaned *paned, + gboolean reverse); + gboolean (* toggle_handle_focus) (GtkPaned *paned); + gboolean (* move_handle) (GtkPaned *paned, + GtkScrollType scroll); + gboolean (* cycle_handle_focus) (GtkPaned *paned, + gboolean reverse); + gboolean (* accept_position) (GtkPaned *paned); + gboolean (* cancel_position) (GtkPaned *paned); + + /* Padding for future expansion */ + void (*_gtk_reserved1) (void); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); + void (*_gtk_reserved4) (void); }; -GtkType gtk_paned_get_type (void); -void gtk_paned_add1 (GtkPaned *paned, - GtkWidget *child); -void gtk_paned_add2 (GtkPaned *paned, - GtkWidget *child); -void gtk_paned_pack1 (GtkPaned *paned, - GtkWidget *child, - gboolean resize, - gboolean shrink); -void gtk_paned_pack2 (GtkPaned *paned, - GtkWidget *child, - gboolean resize, - gboolean shrink); -void gtk_paned_set_position (GtkPaned *paned, - gint position); -void gtk_paned_set_handle_size (GtkPaned *paned, - guint16 size); -void gtk_paned_set_gutter_size (GtkPaned *paned, - guint16 size); - -/* Internal function */ -void gtk_paned_compute_position (GtkPaned *paned, - gint allocation, - gint child1_req, - gint child2_req); - -#ifdef __cplusplus -} -#endif /* __cplusplus */ +GType gtk_paned_get_type (void) G_GNUC_CONST; +GtkWidget * gtk_paned_new (GtkOrientation orientation); +void gtk_paned_add1 (GtkPaned *paned, + GtkWidget *child); +void gtk_paned_add2 (GtkPaned *paned, + GtkWidget *child); +void gtk_paned_pack1 (GtkPaned *paned, + GtkWidget *child, + gboolean resize, + gboolean shrink); +void gtk_paned_pack2 (GtkPaned *paned, + GtkWidget *child, + gboolean resize, + gboolean shrink); + +gint gtk_paned_get_position (GtkPaned *paned); +void gtk_paned_set_position (GtkPaned *paned, + gint position); + +GtkWidget * gtk_paned_get_child1 (GtkPaned *paned); +GtkWidget * gtk_paned_get_child2 (GtkPaned *paned); + +GdkWindow * gtk_paned_get_handle_window (GtkPaned *paned); + +G_END_DECLS #endif /* __GTK_PANED_H__ */