aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table
diff options
context:
space:
mode:
authorMiguel de Icaza <miguel@gnu.org>2000-04-15 03:46:55 +0800
committerMiguel de Icaza <miguel@src.gnome.org>2000-04-15 03:46:55 +0800
commitd870ec752c2ae51843e5b8f07cef39ff619f75d7 (patch)
tree2bb354549474651b4ec9d74e8c21e80a84dfa27f /widgets/table
parentab0e676fd9b1d4946911704a3446eb9b54e5335b (diff)
downloadgsoc2013-evolution-d870ec752c2ae51843e5b8f07cef39ff619f75d7.tar.gz
gsoc2013-evolution-d870ec752c2ae51843e5b8f07cef39ff619f75d7.tar.zst
gsoc2013-evolution-d870ec752c2ae51843e5b8f07cef39ff619f75d7.zip
Switch the parent object to be a GtkTable. (et_real_construct): apply
2000-04-14 Miguel de Icaza <miguel@gnu.org> * e-table.c, e-table.h: Switch the parent object to be a GtkTable. (et_real_construct): apply massaging and some loving action to make the thing behave as a GtkTable. (e_table_init): More love. svn path=/trunk/; revision=2431
Diffstat (limited to 'widgets/table')
-rw-r--r--widgets/table/e-table.c37
-rw-r--r--widgets/table/e-table.h4
2 files changed, 29 insertions, 12 deletions
diff --git a/widgets/table/e-table.c b/widgets/table/e-table.c
index bf3f2127ba..6906f3af84 100644
--- a/widgets/table/e-table.c
+++ b/widgets/table/e-table.c
@@ -31,7 +31,7 @@
#define TITLE_HEIGHT 16
#define GROUP_INDENT 10
-#define PARENT_TYPE gtk_hbox_get_type ()
+#define PARENT_TYPE gtk_table_get_type ()
static GtkObjectClass *e_table_parent_class;
@@ -83,6 +83,9 @@ static void
e_table_init (GtkObject *object)
{
ETable *e_table = E_TABLE (object);
+ GtkTable *gtk_table = GTK_TABLE (object);
+
+ gtk_table->homogeneous = FALSE;
e_table->sort_info = NULL;
e_table->sort_info_change_id = 0;
@@ -780,20 +783,34 @@ et_real_construct (ETable *e_table, ETableHeader *full_header, ETableModel *etm,
e_table_setup_header (e_table);
e_table_setup_table (e_table, full_header, e_table->header, etm);
e_table_fill_table (e_table, etm);
-
- vbox = gtk_vbox_new (FALSE, 0);
-
- gtk_box_pack_start (GTK_BOX (vbox), GTK_WIDGET (e_table->header_canvas), FALSE, FALSE, 0);
- gtk_box_pack_start (GTK_BOX (vbox), GTK_WIDGET (e_table->table_canvas), TRUE, TRUE, 0);
- gtk_widget_show (vbox);
-
- gtk_box_pack_start (GTK_BOX (e_table), vbox, TRUE, TRUE, 0);
+ /*
+ * The header
+ */
+ gtk_table_attach (
+ GTK_TABLE (e_table), GTK_WIDGET (e_table->header_canvas),
+ 1, 2, 1, 2,
+ GTK_FILL | GTK_EXPAND,
+ GTK_FILL, 0, 0);
+ /*
+ * The body
+ */
+ gtk_table_attach (
+ GTK_TABLE (e_table), GTK_WIDGET (e_table->table_canvas),
+ 1, 2, 2, 3,
+ GTK_FILL | GTK_EXPAND,
+ GTK_FILL | GTK_EXPAND, 0, 0);
+
vscrollbar = gtk_vscrollbar_new (gtk_layout_get_vadjustment (GTK_LAYOUT (e_table->table_canvas)));
gtk_widget_show (vscrollbar);
- gtk_box_pack_start (GTK_BOX (e_table), vscrollbar, FALSE, FALSE, 0);
+ gtk_table_attach (
+ GTK_TABLE (e_table), vscrollbar,
+ 2, 3, 2, 3,
+ GTK_FILL,
+ GTK_FILL | GTK_EXPAND, 0, 0);
+
gtk_widget_pop_colormap ();
gtk_widget_pop_visual ();
}
diff --git a/widgets/table/e-table.h b/widgets/table/e-table.h
index 39333f159a..d8c4709621 100644
--- a/widgets/table/e-table.h
+++ b/widgets/table/e-table.h
@@ -19,7 +19,7 @@ BEGIN_GNOME_DECLS
#define E_IS_TABLE_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_TABLE_TYPE))
typedef struct {
- GtkHBox parent;
+ GtkTable parent;
ETableModel *model;
@@ -54,7 +54,7 @@ typedef struct {
} ETable;
typedef struct {
- GtkHBoxClass parent_class;
+ GtkTableClass parent_class;
void (*row_selection) (ETable *et, int row, gboolean selected);
} ETableClass;