36 #include <glib-object.h>
37 #include "gnc-dense-cal.h"
38 #include "gnc-dense-cal-model.h"
40 enum { GDCM_ADDED, GDCM_UPDATE, GDCM_REMOVE, LAST_SIGNAL };
41 static guint gnc_dense_cal_model_signals[LAST_SIGNAL] = { 0 };
44 gnc_dense_cal_model_base_init(gpointer g_class)
46 static gboolean initialized = FALSE;
50 gnc_dense_cal_model_signals[GDCM_ADDED]
51 = g_signal_new(
"added",
52 G_TYPE_FROM_CLASS(g_class),
53 G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS,
57 g_cclosure_marshal_VOID__UINT,
63 gnc_dense_cal_model_signals[GDCM_UPDATE]
64 = g_signal_new(
"update",
65 G_TYPE_FROM_CLASS(g_class),
66 G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS,
70 g_cclosure_marshal_VOID__UINT,
76 gnc_dense_cal_model_signals[GDCM_REMOVE]
77 = g_signal_new(
"removing",
78 G_TYPE_FROM_CLASS(g_class),
79 G_SIGNAL_RUN_LAST | G_SIGNAL_NO_RECURSE | G_SIGNAL_NO_HOOKS,
83 g_cclosure_marshal_VOID__UINT,
94 gnc_dense_cal_model_get_type(
void)
96 static GType type = 0;
99 static const GTypeInfo info =
102 gnc_dense_cal_model_base_init,
111 type = g_type_register_static(G_TYPE_INTERFACE,
"GncDenseCalModel", &info, 0);
117 gnc_dense_cal_model_get_contained(GncDenseCalModel *model)
119 return (*GNC_DENSE_CAL_MODEL_GET_INTERFACE(model)->get_contained)(model);
123 gnc_dense_cal_model_get_name(GncDenseCalModel *model, guint tag)
125 return (*GNC_DENSE_CAL_MODEL_GET_INTERFACE(model)->get_name)(model, tag);
129 gnc_dense_cal_model_get_info(GncDenseCalModel *model, guint tag)
131 return (*GNC_DENSE_CAL_MODEL_GET_INTERFACE(model)->get_info)(model, tag);
135 gnc_dense_cal_model_get_instance_count(GncDenseCalModel *model, guint tag)
137 return (*GNC_DENSE_CAL_MODEL_GET_INTERFACE(model)->get_instance_count)(model, tag);
141 gnc_dense_cal_model_get_instance(GncDenseCalModel *model, guint tag, gint instance_index, GDate *date)
143 (*GNC_DENSE_CAL_MODEL_GET_INTERFACE(model)->get_instance)(model, tag, instance_index, date);