* 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/.
*/
+#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
+#error "Only <gtk/gtk.h> can be included directly."
+#endif
+
#ifndef __GTK_TABLE_H__
#define __GTK_TABLE_H__
-#include <gdk/gdk.h>
#include <gtk/gtkcontainer.h>
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
+G_BEGIN_DECLS
#define GTK_TYPE_TABLE (gtk_table_get_type ())
#define GTK_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_TABLE, GtkTable))
#define GTK_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_TABLE, GtkTableClass))
-typedef struct _GtkTable GtkTable;
-typedef struct _GtkTableClass GtkTableClass;
-typedef struct _GtkTableChild GtkTableChild;
-typedef struct _GtkTableRowCol GtkTableRowCol;
+typedef struct _GtkTable GtkTable;
+typedef struct _GtkTablePrivate GtkTablePrivate;
+typedef struct _GtkTableClass GtkTableClass;
+typedef struct _GtkTableChild GtkTableChild;
+typedef struct _GtkTableRowCol GtkTableRowCol;
struct _GtkTable
{
GtkContainer container;
-
- GList *children;
- GtkTableRowCol *rows;
- GtkTableRowCol *cols;
- guint16 nrows;
- guint16 ncols;
- guint16 column_spacing;
- guint16 row_spacing;
- guint homogeneous : 1;
+
+ /*< private >*/
+ GtkTablePrivate *priv;
};
struct _GtkTableClass
{
GtkContainerClass parent_class;
+
+ /* Padding for future expansion */
+ void (*_gtk_reserved1) (void);
+ void (*_gtk_reserved2) (void);
+ void (*_gtk_reserved3) (void);
+ void (*_gtk_reserved4) (void);
};
struct _GtkTableChild
void gtk_table_set_homogeneous (GtkTable *table,
gboolean homogeneous);
gboolean gtk_table_get_homogeneous (GtkTable *table);
+void gtk_table_get_size (GtkTable *table,
+ guint *rows,
+ guint *columns);
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
+G_END_DECLS
#endif /* __GTK_TABLE_H__ */