aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table
diff options
context:
space:
mode:
Diffstat (limited to 'widgets/table')
-rw-r--r--widgets/table/e-table-group.c8
-rw-r--r--widgets/table/e-table-header-item.c40
-rw-r--r--widgets/table/e-table-header.c208
-rw-r--r--widgets/table/e-table-header.h18
-rw-r--r--widgets/table/e-table-item.c36
-rw-r--r--widgets/table/e-table-search.c83
-rw-r--r--widgets/table/e-table-search.h15
-rw-r--r--widgets/table/e-table-sorted.c4
-rw-r--r--widgets/table/e-table-sorter.c4
-rw-r--r--widgets/table/e-table-specification.c19
-rw-r--r--widgets/table/e-table-specification.h25
-rw-r--r--widgets/table/e-table-utils.c9
-rw-r--r--widgets/table/e-table.c91
-rw-r--r--widgets/table/e-tree-sorted.c2
-rw-r--r--widgets/table/e-tree.c62
15 files changed, 297 insertions, 327 deletions
diff --git a/widgets/table/e-table-group.c b/widgets/table/e-table-group.c
index 6123eb9862..7182dcfce6 100644
--- a/widgets/table/e-table-group.c
+++ b/widgets/table/e-table-group.c
@@ -58,12 +58,12 @@ etg_destroy (GtkObject *object)
ETableGroup *etg = E_TABLE_GROUP(object);
if (etg->header) {
- gtk_object_unref (GTK_OBJECT(etg->header));
+ g_object_unref (G_OBJECT(etg->header));
etg->header = NULL;
}
if (etg->full_header) {
- gtk_object_unref (GTK_OBJECT(etg->full_header));
+ g_object_unref (G_OBJECT(etg->full_header));
etg->full_header = NULL;
}
@@ -130,9 +130,9 @@ e_table_group_construct (GnomeCanvasGroup *parent,
ETableModel *model)
{
etg->full_header = full_header;
- gtk_object_ref (GTK_OBJECT(etg->full_header));
+ g_object_ref (G_OBJECT(etg->full_header));
etg->header = header;
- gtk_object_ref (GTK_OBJECT(etg->header));
+ g_object_ref (G_OBJECT(etg->header));
etg->model = model;
gtk_object_ref (GTK_OBJECT(etg->model));
gnome_canvas_item_construct (GNOME_CANVAS_ITEM (etg), parent, 0, NULL);
diff --git a/widgets/table/e-table-header-item.c b/widgets/table/e-table-header-item.c
index 01718c2bf6..b2d8cdde2a 100644
--- a/widgets/table/e-table-header-item.c
+++ b/widgets/table/e-table-header-item.c
@@ -137,7 +137,7 @@ ethi_destroy (GtkObject *object){
}
if (ethi->full_header)
- gtk_object_unref (GTK_OBJECT(ethi->full_header));
+ g_object_unref (G_OBJECT(ethi->full_header));
ethi->full_header = NULL;
if (ethi->config)
@@ -258,16 +258,16 @@ ethi_font_load (ETableHeaderItem *ethi, char *fontname)
static void
ethi_drop_table_header (ETableHeaderItem *ethi)
{
- GtkObject *header;
+ GObject *header;
if (!ethi->eth)
return;
- header = GTK_OBJECT (ethi->eth);
- gtk_signal_disconnect (header, ethi->structure_change_id);
- gtk_signal_disconnect (header, ethi->dimension_change_id);
+ header = G_OBJECT (ethi->eth);
+ g_signal_handler_disconnect (header, ethi->structure_change_id);
+ g_signal_handler_disconnect (header, ethi->dimension_change_id);
- gtk_object_unref (header);
+ g_object_unref (header);
ethi->eth = NULL;
ethi->width = 0;
}
@@ -288,16 +288,16 @@ static void
ethi_add_table_header (ETableHeaderItem *ethi, ETableHeader *header)
{
ethi->eth = header;
- gtk_object_ref (GTK_OBJECT (ethi->eth));
+ g_object_ref (G_OBJECT (ethi->eth));
ethi->height = e_table_header_item_get_height (ethi);
- ethi->structure_change_id = gtk_signal_connect (
- GTK_OBJECT (header), "structure_change",
- GTK_SIGNAL_FUNC(structure_changed), ethi);
- ethi->dimension_change_id = gtk_signal_connect (
- GTK_OBJECT (header), "dimension_change",
- GTK_SIGNAL_FUNC(dimension_changed), ethi);
+ ethi->structure_change_id = g_signal_connect (
+ G_OBJECT (header), "structure_change",
+ G_CALLBACK (structure_changed), ethi);
+ ethi->dimension_change_id = g_signal_connect (
+ G_OBJECT (header), "dimension_change",
+ G_CALLBACK (dimension_changed), ethi);
e_canvas_item_request_reflow(GNOME_CANVAS_ITEM(ethi));
gnome_canvas_item_request_update (GNOME_CANVAS_ITEM(ethi));
}
@@ -320,15 +320,15 @@ ethi_set_arg (GtkObject *o, GtkArg *arg, guint arg_id)
switch (arg_id){
case ARG_TABLE_HEADER:
ethi_drop_table_header (ethi);
- ethi_add_table_header (ethi, E_TABLE_HEADER(GTK_VALUE_OBJECT (*arg)));
+ ethi_add_table_header (ethi, E_TABLE_HEADER(GTK_VALUE_POINTER (*arg)));
break;
case ARG_FULL_HEADER:
if (ethi->full_header)
- gtk_object_unref(GTK_OBJECT(ethi->full_header));
- ethi->full_header = E_TABLE_HEADER(GTK_VALUE_OBJECT (*arg));
+ g_object_unref(G_OBJECT(ethi->full_header));
+ ethi->full_header = E_TABLE_HEADER(GTK_VALUE_POINTER (*arg));
if (ethi->full_header)
- gtk_object_ref(GTK_OBJECT(ethi->full_header));
+ g_object_ref(G_OBJECT(ethi->full_header));
break;
case ARG_DND_CODE:
@@ -389,7 +389,7 @@ ethi_get_arg (GtkObject *o, GtkArg *arg, guint arg_id)
switch (arg_id){
case ARG_FULL_HEADER:
- GTK_VALUE_OBJECT (*arg) = GTK_OBJECT (ethi->full_header);
+ GTK_VALUE_POINTER (*arg) = G_OBJECT (ethi->full_header);
break;
case ARG_DND_CODE:
GTK_VALUE_STRING (*arg) = g_strdup (ethi->dnd_code);
@@ -1727,9 +1727,9 @@ ethi_class_init (GtkObjectClass *object_class)
item_class->point = ethi_point;
item_class->event = ethi_event;
- gtk_object_add_arg_type ("ETableHeaderItem::ETableHeader", GTK_TYPE_OBJECT,
+ gtk_object_add_arg_type ("ETableHeaderItem::ETableHeader", G_TYPE_OBJECT,
GTK_ARG_WRITABLE, ARG_TABLE_HEADER);
- gtk_object_add_arg_type ("ETableHeaderItem::full_header", GTK_TYPE_OBJECT,
+ gtk_object_add_arg_type ("ETableHeaderItem::full_header", G_TYPE_OBJECT,
GTK_ARG_READWRITE, ARG_FULL_HEADER);
gtk_object_add_arg_type ("ETableHeaderItem::dnd_code", GTK_TYPE_STRING,
GTK_ARG_READWRITE, ARG_DND_CODE);
diff --git a/widgets/table/e-table-header.c b/widgets/table/e-table-header.c
index e57a8f38a0..e76bef6bd5 100644
--- a/widgets/table/e-table-header.c
+++ b/widgets/table/e-table-header.c
@@ -24,8 +24,7 @@
#include <config.h>
#include <string.h>
-#include <gtk/gtkobject.h>
-#include <gtk/gtksignal.h>
+#include <glib-object.h>
#include <gtk/gtkimage.h>
#include <gal/util/e-util.h>
#include "e-table-header.h"
@@ -34,10 +33,10 @@
/* The arguments we take */
enum {
- ARG_0,
- ARG_SORT_INFO,
- ARG_WIDTH,
- ARG_WIDTH_EXTRAS
+ PROP_0,
+ PROP_SORT_INFO,
+ PROP_WIDTH,
+ PROP_WIDTH_EXTRAS
};
enum {
@@ -53,7 +52,7 @@ static void eth_calc_widths (ETableHeader *eth);
static guint eth_signals [LAST_SIGNAL] = { 0, };
-static GtkObjectClass *e_table_header_parent_class;
+static GObjectClass *e_table_header_parent_class;
struct two_ints {
int column;
@@ -144,7 +143,7 @@ eth_do_remove (ETableHeader *eth, int idx, gboolean do_unref)
}
static void
-eth_destroy (GtkObject *object)
+eth_finalize (GObject *object)
{
ETableHeader *eth = E_TABLE_HEADER (object);
const int cols = eth->col_count;
@@ -152,8 +151,8 @@ eth_destroy (GtkObject *object)
if (eth->sort_info) {
if (eth->sort_info_group_change_id)
- gtk_signal_disconnect(GTK_OBJECT(eth->sort_info),
- eth->sort_info_group_change_id);
+ g_signal_handler_disconnect(GTK_OBJECT(eth->sort_info),
+ eth->sort_info_group_change_id);
gtk_object_unref(GTK_OBJECT(eth->sort_info));
eth->sort_info = NULL;
}
@@ -179,8 +178,8 @@ eth_destroy (GtkObject *object)
eth->col_count = 0;
eth->columns = NULL;
- if (e_table_header_parent_class->destroy)
- e_table_header_parent_class->destroy (object);
+ if (e_table_header_parent_class->finalize)
+ e_table_header_parent_class->finalize (object);
}
static void
@@ -190,31 +189,31 @@ eth_group_info_changed(ETableSortInfo *info, ETableHeader *eth)
}
static void
-eth_set_arg (GtkObject *object, GtkArg *arg, guint arg_id)
+eth_set_prop (GObject *object, guint prop_id, const GValue *val, GParamSpec *pspec)
{
ETableHeader *eth = E_TABLE_HEADER (object);
- switch (arg_id) {
- case ARG_WIDTH:
- eth->nominal_width = GTK_VALUE_DOUBLE (*arg);
- enqueue(eth, -1, GTK_VALUE_DOUBLE (*arg));
+ switch (prop_id) {
+ case PROP_WIDTH:
+ eth->nominal_width = g_value_get_double (val);
+ enqueue(eth, -1, eth->nominal_width);
break;
- case ARG_WIDTH_EXTRAS:
- eth->width_extras = GTK_VALUE_DOUBLE (*arg);
+ case PROP_WIDTH_EXTRAS:
+ eth->width_extras = g_value_get_double (val);
enqueue(eth, -1, eth->nominal_width);
break;
- case ARG_SORT_INFO:
+ case PROP_SORT_INFO:
if (eth->sort_info) {
if (eth->sort_info_group_change_id)
- gtk_signal_disconnect(GTK_OBJECT(eth->sort_info), eth->sort_info_group_change_id);
- gtk_object_unref(GTK_OBJECT(eth->sort_info));
+ g_signal_handler_disconnect(GTK_OBJECT(eth->sort_info), eth->sort_info_group_change_id);
+ g_object_unref (G_OBJECT(eth->sort_info));
}
- eth->sort_info = E_TABLE_SORT_INFO(GTK_VALUE_OBJECT (*arg));
+ eth->sort_info = E_TABLE_SORT_INFO(g_value_get_object (val));
if (eth->sort_info) {
- gtk_object_ref(GTK_OBJECT(eth->sort_info));
+ g_object_ref(G_OBJECT(eth->sort_info));
eth->sort_info_group_change_id
- = gtk_signal_connect(GTK_OBJECT(eth->sort_info), "group_info_changed",
- GTK_SIGNAL_FUNC(eth_group_info_changed), eth);
+ = g_signal_connect(G_OBJECT(eth->sort_info), "group_info_changed",
+ G_CALLBACK(eth_group_info_changed), eth);
}
enqueue(eth, -1, eth->nominal_width);
break;
@@ -224,74 +223,87 @@ eth_set_arg (GtkObject *object, GtkArg *arg, guint arg_id)
}
static void
-eth_get_arg (GtkObject *object, GtkArg *arg, guint arg_id)
+eth_get_prop (GObject *object, guint prop_id, GValue *val, GParamSpec *pspec)
{
ETableHeader *eth = E_TABLE_HEADER (object);
- switch (arg_id) {
- case ARG_SORT_INFO:
- GTK_VALUE_OBJECT (*arg) = GTK_OBJECT(eth->sort_info);
+ switch (prop_id) {
+ case PROP_SORT_INFO:
+ g_value_set_object (val, G_OBJECT(eth->sort_info));
break;
- case ARG_WIDTH:
- GTK_VALUE_DOUBLE (*arg) = eth->nominal_width;
+ case PROP_WIDTH:
+ g_value_set_double (val, eth->nominal_width);
break;
- case ARG_WIDTH_EXTRAS:
- GTK_VALUE_DOUBLE (*arg) = eth->width_extras;
+ case PROP_WIDTH_EXTRAS:
+ g_value_set_double (val, eth->width_extras);
break;
default:
- arg->type = GTK_TYPE_INVALID;
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
static void
-e_table_header_class_init (GtkObjectClass *object_class)
+e_table_header_class_init (GObjectClass *object_class)
{
ETableHeaderClass *klass = E_TABLE_HEADER_CLASS (object_class);
- object_class->destroy = eth_destroy;
- object_class->set_arg = eth_set_arg;
- object_class->get_arg = eth_get_arg;
+ object_class->finalize = eth_finalize;
+ object_class->set_property = eth_set_prop;
+ object_class->get_property = eth_get_prop;
+
+ e_table_header_parent_class = g_type_class_peek_parent (object_class);
+
+ g_object_class_install_property (
+ object_class, PROP_WIDTH,
+ g_param_spec_double ("width", "Width", "Width",
+ 0.0, G_MAXDOUBLE, 0.0,
+ G_PARAM_READWRITE));
- e_table_header_parent_class = (gtk_type_class (gtk_object_get_type ()));
+ g_object_class_install_property (
+ object_class, PROP_WIDTH_EXTRAS,
+ g_param_spec_double ("width_extras", "Width of Extras", "Width of Extras",
+ 0.0, G_MAXDOUBLE, 0.0,
+ G_PARAM_READWRITE));
- gtk_object_add_arg_type ("ETableHeader::width", GTK_TYPE_DOUBLE,
- GTK_ARG_READWRITE, ARG_WIDTH);
- gtk_object_add_arg_type ("ETableHeader::width_extras", GTK_TYPE_DOUBLE,
- GTK_ARG_READWRITE, ARG_WIDTH_EXTRAS);
- gtk_object_add_arg_type ("ETableHeader::sort_info", GTK_TYPE_OBJECT,
- GTK_ARG_READWRITE, ARG_SORT_INFO);
+ g_object_class_install_property (
+ object_class, PROP_SORT_INFO,
+ g_param_spec_object ("sort_info", "Sort Info", "Sort Info",
+ E_TABLE_SORT_INFO_TYPE,
+ G_PARAM_READWRITE));
eth_signals [STRUCTURE_CHANGE] =
- gtk_signal_new ("structure_change",
- GTK_RUN_LAST,
- E_OBJECT_CLASS_TYPE (object_class),
- GTK_SIGNAL_OFFSET (ETableHeaderClass, structure_change),
- gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
+ g_signal_new ("structure_change",
+ E_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (ETableHeaderClass, structure_change),
+ (GSignalAccumulator) NULL, NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0);
eth_signals [DIMENSION_CHANGE] =
- gtk_signal_new ("dimension_change",
- GTK_RUN_LAST,
- E_OBJECT_CLASS_TYPE (object_class),
- GTK_SIGNAL_OFFSET (ETableHeaderClass, dimension_change),
- gtk_marshal_NONE__INT,
- GTK_TYPE_NONE, 1, GTK_TYPE_INT);
+ g_signal_new ("dimension_change",
+ E_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (ETableHeaderClass, dimension_change),
+ (GSignalAccumulator) NULL, NULL,
+ g_cclosure_marshal_VOID__INT,
+ G_TYPE_NONE, 1, G_TYPE_INT);
eth_signals [EXPANSION_CHANGE] =
- gtk_signal_new ("expansion_change",
- GTK_RUN_LAST,
- E_OBJECT_CLASS_TYPE (object_class),
- GTK_SIGNAL_OFFSET (ETableHeaderClass, expansion_change),
- gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
+ g_signal_new ("expansion_change",
+ E_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (ETableHeaderClass, expansion_change),
+ (GSignalAccumulator) NULL, NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0);
eth_signals [REQUEST_WIDTH] =
- gtk_signal_new ("request_width",
- GTK_RUN_LAST,
- E_OBJECT_CLASS_TYPE (object_class),
- GTK_SIGNAL_OFFSET (ETableHeaderClass, request_width),
- e_marshal_INT__INT,
- GTK_TYPE_INT, 1, GTK_TYPE_INT);
-
- E_OBJECT_CLASS_ADD_SIGNALS (object_class, eth_signals, LAST_SIGNAL);
+ g_signal_new ("request_width",
+ E_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (ETableHeaderClass, request_width),
+ (GSignalAccumulator) NULL, NULL,
+ e_marshal_INT__INT,
+ G_TYPE_INT, 1, G_TYPE_INT);
klass->structure_change = NULL;
klass->dimension_change = NULL;
@@ -324,11 +336,8 @@ e_table_header_init (ETableHeader *eth)
ETableHeader *
e_table_header_new (void)
{
- ETableHeader *eth;
-
- eth = gtk_type_new (e_table_header_get_type ());
- return eth;
+ return (ETableHeader *) g_object_new (E_TABLE_HEADER_TYPE, NULL);
}
static void
@@ -390,7 +399,7 @@ e_table_header_add_column (ETableHeader *eth, ETableCol *tc, int pos)
eth_do_insert (eth, pos, tc);
enqueue(eth, -1, eth->nominal_width);
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [STRUCTURE_CHANGE]);
+ g_signal_emit (G_OBJECT (eth), eth_signals [STRUCTURE_CHANGE], 0);
}
/**
@@ -631,8 +640,8 @@ e_table_header_move (ETableHeader *eth, int source_index, int target_index)
eth_do_insert (eth, target_index, old);
eth_update_offsets (eth);
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [DIMENSION_CHANGE], eth->width);
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [STRUCTURE_CHANGE]);
+ g_signal_emit (G_OBJECT (eth), eth_signals [DIMENSION_CHANGE], 0, eth->width);
+ g_signal_emit (G_OBJECT (eth), eth_signals [STRUCTURE_CHANGE], 0);
}
/**
@@ -653,7 +662,7 @@ e_table_header_remove (ETableHeader *eth, int idx)
eth_do_remove (eth, idx, TRUE);
enqueue(eth, -1, eth->nominal_width);
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [STRUCTURE_CHANGE]);
+ g_signal_emit (G_OBJECT (eth), eth_signals [STRUCTURE_CHANGE], 0);
}
/*
@@ -724,7 +733,7 @@ eth_set_size (ETableHeader *eth, int idx, int size)
eth->columns[i]->expansion = 0;
}
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [EXPANSION_CHANGE]);
+ g_signal_emit (G_OBJECT (eth), eth_signals [EXPANSION_CHANGE], 0);
return;
}
@@ -734,7 +743,7 @@ eth_set_size (ETableHeader *eth, int idx, int size)
for (i = idx; i < eth->col_count; i++) {
eth->columns[i]->expansion = 0;
}
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [EXPANSION_CHANGE]);
+ g_signal_emit (G_OBJECT (eth), eth_signals [EXPANSION_CHANGE], 0);
return;
}
@@ -751,7 +760,7 @@ eth_set_size (ETableHeader *eth, int idx, int size)
for (i = idx + 1; i < eth->col_count; i++) {
eth->columns[i]->expansion = 0;
}
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [EXPANSION_CHANGE]);
+ g_signal_emit (G_OBJECT (eth), eth_signals [EXPANSION_CHANGE], 0);
return;
}
@@ -776,7 +785,7 @@ eth_set_size (ETableHeader *eth, int idx, int size)
eth->columns[i]->expansion = expansion / expandable_count;
}
}
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [EXPANSION_CHANGE]);
+ g_signal_emit (G_OBJECT (eth), eth_signals [EXPANSION_CHANGE], 0);
return;
}
@@ -788,7 +797,7 @@ eth_set_size (ETableHeader *eth, int idx, int size)
eth->columns[i]->expansion *= expansion / old_expansion;
}
}
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [EXPANSION_CHANGE]);
+ g_signal_emit (G_OBJECT (eth), eth_signals [EXPANSION_CHANGE], 0);
}
/**
@@ -870,7 +879,7 @@ eth_calc_widths (ETableHeader *eth)
}
g_free (widths);
if (changed)
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [DIMENSION_CHANGE], eth->width);
+ g_signal_emit (G_OBJECT (eth), eth_signals [DIMENSION_CHANGE], 0, eth->width);
eth_update_offsets (eth);
}
@@ -885,38 +894,17 @@ e_table_header_update_horizontal (ETableHeader *eth)
for (i = 0; i < cols; i++) {
int width = 0;
- gtk_signal_emit_by_name (GTK_OBJECT (eth),
+ g_signal_emit_by_name (G_OBJECT (eth),
"request_width",
i, &width);
eth->columns[i]->min_width = width + 10;
eth->columns[i]->expansion = 1;
}
enqueue(eth, -1, eth->nominal_width);
- gtk_signal_emit (GTK_OBJECT (eth), eth_signals [EXPANSION_CHANGE]);
+ g_signal_emit (G_OBJECT (eth), eth_signals [EXPANSION_CHANGE], 0);
}
-GtkType
-e_table_header_get_type (void)
-{
- static GtkType type = 0;
-
- if (!type){
- GtkTypeInfo info = {
- "ETableHeader",
- sizeof (ETableHeader),
- sizeof (ETableHeaderClass),
- (GtkClassInitFunc) e_table_header_class_init,
- (GtkObjectInitFunc) e_table_header_init,
- NULL, /* reserved 1 */
- NULL, /* reserved 2 */
- (GtkClassInitFunc) NULL
- };
-
- type = gtk_type_unique (gtk_object_get_type (), &info);
- }
-
- return type;
-}
+E_MAKE_TYPE(e_table_header, "ETableHeader", ETableHeader, e_table_header_class_init, e_table_header_init, G_TYPE_OBJECT)
int
e_table_header_prioritized_column (ETableHeader *eth)
diff --git a/widgets/table/e-table-header.h b/widgets/table/e-table-header.h
index c2ce0b2d71..3a9ae6a0bf 100644
--- a/widgets/table/e-table-header.h
+++ b/widgets/table/e-table-header.h
@@ -25,7 +25,7 @@
#ifndef _E_TABLE_COLUMN_H_
#define _E_TABLE_COLUMN_H_
-#include <gtk/gtkobject.h>
+#include <glib-object.h>
#include <gdk/gdk.h>
#include <gal/e-table/e-table-sort-info.h>
#include <gal/e-table/e-table-col.h>
@@ -35,10 +35,11 @@ G_BEGIN_DECLS
typedef struct _ETableHeader ETableHeader;
#define E_TABLE_HEADER_TYPE (e_table_header_get_type ())
-#define E_TABLE_HEADER(o) (GTK_CHECK_CAST ((o), E_TABLE_HEADER_TYPE, ETableHeader))
-#define E_TABLE_HEADER_CLASS(k) (GTK_CHECK_CLASS_CAST((k), E_TABLE_HEADER_TYPE, ETableHeaderClass))
-#define E_IS_TABLE_HEADER(o) (GTK_CHECK_TYPE ((o), E_TABLE_HEADER_TYPE))
-#define E_IS_TABLE_HEADER_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_TABLE_HEADER_TYPE))
+#define E_TABLE_HEADER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), E_TABLE_HEADER_TYPE, ETableHeader))
+#define E_TABLE_HEADER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), E_TABLE_HEADER_TYPE, ETableHeaderClass))
+#define E_IS_TABLE_HEADER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), E_TABLE_HEADER_TYPE))
+#define E_IS_TABLE_HEADER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), E_TABLE_HEADER_TYPE))
+#define E_TABLE_HEADER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS((o), E_TABLE_HEADER_TYPE, ETableHeaderClass))
typedef gboolean (*ETableColCheckFunc) (ETableCol *col, gpointer user_data);
@@ -46,7 +47,7 @@ typedef gboolean (*ETableColCheckFunc) (ETableCol *col, gpointer user_data);
* A Columnar header.
*/
struct _ETableHeader {
- GtkObject base;
+ GObject base;
int col_count;
int width;
@@ -63,7 +64,7 @@ struct _ETableHeader {
};
typedef struct {
- GtkObjectClass parent_class;
+ GObjectClass parent_class;
void (*structure_change) (ETableHeader *eth);
void (*dimension_change) (ETableHeader *eth, int width);
@@ -71,7 +72,7 @@ typedef struct {
int (*request_width) (ETableHeader *eth, int col);
} ETableHeaderClass;
-GtkType e_table_header_get_type (void);
+GType e_table_header_get_type (void);
ETableHeader *e_table_header_new (void);
void e_table_header_add_column (ETableHeader *eth,
@@ -113,7 +114,6 @@ ETableCol *e_table_header_prioritized_column_selected (ETableHeader *e
ETableColCheckFunc check_func,
gpointer user_data);
-
G_END_DECLS
#endif /* _E_TABLE_HEADER_H_ */
diff --git a/widgets/table/e-table-item.c b/widgets/table/e-table-item.c
index e85eeb7106..df2adedc01 100644
--- a/widgets/table/e-table-item.c
+++ b/widgets/table/e-table-item.c
@@ -566,18 +566,18 @@ eti_remove_header_model (ETableItem *eti)
if (!eti->header)
return;
- gtk_signal_disconnect (GTK_OBJECT (eti->header),
- eti->header_structure_change_id);
- gtk_signal_disconnect (GTK_OBJECT (eti->header),
- eti->header_dim_change_id);
- gtk_signal_disconnect (GTK_OBJECT (eti->header),
- eti->header_request_width_id);
+ g_signal_handler_disconnect (G_OBJECT (eti->header),
+ eti->header_structure_change_id);
+ g_signal_handler_disconnect (G_OBJECT (eti->header),
+ eti->header_dim_change_id);
+ g_signal_handler_disconnect (G_OBJECT (eti->header),
+ eti->header_request_width_id);
if (eti->cell_views){
eti_unrealize_cell_views (eti);
eti_detach_cell_views (eti);
}
- gtk_object_unref (GTK_OBJECT (eti->header));
+ g_object_unref (G_OBJECT (eti->header));
eti->header_structure_change_id = 0;
@@ -1366,21 +1366,21 @@ eti_add_header_model (ETableItem *eti, ETableHeader *header)
g_assert (eti->header == NULL);
eti->header = header;
- gtk_object_ref (GTK_OBJECT (header));
+ g_object_ref (G_OBJECT (header));
eti_header_structure_changed (header, eti);
- eti->header_dim_change_id = gtk_signal_connect (
- GTK_OBJECT (header), "dimension_change",
- GTK_SIGNAL_FUNC (eti_header_dim_changed), eti);
+ eti->header_dim_change_id = g_signal_connect (
+ G_OBJECT (header), "dimension_change",
+ G_CALLBACK (eti_header_dim_changed), eti);
- eti->header_structure_change_id = gtk_signal_connect (
- GTK_OBJECT (header), "structure_change",
- GTK_SIGNAL_FUNC (eti_header_structure_changed), eti);
+ eti->header_structure_change_id = g_signal_connect (
+ G_OBJECT (header), "structure_change",
+ G_CALLBACK (eti_header_structure_changed), eti);
- eti->header_request_width_id = gtk_signal_connect
- (GTK_OBJECT (header), "request_width",
- GTK_SIGNAL_FUNC (eti_request_column_width), eti);
+ eti->header_request_width_id = g_signal_connect
+ (G_OBJECT (header), "request_width",
+ G_CALLBACK (eti_request_column_width), eti);
}
/*
@@ -2955,7 +2955,7 @@ eti_class_init (GtkObjectClass *object_class)
GTK_RUN_LAST,
E_OBJECT_CLASS_TYPE (object_class),
GTK_SIGNAL_OFFSET (ETableItemClass, style_set),
- gtk_marshal_NONE__POINTER,
+ gtk_marshal_NONE__OBJECT,
GTK_TYPE_NONE, 1, GTK_TYPE_STYLE);
E_OBJECT_CLASS_ADD_SIGNALS (object_class, eti_signals, LAST_SIGNAL);
diff --git a/widgets/table/e-table-search.c b/widgets/table/e-table-search.c
index 0348189446..c0460e4524 100644
--- a/widgets/table/e-table-search.c
+++ b/widgets/table/e-table-search.c
@@ -22,16 +22,11 @@
*/
#include <config.h>
-#include <gtk/gtksignal.h>
#include "e-table-search.h"
#include "gal/util/e-util.h"
#include <string.h>
-#define ETS_CLASS(e) ((ETableSearchClass *)((GtkObject *)e)->klass)
-
-#define PARENT_TYPE gtk_object_get_type ()
-
#define d(x)
d(static gint depth = 0);
@@ -43,7 +38,7 @@ struct _ETableSearchPrivate {
gunichar last_character;
};
-static GtkObjectClass *e_table_search_parent_class;
+static GObjectClass *e_table_search_parent_class;
enum {
SEARCH_SEARCH,
@@ -60,8 +55,9 @@ e_table_search_search (ETableSearch *e_table_search, char *string, ETableSearchF
g_return_val_if_fail (e_table_search != NULL, FALSE);
g_return_val_if_fail (E_IS_TABLE_SEARCH (e_table_search), FALSE);
- gtk_signal_emit (GTK_OBJECT (e_table_search),
- e_table_search_signals [SEARCH_SEARCH], string, flags, &ret_val);
+ g_signal_emit (G_OBJECT (e_table_search),
+ e_table_search_signals [SEARCH_SEARCH],
+ 0, string, flags, &ret_val);
return ret_val;
}
@@ -72,8 +68,8 @@ e_table_search_accept (ETableSearch *e_table_search)
g_return_if_fail (e_table_search != NULL);
g_return_if_fail (E_IS_TABLE_SEARCH (e_table_search));
- gtk_signal_emit (GTK_OBJECT (e_table_search),
- e_table_search_signals [SEARCH_ACCEPT]);
+ g_signal_emit (G_OBJECT (e_table_search),
+ e_table_search_signals [SEARCH_ACCEPT], 0);
}
static gboolean
@@ -107,7 +103,7 @@ add_timeout (ETableSearch *ets)
}
static void
-e_table_search_destroy (GtkObject *object)
+e_table_search_finalize (GObject *object)
{
ETableSearch *ets = (ETableSearch *) object;
@@ -115,35 +111,35 @@ e_table_search_destroy (GtkObject *object)
g_free (ets->priv->search_string);
g_free (ets->priv);
- if (e_table_search_parent_class->destroy)
- (*e_table_search_parent_class->destroy)(object);
+ if (e_table_search_parent_class->finalize)
+ (*e_table_search_parent_class->finalize)(object);
}
static void
-e_table_search_class_init (GtkObjectClass *object_class)
+e_table_search_class_init (GObjectClass *object_class)
{
ETableSearchClass *klass = E_TABLE_SEARCH_CLASS(object_class);
- e_table_search_parent_class = gtk_type_class (PARENT_TYPE);
+ e_table_search_parent_class = g_type_class_peek_parent (klass);
- object_class->destroy = e_table_search_destroy;
+ object_class->finalize = e_table_search_finalize;
e_table_search_signals [SEARCH_SEARCH] =
- gtk_signal_new ("search",
- GTK_RUN_LAST,
- E_OBJECT_CLASS_TYPE (object_class),
- GTK_SIGNAL_OFFSET (ETableSearchClass, search),
- e_marshal_BOOLEAN__STRING_INT,
- GTK_TYPE_BOOL, 2, GTK_TYPE_STRING, GTK_TYPE_INT);
+ g_signal_new ("search",
+ E_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (ETableSearchClass, search),
+ (GSignalAccumulator) NULL, NULL,
+ e_marshal_BOOLEAN__STRING_INT,
+ G_TYPE_BOOLEAN, 2, G_TYPE_STRING, G_TYPE_INT);
e_table_search_signals [SEARCH_ACCEPT] =
- gtk_signal_new ("accept",
- GTK_RUN_LAST,
- E_OBJECT_CLASS_TYPE (object_class),
- GTK_SIGNAL_OFFSET (ETableSearchClass, accept),
- gtk_marshal_NONE__NONE,
- GTK_TYPE_NONE, 0);
-
- E_OBJECT_CLASS_ADD_SIGNALS (object_class, e_table_search_signals, LAST_SIGNAL);
+ g_signal_new ("accept",
+ E_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (ETableSearchClass, accept),
+ (GSignalAccumulator) NULL, NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0);
klass->search = NULL;
klass->accept = NULL;
@@ -160,35 +156,12 @@ e_table_search_init (ETableSearch *ets)
}
-GtkType
-e_table_search_get_type (void)
-{
- static guint type = 0;
-
- if (!type)
- {
- GtkTypeInfo info =
- {
- "ETableSearch",
- sizeof (ETableSearch),
- sizeof (ETableSearchClass),
- (GtkClassInitFunc) e_table_search_class_init,
- (GtkObjectInitFunc) e_table_search_init,
- /* reserved_1 */ NULL,
- /* reserved_2 */ NULL,
- (GtkClassInitFunc) NULL,
- };
-
- type = gtk_type_unique (PARENT_TYPE, &info);
- }
-
- return type;
-}
+E_MAKE_TYPE(e_table_search, "ETableSearch", ETableSearch, e_table_search_class_init, e_table_search_init, G_TYPE_OBJECT)
ETableSearch *
e_table_search_new (void)
{
- ETableSearch *ets = gtk_type_new (e_table_search_get_type());
+ ETableSearch *ets = g_object_new (E_TABLE_SEARCH_TYPE, NULL);
return ets;
}
diff --git a/widgets/table/e-table-search.h b/widgets/table/e-table-search.h
index 0c3e8b9bd9..b3cdd9ff41 100644
--- a/widgets/table/e-table-search.h
+++ b/widgets/table/e-table-search.h
@@ -29,10 +29,11 @@
G_BEGIN_DECLS
#define E_TABLE_SEARCH_TYPE (e_table_search_get_type ())
-#define E_TABLE_SEARCH(o) (GTK_CHECK_CAST ((o), E_TABLE_SEARCH_TYPE, ETableSearch))
-#define E_TABLE_SEARCH_CLASS(k) (GTK_CHECK_CLASS_CAST((k), E_TABLE_SEARCH_TYPE, ETableSearchClass))
-#define E_IS_TABLE_SEARCH(o) (GTK_CHECK_TYPE ((o), E_TABLE_SEARCH_TYPE))
-#define E_IS_TABLE_SEARCH_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_TABLE_SEARCH_TYPE))
+#define E_TABLE_SEARCH(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), E_TABLE_SEARCH_TYPE, ETableSearch))
+#define E_TABLE_SEARCH_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), E_TABLE_SEARCH_TYPE, ETableSearchClass))
+#define E_IS_TABLE_SEARCH(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), E_TABLE_SEARCH_TYPE))
+#define E_IS_TABLE_SEARCH_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), E_TABLE_SEARCH_TYPE))
+#define E_TABLE_SEARCH_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS((o), E_TABLE_SEARCH_TYPE, ETableSearchClass))
typedef struct _ETableSearchPrivate ETableSearchPrivate;
@@ -41,13 +42,13 @@ typedef enum {
} ETableSearchFlags;
typedef struct {
- GtkObject base;
+ GObject base;
ETableSearchPrivate *priv;
} ETableSearch;
typedef struct {
- GtkObjectClass parent_class;
+ GObjectClass parent_class;
/*
* Signals
@@ -56,7 +57,7 @@ typedef struct {
void (*accept) (ETableSearch *ets);
} ETableSearchClass;
-GtkType e_table_search_get_type (void);
+GType e_table_search_get_type (void);
ETableSearch *e_table_search_new (void);
/**/
diff --git a/widgets/table/e-table-sorted.c b/widgets/table/e-table-sorted.c
index c84d6c15c0..0062e03699 100644
--- a/widgets/table/e-table-sorted.c
+++ b/widgets/table/e-table-sorted.c
@@ -69,7 +69,7 @@ ets_destroy (GtkObject *object)
}
if (ets->full_header)
- gtk_object_unref(GTK_OBJECT(ets->full_header));
+ g_object_unref(G_OBJECT(ets->full_header));
ets->full_header = NULL;
GTK_OBJECT_CLASS (ets_parent_class)->destroy (object);
@@ -141,7 +141,7 @@ e_table_sorted_new (ETableModel *source, ETableHeader *full_header, ETableSortIn
ets->sort_info = sort_info;
gtk_object_ref(GTK_OBJECT(ets->sort_info));
ets->full_header = full_header;
- gtk_object_ref(GTK_OBJECT(ets->full_header));
+ g_object_ref(G_OBJECT(ets->full_header));
ets_proxy_model_changed(etss, source);
diff --git a/widgets/table/e-table-sorter.c b/widgets/table/e-table-sorter.c
index 8c530dca90..673969b752 100644
--- a/widgets/table/e-table-sorter.c
+++ b/widgets/table/e-table-sorter.c
@@ -91,7 +91,7 @@ ets_destroy (GtkObject *object)
ets->sort_info = NULL;
if (ets->full_header)
- gtk_object_unref(GTK_OBJECT(ets->full_header));
+ g_object_unref(G_OBJECT(ets->full_header));
ets->full_header = NULL;
if (ets->source)
@@ -191,7 +191,7 @@ e_table_sorter_new (ETableModel *source, ETableHeader *full_header, ETableSortIn
ets->sort_info = sort_info;
gtk_object_ref(GTK_OBJECT(ets->sort_info));
ets->full_header = full_header;
- gtk_object_ref(GTK_OBJECT(ets->full_header));
+ g_object_ref(G_OBJECT(ets->full_header));
ets->source = source;
gtk_object_ref(GTK_OBJECT(ets->source));
diff --git a/widgets/table/e-table-specification.c b/widgets/table/e-table-specification.c
index 6d8653b6d6..6c1b4d7b04 100644
--- a/widgets/table/e-table-specification.c
+++ b/widgets/table/e-table-specification.c
@@ -30,18 +30,15 @@
#include <stdlib.h>
#include <string.h>
-#include <gtk/gtksignal.h>
#include <libxml/parser.h>
#include <libxml/xmlmemory.h>
#include "gal/util/e-util.h"
#include "gal/util/e-xml-utils.h"
-#define PARENT_TYPE (gtk_object_get_type ())
-
-static GtkObjectClass *etsp_parent_class;
+static GObjectClass *etsp_parent_class;
static void
-etsp_destroy (GtkObject *object)
+etsp_finalize (GObject *object)
{
ETableSpecification *etsp = E_TABLE_SPECIFICATION (object);
int i;
@@ -64,15 +61,15 @@ etsp_destroy (GtkObject *object)
g_free (etsp->domain);
etsp->domain = NULL;
- GTK_OBJECT_CLASS (etsp_parent_class)->destroy (object);
+ etsp_parent_class->finalize (object);
}
static void
-etsp_class_init (GtkObjectClass *klass)
+etsp_class_init (GObjectClass *klass)
{
- etsp_parent_class = gtk_type_class (PARENT_TYPE);
+ etsp_parent_class = g_type_class_peek_parent (klass);
- klass->destroy = etsp_destroy;
+ klass->finalize = etsp_finalize;
}
static void
@@ -99,7 +96,7 @@ etsp_init (ETableSpecification *etsp)
etsp->domain = NULL;
}
-E_MAKE_TYPE (e_table_specification, "ETableSpecification", ETableSpecification, etsp_class_init, etsp_init, PARENT_TYPE)
+E_MAKE_TYPE (e_table_specification, "ETableSpecification", ETableSpecification, etsp_class_init, etsp_init, G_TYPE_OBJECT)
/**
* e_table_specification_new:
@@ -112,7 +109,7 @@ E_MAKE_TYPE (e_table_specification, "ETableSpecification", ETableSpecification,
ETableSpecification *
e_table_specification_new (void)
{
- ETableSpecification *etsp = gtk_type_new (E_TABLE_SPECIFICATION_TYPE);
+ ETableSpecification *etsp = g_object_new (E_TABLE_SPECIFICATION_TYPE, NULL);
return (ETableSpecification *) etsp;
}
diff --git a/widgets/table/e-table-specification.h b/widgets/table/e-table-specification.h
index 92f52a4f42..961752b9b8 100644
--- a/widgets/table/e-table-specification.h
+++ b/widgets/table/e-table-specification.h
@@ -24,25 +24,24 @@
#ifndef _E_TABLE_SPECIFICATION_H_
#define _E_TABLE_SPECIFICATION_H_
-#include <gtk/gtkobject.h>
+#include <glib-object.h>
#include <libxml/tree.h>
#include <gal/widgets/e-selection-model.h>
#include <gal/e-table/e-table-state.h>
#include <gal/e-table/e-table-column-specification.h>
#include <gal/e-table/e-table-defines.h>
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
+G_BEGIN_DECLS
#define E_TABLE_SPECIFICATION_TYPE (e_table_specification_get_type ())
-#define E_TABLE_SPECIFICATION(o) (GTK_CHECK_CAST ((o), E_TABLE_SPECIFICATION_TYPE, ETableSpecification))
-#define E_TABLE_SPECIFICATION_CLASS(k) (GTK_CHECK_CLASS_CAST((k), E_TABLE_SPECIFICATION_TYPE, ETableSpecificationClass))
-#define E_IS_TABLE_SPECIFICATION(o) (GTK_CHECK_TYPE ((o), E_TABLE_SPECIFICATION_TYPE))
-#define E_IS_TABLE_SPECIFICATION_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_TABLE_SPECIFICATION_TYPE))
+#define E_TABLE_SPECIFICATION(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), E_TABLE_SPECIFICATION_TYPE, ETableSpecification))
+#define E_TABLE_SPECIFICATION_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), E_TABLE_SPECIFICATION_TYPE, ETableSpecificationClass))
+#define E_IS_TABLE_SPECIFICATION(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), E_TABLE_SPECIFICATION_TYPE))
+#define E_IS_TABLE_SPECIFICATION_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), E_TABLE_SPECIFICATION_TYPE))
+#define E_TABLE_SPECIFICATION_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS((o), E_TABLE_SPECIFICATION_TYPE, ETableSpecificationClass))
typedef struct {
- GtkObject base;
+ GObject base;
ETableColumnSpecification **columns;
ETableState *state;
@@ -65,10 +64,10 @@ typedef struct {
} ETableSpecification;
typedef struct {
- GtkObjectClass parent_class;
+ GObjectClass parent_class;
} ETableSpecificationClass;
-GtkType e_table_specification_get_type (void);
+GType e_table_specification_get_type (void);
ETableSpecification *e_table_specification_new (void);
gboolean e_table_specification_load_from_file (ETableSpecification *specification,
@@ -85,8 +84,6 @@ xmlNode *e_table_specification_save_to_node (ETableSpecificatio
xmlDoc *doc);
ETableSpecification *e_table_specification_duplicate (ETableSpecification *spec);
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
+G_END_DECLS
#endif /* _E_TABLE_SPECIFICATION_H_ */
diff --git a/widgets/table/e-table-utils.c b/widgets/table/e-table-utils.c
index 3af68ea2a3..b896ae3944 100644
--- a/widgets/table/e-table-utils.c
+++ b/widgets/table/e-table-utils.c
@@ -34,16 +34,17 @@ e_table_state_to_header (GtkWidget *widget, ETableHeader *full_header, ETableSta
ETableHeader *nh;
const int max_cols = e_table_header_count (full_header);
int column;
+ GValue *val = g_new0 (GValue, 1);
g_return_val_if_fail (widget, NULL);
g_return_val_if_fail (full_header, NULL);
g_return_val_if_fail (state, NULL);
nh = e_table_header_new ();
-
- gtk_object_set(GTK_OBJECT(nh),
- "width_extras", e_table_header_width_extras(widget->style),
- NULL);
+ g_value_init (val, G_TYPE_DOUBLE);
+ g_value_set_double (val, e_table_header_width_extras (widget->style));
+ g_object_set_property (G_OBJECT(nh), "width_extras", val);
+ g_free (val);
for (column = 0; column < state->col_count; column++) {
int col;
diff --git a/widgets/table/e-table.c b/widgets/table/e-table.c
index 5772c26fc7..a97e291bfe 100644
--- a/widgets/table/e-table.c
+++ b/widgets/table/e-table.c
@@ -269,16 +269,16 @@ disconnect_header (ETable *e_table)
return;
if (e_table->structure_change_id)
- gtk_signal_disconnect (GTK_OBJECT (e_table->header),
- e_table->structure_change_id);
+ g_signal_handler_disconnect (G_OBJECT (e_table->header),
+ e_table->structure_change_id);
if (e_table->expansion_change_id)
- gtk_signal_disconnect (GTK_OBJECT (e_table->header),
- e_table->expansion_change_id);
+ g_signal_handler_disconnect (G_OBJECT (e_table->header),
+ e_table->expansion_change_id);
if (e_table->dimension_change_id)
- gtk_signal_disconnect (GTK_OBJECT (e_table->header),
- e_table->dimension_change_id);
+ g_signal_handler_disconnect (G_OBJECT (e_table->header),
+ e_table->dimension_change_id);
- gtk_object_unref(GTK_OBJECT(e_table->header));
+ g_object_unref(G_OBJECT(e_table->header));
e_table->header = NULL;
}
@@ -291,14 +291,14 @@ connect_header (ETable *e_table, ETableState *state)
e_table->header = e_table_state_to_header (GTK_WIDGET(e_table), e_table->full_header, state);
e_table->structure_change_id =
- gtk_signal_connect (GTK_OBJECT (e_table->header), "structure_change",
- GTK_SIGNAL_FUNC (structure_changed), e_table);
+ g_signal_connect (G_OBJECT (e_table->header), "structure_change",
+ G_CALLBACK (structure_changed), e_table);
e_table->expansion_change_id =
- gtk_signal_connect (GTK_OBJECT (e_table->header), "expansion_change",
- GTK_SIGNAL_FUNC (expansion_changed), e_table);
+ g_signal_connect (G_OBJECT (e_table->header), "expansion_change",
+ G_CALLBACK (expansion_changed), e_table);
e_table->dimension_change_id =
- gtk_signal_connect (GTK_OBJECT (e_table->header), "dimension_change",
- GTK_SIGNAL_FUNC (dimension_changed), e_table);
+ g_signal_connect (G_OBJECT (e_table->header), "dimension_change",
+ G_CALLBACK (dimension_changed), e_table);
}
static void
@@ -310,12 +310,12 @@ et_destroy (GtkObject *object)
if (et->search) {
if (et->search_search_id)
- gtk_signal_disconnect (GTK_OBJECT (et->search),
- et->search_search_id);
+ g_signal_handler_disconnect (G_OBJECT (et->search),
+ et->search_search_id);
if (et->search_accept_id)
- gtk_signal_disconnect (GTK_OBJECT (et->search),
- et->search_accept_id);
- gtk_object_unref (GTK_OBJECT (et->search));
+ g_signal_handler_disconnect (G_OBJECT (et->search),
+ et->search_accept_id);
+ g_object_unref (G_OBJECT (et->search));
et->search = NULL;
}
@@ -346,7 +346,7 @@ et_destroy (GtkObject *object)
}
if (et->full_header) {
- gtk_object_unref (GTK_OBJECT (et->full_header));
+ g_object_unref (G_OBJECT (et->full_header));
et->full_header = NULL;
}
@@ -366,7 +366,7 @@ et_destroy (GtkObject *object)
}
if (et->spec) {
- gtk_object_unref (GTK_OBJECT (et->spec));
+ g_object_unref (G_OBJECT (et->spec));
et->spec = NULL;
}
@@ -486,11 +486,11 @@ init_search (ETable *e_table)
e_table->search = e_table_search_new();
e_table->search_search_id =
- gtk_signal_connect (GTK_OBJECT (e_table->search), "search",
- GTK_SIGNAL_FUNC (et_search_search), e_table);
+ g_signal_connect (G_OBJECT (e_table->search), "search",
+ G_CALLBACK (et_search_search), e_table);
e_table->search_accept_id =
- gtk_signal_connect (GTK_OBJECT (e_table->search), "accept",
- GTK_SIGNAL_FUNC (et_search_accept), e_table);
+ g_signal_connect (G_OBJECT (e_table->search), "accept",
+ G_CALLBACK (et_search_accept), e_table);
}
static void
@@ -718,8 +718,11 @@ table_canvas_size_allocate (GtkWidget *widget, GtkAllocation *alloc,
gdouble width;
gdouble height;
gdouble item_height;
+ GValue *val = g_new0 (GValue, 1);
+ g_value_init (val, G_TYPE_DOUBLE);
width = alloc->width;
+ g_value_set_double (val, width);
gtk_object_get (GTK_OBJECT (e_table->canvas_vbox),
"height", &height,
NULL);
@@ -729,9 +732,8 @@ table_canvas_size_allocate (GtkWidget *widget, GtkAllocation *alloc,
gtk_object_set (GTK_OBJECT (e_table->canvas_vbox),
"width", width,
NULL);
- gtk_object_set (GTK_OBJECT (e_table->header),
- "width", width,
- NULL);
+ g_object_set_property (G_OBJECT (e_table->header), "width", val);
+ g_free (val);
if (e_table->reflow_idle_id)
g_source_remove(e_table->reflow_idle_id);
table_canvas_reflow_idle(e_table);
@@ -1238,10 +1240,14 @@ e_table_fill_table (ETable *e_table, ETableModel *model)
void
e_table_set_state_object(ETable *e_table, ETableState *state)
{
+ GValue *val = g_new0 (GValue, 1);
+ g_value_init (val, G_TYPE_DOUBLE);
+
connect_header (e_table, state);
- gtk_object_set (GTK_OBJECT (e_table->header),
- "width", (double) (GTK_WIDGET(e_table->table_canvas)->allocation.width),
- NULL);
+
+ g_value_set_double (val, (double) (GTK_WIDGET(e_table->table_canvas)->allocation.width));
+ g_object_set_property (G_OBJECT (e_table->header), "width", val);
+ g_free (val);
if (e_table->sort_info) {
if (e_table->group_info_change_id)
@@ -1444,13 +1450,14 @@ et_real_construct (ETable *e_table, ETableModel *etm, ETableExtras *ete,
{
int row = 0;
int col_count, i;
+ GValue *val = g_new0 (GValue, 1);
+ g_value_init (val, G_TYPE_OBJECT);
if (ete)
- gtk_object_ref(GTK_OBJECT(ete));
+ g_object_ref(G_OBJECT(ete));
else {
ete = e_table_extras_new();
- gtk_object_ref(GTK_OBJECT(ete));
- gtk_object_sink(GTK_OBJECT(ete));
+ g_object_ref(G_OBJECT(ete));
}
e_table->domain = g_strdup (specification->domain);
@@ -1466,8 +1473,7 @@ et_real_construct (ETable *e_table, ETableModel *etm, ETableExtras *ete,
e_table->draw_focus = specification->draw_focus;
e_table->cursor_mode = specification->cursor_mode;
e_table->full_header = e_table_spec_to_full_header(specification, ete);
- gtk_object_ref (GTK_OBJECT (e_table->full_header));
- gtk_object_sink (GTK_OBJECT (e_table->full_header));
+ g_object_ref (G_OBJECT (e_table->full_header));
col_count = e_table_header_count (e_table->full_header);
for (i = 0; i < col_count; i++) {
@@ -1502,9 +1508,9 @@ et_real_construct (ETable *e_table, ETableModel *etm, ETableExtras *ete,
GTK_SIGNAL_FUNC (sort_info_changed), e_table);
- gtk_object_set(GTK_OBJECT(e_table->header),
- "sort_info", e_table->sort_info,
- NULL);
+ g_value_set_object (val, e_table->sort_info);
+ g_object_set_property (G_OBJECT(e_table->header), "sort_info", val);
+ g_free (val);
e_table->sorter = e_table_sorter_new(etm, e_table->full_header, e_table->sort_info);
gtk_object_ref (GTK_OBJECT (e_table->sorter));
@@ -1552,7 +1558,7 @@ et_real_construct (ETable *e_table, ETableModel *etm, ETableExtras *ete,
gtk_widget_pop_colormap ();
- gtk_object_unref(GTK_OBJECT(ete));
+ g_object_unref(G_OBJECT(ete));
return e_table;
}
@@ -1589,10 +1595,9 @@ e_table_construct (ETable *e_table, ETableModel *etm, ETableExtras *ete,
gtk_object_sink (GTK_OBJECT (etm));
specification = e_table_specification_new();
- gtk_object_ref (GTK_OBJECT (specification));
- gtk_object_sink (GTK_OBJECT (specification));
+ g_object_ref (G_OBJECT (specification));
if (!e_table_specification_load_from_string(specification, spec_str)) {
- gtk_object_unref(GTK_OBJECT(specification));
+ g_object_unref(G_OBJECT(specification));
return NULL;
}
@@ -1650,7 +1655,7 @@ e_table_construct_from_spec_file (ETable *e_table, ETableModel *etm, ETableExtra
specification = e_table_specification_new();
if (!e_table_specification_load_from_file(specification, spec_fn)) {
- gtk_object_unref(GTK_OBJECT(specification));
+ g_object_unref(G_OBJECT(specification));
return NULL;
}
diff --git a/widgets/table/e-tree-sorted.c b/widgets/table/e-tree-sorted.c
index 0e6cf3ebf9..13f32f54a1 100644
--- a/widgets/table/e-tree-sorted.c
+++ b/widgets/table/e-tree-sorted.c
@@ -1330,7 +1330,7 @@ e_tree_sorted_construct (ETreeSorted *ets, ETreeModel *source, ETableHeader *ful
ets->priv->full_header = full_header;
if (full_header)
- gtk_object_ref(GTK_OBJECT(full_header));
+ g_object_ref(G_OBJECT(full_header));
ets->priv->sort_info = sort_info;
if (sort_info)
diff --git a/widgets/table/e-tree.c b/widgets/table/e-tree.c
index c4cb8173ce..9383de1646 100644
--- a/widgets/table/e-tree.c
+++ b/widgets/table/e-tree.c
@@ -321,11 +321,11 @@ disconnect_header (ETree *e_tree)
return;
if (e_tree->priv->structure_change_id)
- gtk_signal_disconnect (GTK_OBJECT (e_tree->priv->header),
- e_tree->priv->structure_change_id);
+ g_signal_handler_disconnect (G_OBJECT (e_tree->priv->header),
+ e_tree->priv->structure_change_id);
if (e_tree->priv->expansion_change_id)
- gtk_signal_disconnect (GTK_OBJECT (e_tree->priv->header),
- e_tree->priv->expansion_change_id);
+ g_signal_handler_disconnect (G_OBJECT (e_tree->priv->header),
+ e_tree->priv->expansion_change_id);
if (e_tree->priv->sort_info) {
if (e_tree->priv->sort_info_change_id)
gtk_signal_disconnect (GTK_OBJECT (e_tree->priv->sort_info),
@@ -336,7 +336,7 @@ disconnect_header (ETree *e_tree)
gtk_object_unref(GTK_OBJECT(e_tree->priv->sort_info));
}
- gtk_object_unref(GTK_OBJECT(e_tree->priv->header));
+ g_object_unref(G_OBJECT(e_tree->priv->header));
e_tree->priv->header = NULL;
e_tree->priv->sort_info = NULL;
}
@@ -344,17 +344,19 @@ disconnect_header (ETree *e_tree)
static void
connect_header (ETree *e_tree, ETableState *state)
{
+ GValue *val = g_new0 (GValue, 1);
+
if (e_tree->priv->header != NULL)
disconnect_header (e_tree);
e_tree->priv->header = e_table_state_to_header (GTK_WIDGET(e_tree), e_tree->priv->full_header, state);
e_tree->priv->structure_change_id =
- gtk_signal_connect (GTK_OBJECT (e_tree->priv->header), "structure_change",
- GTK_SIGNAL_FUNC (search_col_change_trigger), e_tree);
+ g_signal_connect (G_OBJECT (e_tree->priv->header), "structure_change",
+ G_CALLBACK (search_col_change_trigger), e_tree);
e_tree->priv->expansion_change_id =
- gtk_signal_connect (GTK_OBJECT (e_tree->priv->header), "expansion_change",
- GTK_SIGNAL_FUNC (change_trigger), e_tree);
+ g_signal_connect (G_OBJECT (e_tree->priv->header), "expansion_change",
+ G_CALLBACK (change_trigger), e_tree);
if (state->sort_info) {
e_tree->priv->sort_info = e_table_sort_info_duplicate(state->sort_info);
@@ -368,9 +370,10 @@ connect_header (ETree *e_tree, ETableState *state)
} else
e_tree->priv->sort_info = NULL;
- gtk_object_set(GTK_OBJECT(e_tree->priv->header),
- "sort_info", e_tree->priv->sort_info,
- NULL);
+ g_value_init (val, G_TYPE_OBJECT);
+ g_value_set_object (val, e_tree->priv->sort_info);
+ g_object_set_property (G_OBJECT(e_tree->priv->header), "sort_info", val);
+ g_free (val);
}
static void
@@ -382,12 +385,12 @@ et_destroy (GtkObject *object)
if (et->priv->search) {
if (et->priv->search_search_id)
- gtk_signal_disconnect (GTK_OBJECT (et->priv->search),
- et->priv->search_search_id);
+ g_signal_handler_disconnect (G_OBJECT (et->priv->search),
+ et->priv->search_search_id);
if (et->priv->search_accept_id)
- gtk_signal_disconnect (GTK_OBJECT (et->priv->search),
- et->priv->search_accept_id);
- gtk_object_unref (GTK_OBJECT (et->priv->search));
+ g_signal_handler_disconnect (G_OBJECT (et->priv->search),
+ et->priv->search_accept_id);
+ g_object_unref (G_OBJECT (et->priv->search));
}
if (et->priv->reflow_idle_id)
@@ -403,17 +406,20 @@ et_destroy (GtkObject *object)
gtk_object_unref (GTK_OBJECT (et->priv->etta));
gtk_object_unref (GTK_OBJECT (et->priv->model));
gtk_object_unref (GTK_OBJECT (et->priv->sorted));
- gtk_object_unref (GTK_OBJECT (et->priv->full_header));
+ g_object_unref (G_OBJECT (et->priv->full_header));
disconnect_header (et);
gtk_object_unref (GTK_OBJECT (et->priv->selection));
if (et->priv->spec)
- gtk_object_unref (GTK_OBJECT (et->priv->spec));
+ g_object_unref (G_OBJECT (et->priv->spec));
+ et->priv->spec = NULL;
if (et->priv->sorter)
gtk_object_unref (GTK_OBJECT (et->priv->sorter));
+ et->priv->sorter = NULL;
if (et->priv->header_canvas)
gtk_widget_destroy (GTK_WIDGET (et->priv->header_canvas));
+ et->priv->header_canvas = NULL;
if (et->priv->site)
e_tree_drag_source_unset (et);
@@ -603,11 +609,11 @@ e_tree_init (GtkObject *object)
e_tree->priv->search = e_table_search_new();
e_tree->priv->search_search_id =
- gtk_signal_connect (GTK_OBJECT (e_tree->priv->search), "search",
- GTK_SIGNAL_FUNC (et_search_search), e_tree);
+ g_signal_connect (G_OBJECT (e_tree->priv->search), "search",
+ G_CALLBACK (et_search_search), e_tree);
e_tree->priv->search_accept_id =
- gtk_signal_connect (GTK_OBJECT (e_tree->priv->search), "accept",
- GTK_SIGNAL_FUNC (et_search_accept), e_tree);
+ g_signal_connect (G_OBJECT (e_tree->priv->search), "accept",
+ G_CALLBACK (et_search_accept), e_tree);
e_tree->priv->current_search_col = NULL;
e_tree->priv->search_col_set = FALSE;
@@ -745,8 +751,11 @@ tree_canvas_size_allocate (GtkWidget *widget, GtkAllocation *alloc,
gdouble width;
gdouble height;
gdouble item_height;
+ GValue *val = g_new0 (GValue, 1);
+ g_value_init (val, G_TYPE_DOUBLE);
width = alloc->width;
+ g_value_set_double (val, width);
gtk_object_get (GTK_OBJECT (e_tree->priv->item),
"height", &height,
NULL);
@@ -756,9 +765,8 @@ tree_canvas_size_allocate (GtkWidget *widget, GtkAllocation *alloc,
gtk_object_set (GTK_OBJECT (e_tree->priv->item),
"width", width,
NULL);
- gtk_object_set (GTK_OBJECT (e_tree->priv->header),
- "width", width,
- NULL);
+ g_object_set_property (G_OBJECT (e_tree->priv->header), "width", val);
+ g_free (val);
if (e_tree->priv->reflow_idle_id)
g_source_remove(e_tree->priv->reflow_idle_id);
tree_canvas_reflow_idle(e_tree);
@@ -1529,7 +1537,7 @@ e_tree_construct_from_spec_file (ETree *e_tree, ETreeModel *etm, ETableExtras *e
specification = e_table_specification_new();
if (!e_table_specification_load_from_file(specification, spec_fn)) {
- gtk_object_unref(GTK_OBJECT(specification));
+ g_object_unref(G_OBJECT(specification));
return NULL;
}