aboutsummaryrefslogtreecommitdiffstats
path: root/calendar
diff options
context:
space:
mode:
authorMike Gorse <mgorse@suse.com>2014-03-13 00:22:54 +0800
committerMilan Crha <mcrha@redhat.com>2014-03-13 00:22:54 +0800
commit03ca50dbe3809c7321ab7038b0d62788552d501d (patch)
tree041bff6b0edd258bb49291117892ebb30f8be8d8 /calendar
parentd8ac0f010b636a675e279da9a1fcfc5bc5f03789 (diff)
downloadgsoc2013-evolution-03ca50dbe3809c7321ab7038b0d62788552d501d.tar
gsoc2013-evolution-03ca50dbe3809c7321ab7038b0d62788552d501d.tar.gz
gsoc2013-evolution-03ca50dbe3809c7321ab7038b0d62788552d501d.tar.bz2
gsoc2013-evolution-03ca50dbe3809c7321ab7038b0d62788552d501d.tar.lz
gsoc2013-evolution-03ca50dbe3809c7321ab7038b0d62788552d501d.tar.xz
gsoc2013-evolution-03ca50dbe3809c7321ab7038b0d62788552d501d.tar.zst
gsoc2013-evolution-03ca50dbe3809c7321ab7038b0d62788552d501d.zip
Bug #722938 - Adapt a11y code for newest gtk
As of gtk+ 3.2, AtkObjectFactories are no longer used to generate accessibles for gtk widgets, so our custom atk classes need refactoring.
Diffstat (limited to 'calendar')
-rw-r--r--calendar/gui/e-calendar-view.c13
-rw-r--r--calendar/gui/e-day-view.c3
-rw-r--r--calendar/gui/e-week-view.c3
-rw-r--r--calendar/gui/ea-cal-view.c64
-rw-r--r--calendar/gui/ea-cal-view.h5
-rw-r--r--calendar/gui/ea-calendar.c21
-rw-r--r--calendar/gui/ea-calendar.h3
-rw-r--r--calendar/gui/ea-day-view-main-item.c80
-rw-r--r--calendar/gui/ea-day-view-main-item.h5
-rw-r--r--calendar/gui/ea-day-view.c50
-rw-r--r--calendar/gui/ea-week-view-main-item.c80
-rw-r--r--calendar/gui/ea-week-view-main-item.h5
-rw-r--r--calendar/gui/ea-week-view.c51
13 files changed, 64 insertions, 319 deletions
diff --git a/calendar/gui/e-calendar-view.c b/calendar/gui/e-calendar-view.c
index 05ef5a5077..bf510dd531 100644
--- a/calendar/gui/e-calendar-view.c
+++ b/calendar/gui/e-calendar-view.c
@@ -37,6 +37,7 @@
#include "ea-calendar.h"
#include "e-cal-model-calendar.h"
#include "e-calendar-view.h"
+#include "ea-cal-view.h"
#include "itip-utils.h"
#include "dialogs/comp-editor-util.h"
#include "dialogs/delete-comp.h"
@@ -361,6 +362,8 @@ calendar_view_dispose (GObject *object)
g_object_unref (keyboard);
}
+ g_clear_object (&priv->calendar);
+
/* Chain up to parent's dispose() method. */
G_OBJECT_CLASS (e_calendar_view_parent_class)->dispose (object);
}
@@ -857,6 +860,7 @@ static void
e_calendar_view_class_init (ECalendarViewClass *class)
{
GObjectClass *object_class;
+ GtkWidgetClass *widget_class;
GtkBindingSet *binding_set;
g_type_class_add_private (class, sizeof (ECalendarViewPrivate));
@@ -1012,7 +1016,8 @@ e_calendar_view_class_init (ECalendarViewClass *class)
binding_set, GDK_KEY_o, GDK_CONTROL_MASK, "open-event", 0);
/* init the accessibility support for e_day_view */
- e_cal_view_a11y_init ();
+ widget_class = GTK_WIDGET_CLASS (class);
+ gtk_widget_class_set_accessible_type (widget_class, EA_TYPE_CAL_VIEW);
}
static void
@@ -1213,6 +1218,12 @@ e_calendar_view_set_calendar (ECalendarView *cal_view,
{
g_return_if_fail (E_IS_CALENDAR_VIEW (cal_view));
+ if (calendar)
+ g_object_ref (calendar);
+
+ if (cal_view->priv->calendar)
+ g_object_unref (cal_view->priv->calendar);
+
cal_view->priv->calendar = calendar;
}
diff --git a/calendar/gui/e-day-view.c b/calendar/gui/e-day-view.c
index 7528e0f163..304e02468e 100644
--- a/calendar/gui/e-day-view.c
+++ b/calendar/gui/e-day-view.c
@@ -54,6 +54,7 @@
#include "itip-utils.h"
#include "misc.h"
#include "print.h"
+#include "ea-day-view.h"
#define E_DAY_VIEW_GET_PRIVATE(obj) \
(G_TYPE_INSTANCE_GET_PRIVATE \
@@ -1893,7 +1894,7 @@ e_day_view_class_init (EDayViewClass *class)
"is-editing");
/* init the accessibility support for e_day_view */
- e_day_view_a11y_init ();
+ gtk_widget_class_set_accessible_type (widget_class, EA_TYPE_DAY_VIEW);
}
static void
diff --git a/calendar/gui/e-week-view.c b/calendar/gui/e-week-view.c
index 22b6e4ea69..7cfe7aea87 100644
--- a/calendar/gui/e-week-view.c
+++ b/calendar/gui/e-week-view.c
@@ -53,6 +53,7 @@
#include "itip-utils.h"
#include "misc.h"
#include "print.h"
+#include "ea-week-view.h"
/* Images */
#include "art/jump.xpm"
@@ -1475,7 +1476,7 @@ e_week_view_class_init (EWeekViewClass *class)
"is-editing");
/* init the accessibility support for e_week_view */
- e_week_view_a11y_init ();
+ gtk_widget_class_set_accessible_type (widget_class, EA_TYPE_WEEK_VIEW);
}
static void
diff --git a/calendar/gui/ea-cal-view.c b/calendar/gui/ea-cal-view.c
index fea414456c..de3d805011 100644
--- a/calendar/gui/ea-cal-view.c
+++ b/calendar/gui/ea-cal-view.c
@@ -30,8 +30,6 @@
#include "dialogs/goto-dialog.h"
#include <glib/gi18n.h>
-static void ea_cal_view_class_init (EaCalViewClass *klass);
-
static AtkObject * ea_cal_view_get_parent (AtkObject *accessible);
static void ea_cal_view_real_initialize (AtkObject *accessible, gpointer data);
@@ -63,57 +61,13 @@ static const gchar *
static gpointer parent_class = NULL;
-GType
-ea_cal_view_get_type (void)
-{
- static GType type = 0;
- AtkObjectFactory *factory;
- GTypeQuery query;
- GType derived_atk_type;
-
- if (!type) {
- static GTypeInfo tinfo = {
- sizeof (EaCalViewClass),
- (GBaseInitFunc) NULL, /* base init */
- (GBaseFinalizeFunc) NULL, /* base finalize */
- (GClassInitFunc) ea_cal_view_class_init, /* class init */
- (GClassFinalizeFunc) NULL, /* class finalize */
- NULL, /* class data */
- sizeof (EaCalView), /* instance size */
- 0, /* nb preallocs */
- (GInstanceInitFunc) NULL, /* instance init */
- NULL /* value table */
- };
-
- static const GInterfaceInfo atk_action_info = {
- (GInterfaceInitFunc) atk_action_interface_init,
- (GInterfaceFinalizeFunc) NULL,
- NULL
- };
-
- /*
- * Figure out the size of the class and instance
- * we are run-time deriving from (GailWidget, in this case)
- */
+G_DEFINE_TYPE_WITH_CODE (EaCalView, ea_cal_view, GTK_TYPE_CONTAINER_ACCESSIBLE,
+ G_IMPLEMENT_INTERFACE (
+ ATK_TYPE_ACTION, atk_action_interface_init))
- factory = atk_registry_get_factory (
- atk_get_default_registry (),
- GTK_TYPE_WIDGET);
- derived_atk_type = atk_object_factory_get_accessible_type (factory);
- g_type_query (derived_atk_type, &query);
-
- tinfo.class_size = query.class_size;
- tinfo.instance_size = query.instance_size;
-
- type = g_type_register_static (
- derived_atk_type,
- "EaCalView", &tinfo, 0);
- g_type_add_interface_static (
- type, ATK_TYPE_ACTION,
- &atk_action_info);
- }
-
- return type;
+static void
+ea_cal_view_init (EaCalView *view)
+{
}
static void
@@ -195,7 +149,11 @@ ea_cal_view_get_parent (AtkObject *accessible)
cal_view = E_CALENDAR_VIEW (widget);
- return gtk_widget_get_accessible (gtk_widget_get_parent (GTK_WIDGET (cal_view)));
+ widget = gtk_widget_get_parent (GTK_WIDGET (cal_view));
+ if (!widget)
+ return NULL;
+
+ return gtk_widget_get_accessible (widget);
}
static void
diff --git a/calendar/gui/ea-cal-view.h b/calendar/gui/ea-cal-view.h
index 454ce13c9c..738adb0c32 100644
--- a/calendar/gui/ea-cal-view.h
+++ b/calendar/gui/ea-cal-view.h
@@ -25,6 +25,7 @@
#include <gtk/gtk.h>
#include "e-calendar-view.h"
+#include "gtk/gtk-a11y.h"
G_BEGIN_DECLS
@@ -40,14 +41,14 @@ typedef struct _EaCalViewClass EaCalViewClass;
struct _EaCalView
{
- GtkAccessible parent;
+ GtkContainerAccessible parent;
};
GType ea_cal_view_get_type (void);
struct _EaCalViewClass
{
- GtkAccessibleClass parent_class;
+ GtkContainerAccessibleClass parent_class;
};
AtkObject * ea_cal_view_new (GtkWidget *widget);
diff --git a/calendar/gui/ea-calendar.c b/calendar/gui/ea-calendar.c
index 4c92441683..824edb7e6d 100644
--- a/calendar/gui/ea-calendar.c
+++ b/calendar/gui/ea-calendar.c
@@ -36,12 +36,9 @@
#include "calendar/gui/ea-week-view-main-item.h"
#include "calendar/gui/ea-gnome-calendar.h"
-EA_FACTORY (EA_TYPE_CAL_VIEW, ea_cal_view, ea_cal_view_new)
-EA_FACTORY (EA_TYPE_DAY_VIEW, ea_day_view, ea_day_view_new)
EA_FACTORY_GOBJECT (
EA_TYPE_DAY_VIEW_MAIN_ITEM,
ea_day_view_main_item, ea_day_view_main_item_new)
-EA_FACTORY (EA_TYPE_WEEK_VIEW, ea_week_view, ea_week_view_new)
EA_FACTORY_GOBJECT (
EA_TYPE_WEEK_VIEW_MAIN_ITEM,
ea_week_view_main_item, ea_week_view_main_item_new)
@@ -107,30 +104,12 @@ gnome_calendar_a11y_init (void)
}
void
-e_cal_view_a11y_init (void)
-{
- EA_SET_FACTORY (e_calendar_view_get_type (), ea_cal_view);
-}
-
-void
-e_day_view_a11y_init (void)
-{
- EA_SET_FACTORY (e_day_view_get_type (), ea_day_view);
-}
-
-void
e_day_view_main_item_a11y_init (void)
{
EA_SET_FACTORY (e_day_view_main_item_get_type (), ea_day_view_main_item);
}
void
-e_week_view_a11y_init (void)
-{
- EA_SET_FACTORY (E_TYPE_WEEK_VIEW, ea_week_view);
-}
-
-void
e_week_view_main_item_a11y_init (void)
{
EA_SET_FACTORY (e_week_view_main_item_get_type (), ea_week_view_main_item);
diff --git a/calendar/gui/ea-calendar.h b/calendar/gui/ea-calendar.h
index 591e95bfb2..c94be35253 100644
--- a/calendar/gui/ea-calendar.h
+++ b/calendar/gui/ea-calendar.h
@@ -27,10 +27,7 @@
#define _EA_CALENDAR_H__
void gnome_calendar_a11y_init (void);
-void e_cal_view_a11y_init (void);
-void e_day_view_a11y_init (void);
void e_day_view_main_item_a11y_init (void);
-void e_week_view_a11y_init (void);
void e_week_view_main_item_a11y_init (void);
#endif /* _EA_CALENDAR_H__ */
diff --git a/calendar/gui/ea-day-view-main-item.c b/calendar/gui/ea-day-view-main-item.c
index 376c0e89e6..9396eefcc5 100644
--- a/calendar/gui/ea-day-view-main-item.c
+++ b/calendar/gui/ea-day-view-main-item.c
@@ -32,8 +32,6 @@
#include "ea-day-view-cell.h"
/* EaDayViewMainItem */
-static void ea_day_view_main_item_class_init (EaDayViewMainItemClass *klass);
-
static void ea_day_view_main_item_finalize (GObject *object);
static const gchar *
ea_day_view_main_item_get_name (AtkObject *accessible);
@@ -154,75 +152,17 @@ static gint n_ea_day_view_main_item_destroyed = 0;
static gpointer parent_class = NULL;
-GType
-ea_day_view_main_item_get_type (void)
-{
- static GType type = 0;
- AtkObjectFactory *factory;
- GTypeQuery query;
- GType derived_atk_type;
-
- if (!type) {
- static GTypeInfo tinfo = {
- sizeof (EaDayViewMainItemClass),
- (GBaseInitFunc) NULL, /* base init */
- (GBaseFinalizeFunc) NULL, /* base finalize */
- (GClassInitFunc) ea_day_view_main_item_class_init,
- (GClassFinalizeFunc) NULL, /* class finalize */
- NULL, /* class data */
- sizeof (EaDayViewMainItem), /* instance size */
- 0, /* nb preallocs */
- (GInstanceInitFunc) NULL, /* instance init */
- NULL /* value table */
- };
-
- static const GInterfaceInfo atk_component_info = {
- (GInterfaceInitFunc) atk_component_interface_init,
- (GInterfaceFinalizeFunc) NULL,
- NULL
- };
-
- static const GInterfaceInfo atk_table_info = {
- (GInterfaceInitFunc) atk_table_interface_init,
- (GInterfaceFinalizeFunc) NULL,
- NULL
- };
- static const GInterfaceInfo atk_selection_info = {
- (GInterfaceInitFunc) atk_selection_interface_init,
- (GInterfaceFinalizeFunc) NULL,
- NULL
- };
-
- /*
- * Figure out the size of the class and instance
- * we are run-time deriving from (GailCanvasItem, in this case)
- *
- */
-
- factory = atk_registry_get_factory (
- atk_get_default_registry (),
- e_day_view_main_item_get_type ());
- derived_atk_type = atk_object_factory_get_accessible_type (factory);
- g_type_query (derived_atk_type, &query);
-
- tinfo.class_size = query.class_size;
- tinfo.instance_size = query.instance_size;
-
- type = g_type_register_static (
- derived_atk_type,
- "EaDayViewMainItem", &tinfo, 0);
- g_type_add_interface_static (
- type, ATK_TYPE_COMPONENT,
- &atk_component_info);
- g_type_add_interface_static (
- type, ATK_TYPE_TABLE,
- &atk_table_info);
- g_type_add_interface_static (
- type, ATK_TYPE_SELECTION,
- &atk_selection_info);
- }
+G_DEFINE_TYPE_WITH_CODE (EaDayViewMainItem, ea_day_view_main_item, GAIL_TYPE_CANVAS_ITEM,
+ G_IMPLEMENT_INTERFACE (
+ ATK_TYPE_COMPONENT, atk_component_interface_init)
+ G_IMPLEMENT_INTERFACE (
+ ATK_TYPE_SELECTION, atk_selection_interface_init)
+ G_IMPLEMENT_INTERFACE (
+ ATK_TYPE_TABLE, atk_table_interface_init))
- return type;
+static void
+ea_day_view_main_item_init (EaDayViewMainItem *item)
+{
}
static void
diff --git a/calendar/gui/ea-day-view-main-item.h b/calendar/gui/ea-day-view-main-item.h
index d9ea4a35a0..f36d55470e 100644
--- a/calendar/gui/ea-day-view-main-item.h
+++ b/calendar/gui/ea-day-view-main-item.h
@@ -25,6 +25,7 @@
#include <atk/atkgobjectaccessible.h>
#include "e-day-view-main-item.h"
+#include <libgnomecanvas/gailcanvasitem.h>
G_BEGIN_DECLS
@@ -40,14 +41,14 @@ typedef struct _EaDayViewMainItemClass EaDayViewMainItemClass;
struct _EaDayViewMainItem
{
- AtkGObjectAccessible parent;
+ GailCanvasItem parent;
};
GType ea_day_view_main_item_get_type (void);
struct _EaDayViewMainItemClass
{
- AtkGObjectAccessibleClass parent_class;
+ GailCanvasItemClass parent_class;
};
AtkObject * ea_day_view_main_item_new (GObject *obj);
diff --git a/calendar/gui/ea-day-view.c b/calendar/gui/ea-day-view.c
index 45fce9c86e..7af286e144 100644
--- a/calendar/gui/ea-day-view.c
+++ b/calendar/gui/ea-day-view.c
@@ -30,8 +30,6 @@
#include "ea-gnome-calendar.h"
#include <glib/gi18n.h>
-static void ea_day_view_class_init (EaDayViewClass *klass);
-
static const gchar * ea_day_view_get_name (AtkObject *accessible);
static const gchar * ea_day_view_get_description (AtkObject *accessible);
static gint ea_day_view_get_n_children (AtkObject *obj);
@@ -39,51 +37,11 @@ static AtkObject * ea_day_view_ref_child (AtkObject *obj,
gint i);
static gpointer parent_class = NULL;
-GType
-ea_day_view_get_type (void)
-{
- static GType type = 0;
- AtkObjectFactory *factory;
- GTypeQuery query;
- GType derived_atk_type;
-
- if (!type) {
- static GTypeInfo tinfo = {
- sizeof (EaDayViewClass),
- (GBaseInitFunc) NULL, /* base init */
- (GBaseFinalizeFunc) NULL, /* base finalize */
- (GClassInitFunc) ea_day_view_class_init, /* class init */
- (GClassFinalizeFunc) NULL, /* class finalize */
- NULL, /* class data */
- sizeof (EaDayView), /* instance size */
- 0, /* nb preallocs */
- (GInstanceInitFunc) NULL, /* instance init */
- NULL /* value table */
- };
-
- /*
- * Figure out the size of the class and instance
- * we are run-time deriving from (EaCalView, in this case)
- *
- * Note: we must still use run-time deriving here, because
- * our parent class EaCalView is run-time deriving.
- */
-
- factory = atk_registry_get_factory (
- atk_get_default_registry (),
- e_calendar_view_get_type ());
- derived_atk_type = atk_object_factory_get_accessible_type (factory);
- g_type_query (derived_atk_type, &query);
-
- tinfo.class_size = query.class_size;
- tinfo.instance_size = query.instance_size;
-
- type = g_type_register_static (
- derived_atk_type,
- "EaDayView", &tinfo, 0);
- }
+G_DEFINE_TYPE (EaDayView, ea_day_view, EA_TYPE_CAL_VIEW)
- return type;
+static void
+ea_day_view_init (EaDayView *view)
+{
}
static void
diff --git a/calendar/gui/ea-week-view-main-item.c b/calendar/gui/ea-week-view-main-item.c
index 4677fc59b2..96ed04eaef 100644
--- a/calendar/gui/ea-week-view-main-item.c
+++ b/calendar/gui/ea-week-view-main-item.c
@@ -32,8 +32,6 @@
#include "ea-week-view-cell.h"
/* EaWeekViewMainItem */
-static void ea_week_view_main_item_class_init
- (EaWeekViewMainItemClass *class);
static void ea_week_view_main_item_finalize (GObject *object);
static const gchar *
ea_week_view_main_item_get_name (AtkObject *accessible);
@@ -184,75 +182,17 @@ static gint n_ea_week_view_main_item_destroyed = 0;
static gpointer parent_class = NULL;
-GType
-ea_week_view_main_item_get_type (void)
-{
- static GType type = 0;
- AtkObjectFactory *factory;
- GTypeQuery query;
- GType derived_atk_type;
-
- if (!type) {
- static GTypeInfo tinfo = {
- sizeof (EaWeekViewMainItemClass),
- (GBaseInitFunc) NULL, /* base init */
- (GBaseFinalizeFunc) NULL, /* base finalize */
- (GClassInitFunc) ea_week_view_main_item_class_init,
- (GClassFinalizeFunc) NULL, /* class finalize */
- NULL, /* class data */
- sizeof (EaWeekViewMainItem), /* instance size */
- 0, /* nb preallocs */
- (GInstanceInitFunc) NULL, /* instance init */
- NULL /* value table */
- };
-
- static const GInterfaceInfo atk_component_info = {
- (GInterfaceInitFunc) atk_component_interface_init,
- (GInterfaceFinalizeFunc) NULL,
- NULL
- };
-
- static const GInterfaceInfo atk_table_info = {
- (GInterfaceInitFunc) atk_table_interface_init,
- (GInterfaceFinalizeFunc) NULL,
- NULL
- };
- static const GInterfaceInfo atk_selection_info = {
- (GInterfaceInitFunc) atk_selection_interface_init,
- (GInterfaceFinalizeFunc) NULL,
- NULL
- };
-
- /*
- * Figure out the size of the class and instance
- * we are run-time deriving from (GailCanvasItem, in this case)
- *
- */
-
- factory = atk_registry_get_factory (
- atk_get_default_registry (),
- e_week_view_main_item_get_type ());
- derived_atk_type = atk_object_factory_get_accessible_type (factory);
- g_type_query (derived_atk_type, &query);
-
- tinfo.class_size = query.class_size;
- tinfo.instance_size = query.instance_size;
-
- type = g_type_register_static (
- derived_atk_type,
- "EaWeekViewMainItem", &tinfo, 0);
- g_type_add_interface_static (
- type, ATK_TYPE_COMPONENT,
- &atk_component_info);
- g_type_add_interface_static (
- type, ATK_TYPE_TABLE,
- &atk_table_info);
- g_type_add_interface_static (
- type, ATK_TYPE_SELECTION,
- &atk_selection_info);
- }
+G_DEFINE_TYPE_WITH_CODE (EaWeekViewMainItem, ea_week_view_main_item, GAIL_TYPE_CANVAS_ITEM,
+ G_IMPLEMENT_INTERFACE (
+ ATK_TYPE_COMPONENT, atk_component_interface_init)
+ G_IMPLEMENT_INTERFACE (
+ ATK_TYPE_SELECTION, atk_selection_interface_init)
+ G_IMPLEMENT_INTERFACE (
+ ATK_TYPE_TABLE, atk_table_interface_init))
- return type;
+static void
+ea_week_view_main_item_init (EaWeekViewMainItem *item)
+{
}
static void
diff --git a/calendar/gui/ea-week-view-main-item.h b/calendar/gui/ea-week-view-main-item.h
index 318b80f585..99fd0a847a 100644
--- a/calendar/gui/ea-week-view-main-item.h
+++ b/calendar/gui/ea-week-view-main-item.h
@@ -26,6 +26,7 @@
#include <atk/atkgobjectaccessible.h>
#include "e-week-view-main-item.h"
+#include <libgnomecanvas/gailcanvasitem.h>
G_BEGIN_DECLS
@@ -41,14 +42,14 @@ typedef struct _EaWeekViewMainItemClass EaWeekViewMainItemClass;
struct _EaWeekViewMainItem
{
- AtkGObjectAccessible parent;
+ GailCanvasItem parent;
};
GType ea_week_view_main_item_get_type (void);
struct _EaWeekViewMainItemClass
{
- AtkGObjectAccessibleClass parent_class;
+ GailCanvasItemClass parent_class;
};
AtkObject * ea_week_view_main_item_new (GObject *obj);
diff --git a/calendar/gui/ea-week-view.c b/calendar/gui/ea-week-view.c
index a7c5f32c27..593cb8b23a 100644
--- a/calendar/gui/ea-week-view.c
+++ b/calendar/gui/ea-week-view.c
@@ -31,8 +31,6 @@
#include "ea-calendar-helpers.h"
#include "ea-gnome-calendar.h"
-static void ea_week_view_class_init (EaWeekViewClass *klass);
-
static const gchar * ea_week_view_get_name (AtkObject *accessible);
static const gchar * ea_week_view_get_description (AtkObject *accessible);
static gint ea_week_view_get_n_children (AtkObject *obj);
@@ -41,52 +39,11 @@ static AtkObject * ea_week_view_ref_child (AtkObject *obj,
static gpointer parent_class = NULL;
-GType
-ea_week_view_get_type (void)
-{
- static GType type = 0;
- AtkObjectFactory *factory;
- GTypeQuery query;
- GType derived_atk_type;
-
- if (!type) {
- static GTypeInfo tinfo = {
- sizeof (EaWeekViewClass),
- (GBaseInitFunc) NULL, /* base init */
- (GBaseFinalizeFunc) NULL, /* base finalize */
- (GClassInitFunc) ea_week_view_class_init, /* class init */
- (GClassFinalizeFunc) NULL, /* class finalize */
- NULL, /* class data */
- sizeof (EaWeekView), /* instance size */
- 0, /* nb preallocs */
- (GInstanceInitFunc) NULL, /* instance init */
- NULL /* value table */
- };
-
- /*
- * Figure out the size of the class and instance
- * we are run-time deriving from (EaCalView, in this case)
- *
- * Note: we must still use run-time deriving here, because
- * our parent class EaCalView is run-time deriving.
- */
-
- factory = atk_registry_get_factory (
- atk_get_default_registry (),
- e_calendar_view_get_type ());
- derived_atk_type = atk_object_factory_get_accessible_type (factory);
- g_type_query (derived_atk_type, &query);
-
- tinfo.class_size = query.class_size;
- tinfo.instance_size = query.instance_size;
-
- type = g_type_register_static (
- derived_atk_type,
- "EaWeekView", &tinfo, 0);
-
- }
+G_DEFINE_TYPE (EaWeekView, ea_week_view, EA_TYPE_CAL_VIEW)
- return type;
+static void
+ea_week_view_init (EaWeekView *view)
+{
}
static void