aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--widgets/e-table/ChangeLog5
-rw-r--r--widgets/e-table/e-table-text-model.c3
-rw-r--r--widgets/table/e-table-text-model.c3
-rw-r--r--widgets/text/e-table-text-model.c3
-rw-r--r--wombat/Makefile.am32
-rw-r--r--wombat/wombat.c46
-rw-r--r--wombat/wombat.gnorba8
8 files changed, 86 insertions, 19 deletions
diff --git a/ChangeLog b/ChangeLog
index 1bfdc6219f..25cff10fe1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2000-03-28 Matt Loper <matt@helixcode.com>
+ * wombat/Makefile.am: new file.
+ * wombat/wombat.gnorba: Cleaned up.
+
+ * wombat/wombat.c (setup_pcs): filled in the rest.
+
* Makefile.am: added wombat.
* wombat/wombat.gnorba: new file.
diff --git a/widgets/e-table/ChangeLog b/widgets/e-table/ChangeLog
index bba0fad29c..b96f8c07df 100644
--- a/widgets/e-table/ChangeLog
+++ b/widgets/e-table/ChangeLog
@@ -1,3 +1,8 @@
+2000-03-28 Matt Loper <matt@helixcode.com>
+
+ * e-table-text-model.c (e_table_text_model_destroy): made
+ assertion more accurate.
+
2000-03-27 Michael Meeks <michael@helixcode.com>
* e-table-item.c (eti_update): try and fix the convoluted logic.
diff --git a/widgets/e-table/e-table-text-model.c b/widgets/e-table/e-table-text-model.c
index 37c13080a7..13d0071cc6 100644
--- a/widgets/e-table/e-table-text-model.c
+++ b/widgets/e-table/e-table-text-model.c
@@ -109,8 +109,7 @@ e_table_text_model_destroy (GtkObject *object)
model = E_TABLE_TEXT_MODEL (object);
- g_assert (model->model);
- g_assert (GTK_IS_OBJECT (model->model));
+ g_assert (!model->model || GTK_IS_OBJECT (model->model));
if (model->cell_changed_signal_id)
gtk_signal_disconnect(GTK_OBJECT(model->model),
diff --git a/widgets/table/e-table-text-model.c b/widgets/table/e-table-text-model.c
index 37c13080a7..13d0071cc6 100644
--- a/widgets/table/e-table-text-model.c
+++ b/widgets/table/e-table-text-model.c
@@ -109,8 +109,7 @@ e_table_text_model_destroy (GtkObject *object)
model = E_TABLE_TEXT_MODEL (object);
- g_assert (model->model);
- g_assert (GTK_IS_OBJECT (model->model));
+ g_assert (!model->model || GTK_IS_OBJECT (model->model));
if (model->cell_changed_signal_id)
gtk_signal_disconnect(GTK_OBJECT(model->model),
diff --git a/widgets/text/e-table-text-model.c b/widgets/text/e-table-text-model.c
index 37c13080a7..13d0071cc6 100644
--- a/widgets/text/e-table-text-model.c
+++ b/widgets/text/e-table-text-model.c
@@ -109,8 +109,7 @@ e_table_text_model_destroy (GtkObject *object)
model = E_TABLE_TEXT_MODEL (object);
- g_assert (model->model);
- g_assert (GTK_IS_OBJECT (model->model));
+ g_assert (!model->model || GTK_IS_OBJECT (model->model));
if (model->cell_changed_signal_id)
gtk_signal_disconnect(GTK_OBJECT(model->model),
diff --git a/wombat/Makefile.am b/wombat/Makefile.am
new file mode 100644
index 0000000000..4207a87a2d
--- /dev/null
+++ b/wombat/Makefile.am
@@ -0,0 +1,32 @@
+INCLUDES = \
+ $(EXTRA_GNOME_CFLAGS) \
+ $(GNOME_INCLUDEDIR) \
+ -I$(top_srcdir)/e-util \
+ -I$(top_srcdir) \
+ -I$(top_srcdir)/addressbook/backend/pas \
+ -I$(top_srcdir)/calendar/pcs \
+ -I$(top_srcdir)/calendar/cal-util \
+ -DEVOLUTION_VERSION=\""$(VERSION)"\" \
+ -DEVOLUTION_LOCALEDIR=\""$(datadir)/locale"\"
+
+bin_PROGRAMS = \
+ wombat
+
+wombat_SOURCES = \
+ wombat.c
+
+wombat_LDADD = \
+ $(EXTRA_GNOME_LIBS) \
+ $(BONOBO_HTML_GNOME_LIBS) \
+ $(top_builddir)/e-util/libeutil.la \
+ -lpas \
+ -lpcs \
+ -lical \
+ -lcalutil \
+ $(top_builddir)/libversit/libversit.la \
+ -lgnomevfs
+
+wombat_LDFLAGS = `gnome-config --libs gnorba`
+
+gnorbadir = $(sysconfdir)/CORBA/servers
+gnorba_DATA = wombat.gnorba
diff --git a/wombat/wombat.c b/wombat/wombat.c
index 034b97f478..9568ae1938 100644
--- a/wombat/wombat.c
+++ b/wombat/wombat.c
@@ -9,6 +9,10 @@
#include <bonobo.h>
#include <backend/pas-book-factory.h>
#include <backend/pas-backend-file.h>
+#include <libgnomevfs/gnome-vfs-init.h>
+#include <libgnorba/gnorba.h>
+#include <cal-factory.h>
+#include <calobj.h>
CORBA_Environment ev;
CORBA_ORB orb;
@@ -26,20 +30,45 @@ setup_pas (int argc, char **argv)
pas_book_factory_activate (factory);
}
-#include "cal-factory.h"
-#include "calobj.h"
+
static void
setup_pcs (int argc, char **argv)
{
- CalFactory *factory;
-
- factory = cal_factory_new ();
+ int result;
+ CORBA_Object object;
+ CalFactory *factory = cal_factory_new ();
+
if (!factory) {
g_message ("%s: %d: couldn't create a Calendar factory\n",
__FILE__, __LINE__);
}
-
-
+
+ object = bonobo_object_corba_objref (BONOBO_OBJECT (factory));
+
+ CORBA_exception_init (&ev);
+ result = goad_server_register (CORBA_OBJECT_NIL,
+ object,
+ "evolution:calendar-factory",
+ "server",
+ &ev);
+
+ if (ev._major != CORBA_NO_EXCEPTION || result == -1) {
+
+ g_message ("create_cal_factory(): "
+ "could not register the calendar factory");
+ bonobo_object_unref (BONOBO_OBJECT (factory));
+ CORBA_exception_free (&ev);
+
+ } else if (result == -2) {
+
+ g_message ("create_cal_factory(): "
+ "a calendar factory is already registered");
+ bonobo_object_unref (BONOBO_OBJECT (factory));
+ CORBA_exception_free (&ev);
+
+ }
+
+ CORBA_exception_free (&ev);
}
static void
@@ -47,7 +76,6 @@ setup_config (int argc, char **argv)
{
}
-#include <libgnomevfs/gnome-vfs-init.h>
static void
setup_vfs (int argc, char **argv)
{
@@ -57,7 +85,7 @@ setup_vfs (int argc, char **argv)
}
}
-#include <libgnorba/gnorba.h>
+
static void
init_bonobo (int argc, char **argv)
{
diff --git a/wombat/wombat.gnorba b/wombat/wombat.gnorba
index 0e5839cc55..165722b8ce 100644
--- a/wombat/wombat.gnorba
+++ b/wombat/wombat.gnorba
@@ -1,11 +1,11 @@
-[evolution:card-server]
+[evolution:addressbook-server]
type=exe
-repo_id=IDL:Evolution/CardServer:1.0
+repo_id=IDL:Evolution/BookFactory:1.0 IDL:Bonobo/Unknown:1.0
description=The Personal Addressbook Server
location_info=wombat
-[evolution:calendar-factory]
+[evolution:calendar-server]
type=exe
repo_id=IDL:Evolution/Calendar/CalFactory:1.0 IDL:Bonobo/Unknown:1.0
-description=Calendar factory for the Personal Calendar Server
+description=The Personal Calendar Server
location_info=wombat