OAF patch committed
- From: Havoc Pennington <hp redhat com>
- To: gnome-components-list gnome org
- Subject: OAF patch committed
- Date: 26 Jan 2000 14:57:15 -0500
Hi,
I committed the initial pass at OAF support. It may be somewhat in
flux. To build with OAF you have to pass --enable-oaf to configure.
Apps that use libgnorba may need to add libgnorba/gnorba.h to their
includes, because Bonobo no longer drags it in for you.
To use OAF instead you have to replace gnome_CORBA_init() with
gnome_init() plus oaf_init(), and then of course you have to
use OAF functions instead of GOAD functions.
Patch appended for comment and public record.
Havoc
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/bonobo/ChangeLog,v
retrieving revision 1.275
diff -u -u -r1.275 ChangeLog
--- ChangeLog 2000/01/25 17:42:44 1.275
+++ ChangeLog 2000/01/25 21:36:42
@@ -1,3 +1,77 @@
+2000-01-26 Havoc Pennington <hp@pobox.com>
+
+ * samples/compound-doc/paint-component-simple.c: include gnorba header
+
+ * bonobo/bonobo-generic-factory.c (impl_Bonobo_GenericFactory_create_object): GNOME_stringlist/Bonobo_stringlist
+
+2000-01-25 Havoc Pennington <hp@pobox.com>
+
+ * bonobo/bonobo-object-directory.h: The object directory
+ abstraction
+
+ * gshell/Makefile.am (bin_PROGRAMS): no gshell with OAF
+
+ * samples/compound-doc/Makefile.am (bin_PROGRAMS): no documents
+ with OAF
+
+ * samples/controls/Makefile.am (bin_PROGRAMS): don't build the
+ controls with OAF
+
+ * components/Makefile.am (SUBDIRS): don't build components with OAF
+
+ * bonobo/test-bw.c: include gnorba.h explicitly, since it isn't
+ in gnome-bonobo.h
+
+ * bonobo/bonobo-main.c (bonobo_init): Get ORB from OD abstraction
+
+ * bonobo/bonobo-generic-factory.c (bonobo_generic_factory_finalize):
+ Use new OD abstraction
+ (bonobo_generic_factory_construct): new OD abstraction
+
+ * bonobo/gnome-bonobo-widget.c
+ (bonobo_widget_launch_component): change a cast to remove
+ GOAD dependency
+
+ * bonobo/bonobo-selector.c (add_gnorba_objects): modify this
+ to use the new object directory abstraction
+ (bonobo_selector_get_selected_goad_id): assert using GOAD
+ (bonobo_selector_get_selected_oaf_id): new, parallel to the
+ GOAD one
+ (gnome_bonobo_select_oaf_id): parallel to the OAF version
+
+ * bonobo/bonobo-object-client.c (bonobo_object_activate): Take "gint
+ flags" instead of "GoadActivationFlags flags" so that we don't
+ need to expose the GOAD headers
+ (bonobo_object_activate_with_goad_id): ditto, and assert that we
+ are using goad
+ (bonobo_object_activate_with_repo_id): Nuke
+ (bonobo_object_activate_with_goad_id): Fix bug unrelated to this
+ whole OAF/GOAD thing, activation flags were not being passed
+ through
+ (bonobo_object_activate_with_oaf_id): new function for use with OAF
+ (bonobo_object_activate_with_goad_id): change first arg from
+ GoadServerList to gpointer; this arg was ignored anyway, and
+ of course the whole function is deprecated eventually.
+
+ * bonobo/bonobo-embeddable-factory.c: replace gnorba.h with
+ bonobo-object-directory.h
+
+ * bonobo/bonobo-object.c: ditto
+
+ * bonobo/bonobo-moniker-client.c: ditto
+
+ * bonobo/bonobo-main.c: ditto
+
+ * bonobo/bonobo-generic-factory.c: ditto
+
+ * bonobo/bonobo-selector.h: don't include gnorba.h
+
+ * bonobo/bonobo-object-client.h: don't include gnorba.h
+
+ * bonobo/Makefile.am: handle AM_CONDITIONAL to use OAF or GOAD
+
+ * configure.in: Add the --enable-oaf option
+
2000-01-26 Martijn van Beers <martijn@earthling.net>
* bonobo/bonobo/.cvsignore: s/bonobo/Bonobo/;
Index: configure.in
===================================================================
RCS file: /cvs/gnome/bonobo/configure.in,v
retrieving revision 1.55
diff -u -u -r1.55 configure.in
--- configure.in 2000/01/25 16:34:57 1.55
+++ configure.in 2000/01/25 21:36:42
@@ -23,10 +23,34 @@
ALL_LINGUAS="da de el es fr gl it ja no pl pt_BR ro ru sv uk wa tr"
AM_GNOME_GETTEXT
+dnl Whether to use OAF
+AC_ARG_ENABLE(oaf,
+ [ --enable-oaf=[no/yes] Use OAF instead of GOAD.],,enable_oaf=no)
+
+if test "x$enable_oaf" = "xyes"; then
+ AC_PATH_PROG(OAF_CONFIG,oaf-config,no)
+ if test x$OAF_CONFIG = xno; then
+ AC_MSG_ERROR("You enabled OAF support but oaf-config was not found")
+ else
+ OAF_LIBS=`$OAF_CONFIG --libs`
+ OAF_CFLAGS=`$OAF_CONFIG --cflags`
+ GNORBA_LIBNAME=
+ fi
+else
+ OAF_LIBS=
+ OAF_CFLAGS=
+ GNORBA_LIBNAME=gnorba
+fi
+
+AC_SUBST(OAF_LIBS)
+AC_SUBST(OAF_CFLAGS)
+
+AM_CONDITIONAL(OAF, test "x$enable_oaf" = "xyes")
+
BONOBO_LIBDIR='-L${libdir}'
BONOBO_INCLUDEDIR='-I${includedir}'
-BONOBO_INCLUDEDIR="$BONOBO_INCLUDEDIR `$GNOME_CONFIG --cflags gnomeui gnorba`"
-BONOBO_LIBS="-lbonobo `$GNOME_CONFIG --libs gnomeui gnorba`"
+BONOBO_INCLUDEDIR="$BONOBO_INCLUDEDIR `$GNOME_CONFIG --cflags gnomeui $GNORBA_LIBNAME` $OAF_CFLAGS"
+BONOBO_LIBS="-lbonobo `$GNOME_CONFIG --libs gnomeui $GNORBA_LIBNAME` $OAF_LIBS"
AC_SUBST(BONOBO_LIBDIR)
AC_SUBST(BONOBO_INCLUDEDIR)
Index: nat-convert.pl
===================================================================
RCS file: /cvs/gnome/bonobo/nat-convert.pl,v
retrieving revision 1.2
diff -u -u -r1.2 nat-convert.pl
--- nat-convert.pl 2000/01/25 17:20:48 1.2
+++ nat-convert.pl 2000/01/25 21:36:43
@@ -154,6 +154,7 @@
s/GnomeBonoboSelector/BonoboSelector/g;
s/gnome_bonobo_selector/bonobo_selector/g;
+ # header names
s/gnome-bonobo-item.h/bonobo-canvas-item.h/g;
s/gnome-bind-context.h/bonobo-bind-context.h/g;
s/gnome-canvas-component.h/bonobo-canvas-component.h/g;
@@ -205,6 +206,58 @@
s/gnome-property-client.h/gnome-property-client.h/g;
s/bonobo\/gnome-bonobo.h/bonobo.h/g;
s/bonobo.idl/Bonobo.idl/g;
+
+ # .c names
+ s/gnome-bonobo-item.c/bonobo-canvas-item.c/g;
+ s/gnome-bind-context.c/bonobo-bind-context.c/g;
+ s/gnome-canvas-component.c/bonobo-canvas-component.c/g;
+ s/gnome-canvas-item.c/bonobo-canvas-item.c/g;
+ s/gnome-client-site.c/bonobo-client-site.c/g;
+ s/gnome-component-directory.c/bonobo-component-directory.c/g;
+ s/gnome-component-io.c/bonobo-component-io.c/g;
+ s/gnome-composite-moniker.c/bonobo-composite-moniker.c/g;
+ s/gnome-container.c/bonobo-container.c/g;
+ s/gnome-control-frame.c/bonobo-control-frame.c/g;
+ s/gnome-control.c/bonobo-control.c/g;
+ s/gnome-desktop-window.c/bonobo-desktop-window.c/g;
+ s/gnome-embeddable-factory.c/bonobo-embeddable-factory.c/g;
+ s/gnome-embeddable.c/bonobo-embeddable.c/g;
+ s/gnome-file-moniker.c/bonobo-file-moniker.c/g;
+ s/gnome-generic-factory.c/bonobo-generic-factory.c/g;
+ s/gnome-item-moniker.c/bonobo-item-moniker.c/g;
+ s/gnome-local-property-bag.c/bonobo-local-property-bag.c/g;
+ s/gnome-main.c/bonobo-main.c/g;
+ s/gnome-moniker-client.c/bonobo-moniker-client.c/g;
+ s/gnome-moniker.c/bonobo-moniker.c/g;
+ s/gnome-object-client.c/bonobo-object-client.c/g;
+ s/gnome-object-io.c/bonobo-object-io.c/g;
+ s/gnome-object.c/bonobo-object.c/g;
+ s/gnome-persist-file.c/bonobo-persist-file.c/g;
+ s/gnome-persist-stream.c/bonobo-persist-stream.c/g;
+ s/gnome-persist.c/bonobo-persist.c/g;
+ s/gnome-progressive.c/bonobo-progressive.c/g;
+ s/gnome-property-bag-client.c/bonobo-property-bag-client.c/g;
+ s/gnome-property-bag-xml.c/bonobo-property-bag-xml.c/g;
+ s/gnome-property-bag.c/bonobo-property-bag.c/g;
+ s/gnome-property-types.c/bonobo-property-types.c/g;
+ s/gnome-property.c/bonobo-property.c/g;
+ s/gnome-bonobo-selector.c/bonobo-selector.c/g;
+ s/gnome-simple-source.c/bonobo-simple-source.c/g;
+ s/gnome-storage-driver.c/bonobo-storage-driver.c/g;
+ s/gnome-storage-priv.c/bonobo-storage-priv.c/g;
+ s/gnome-storage-private.c/bonobo-storage-private.c/g;
+ s/gnome-storage.c/bonobo-storage.c/g;
+ s/gnome-stream-client.c/bonobo-stream-client.c/g;
+ s/gnome-stream-fs.c/bonobo-stream-fs.c/g;
+ s/gnome-stream-memory.c/bonobo-stream-memory.c/g;
+ s/gnome-stream.c/bonobo-stream.c/g;
+ s/gnome-ui-handler.c/bonobo-ui-handler.c/g;
+ s/gnome-view-frame.c/bonobo-view-frame.c/g;
+ s/gnome-view.c/bonobo-view.c/g;
+ s/gnome-widget.c/bonobo-widget.c/g;
+ s/gnome-wrapper.c/bonobo-wrapper.c/g;
+ s/gnome-property-client.c/gnome-property-client.c/g;
+ s/bonobo\/gnome-bonobo.c/bonobo.c/g;
s/\"view_activate\"/\"activate\"/g;
s/\"view_activated\"/\"activated\"/g;
Index: bonobo/Makefile.am
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/Makefile.am,v
retrieving revision 1.77
diff -u -u -r1.77 Makefile.am
--- bonobo/Makefile.am 2000/01/25 16:34:58 1.77
+++ bonobo/Makefile.am 2000/01/25 21:36:43
@@ -2,6 +2,14 @@
corba_DATA = sample.gnorba item.gnorba
+if OAF
+OBJECT_DIRECTORY_LIBS=$(OAF_LIBS)
+OBJECT_DIRECTORY_IMPL=bonobo-object-directory-oaf.c
+else
+OBJECT_DIRECTORY_LIBS=$(GNOMEGNORBA_LIBS)
+OBJECT_DIRECTORY_IMPL=bonobo-object-directory-goad.c
+endif
+
INCLUDES = \
-DGNOMELOCALEDIR=\""$(datadir)/locale"\" \
-DSTORAGE_LIB=\""$(libdir)"\" \
@@ -15,7 +23,7 @@
gnome_libs = \
$(GNOME_LIBDIR) \
$(GNOMEUI_LIBS) \
- $(GNOMEGNORBA_LIBS) \
+ $(OBJECT_DIRECTORY_LIBS) \
$(INTLLIBS)
bonobo_libs = \
@@ -24,7 +32,11 @@
lib_LTLIBRARIES = libbonobo.la libbonobo-xml.la
-noinst_PROGRAMS = \
+
+if OAF
+test_programs =
+else
+test_programs = \
test-container \
sample-server \
sample-item \
@@ -32,6 +44,10 @@
selector_test \
test-storage \
test-bw
+endif
+
+noinst_PROGRAMS = \
+ $(test_programs)
CORBA_SOURCE = \
Bonobo.h \
@@ -62,6 +78,9 @@
libbonobo_la_SOURCES = \
$(CORBA_SOURCE) \
+ bonobo-object-directory.h \
+ bonobo-object-directory.c \
+ $(OBJECT_DIRECTORY_IMPL) \
bonobo-ui-handler.c \
bonobo-canvas-item.c \
bonobo-selector.c \
Index: bonobo/bonobo-embeddable-factory.c
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-embeddable-factory.c,v
retrieving revision 1.29
diff -u -u -r1.29 bonobo-embeddable-factory.c
--- bonobo/bonobo-embeddable-factory.c 2000/01/25 11:35:42 1.29
+++ bonobo/bonobo-embeddable-factory.c 2000/01/25 21:36:51
@@ -16,10 +16,10 @@
#include <config.h>
#include <gtk/gtksignal.h>
#include <gtk/gtkmarshal.h>
-#include <libgnorba/gnorba.h>
#include <bonobo/Bonobo.h>
#include <bonobo/bonobo-main.h>
#include <bonobo/bonobo-embeddable-factory.h>
+#include "bonobo-object-directory.h"
POA_Bonobo_GenericFactory__vepv bonobo_embeddable_factory_vepv;
Index: bonobo/bonobo-generic-factory.c
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-generic-factory.c,v
retrieving revision 1.8
diff -u -u -r1.8 bonobo-generic-factory.c
--- bonobo/bonobo-generic-factory.c 2000/01/25 11:35:43 1.8
+++ bonobo/bonobo-generic-factory.c 2000/01/25 21:36:51
@@ -16,10 +16,10 @@
#include <config.h>
#include <gtk/gtksignal.h>
#include <gtk/gtkmarshal.h>
-#include <libgnorba/gnorba.h>
#include <bonobo/Bonobo.h>
#include <bonobo/bonobo-main.h>
#include <bonobo/bonobo-generic-factory.h>
+#include "bonobo-object-directory.h"
POA_Bonobo_GenericFactory__vepv bonobo_generic_factory_vepv;
@@ -37,7 +37,7 @@
static CORBA_Object
impl_Bonobo_GenericFactory_create_object (PortableServer_Servant servant,
const CORBA_char *obj_goad_id,
- const GNOME_stringlist *params,
+ const Bonobo_stringlist *params,
CORBA_Environment *ev)
{
BonoboGenericFactoryClass *class;
@@ -116,13 +116,11 @@
CORBA_exception_init (&ev);
- ret = goad_server_register (
- NULL, corba_factory, c_factory->goad_id, "server",
- &ev);
+ ret = od_server_register (corba_factory, c_factory->goad_id);
CORBA_exception_free (&ev);
- if (ret != 0){
+ if (ret != OD_REG_SUCCESS){
bonobo_object_unref (BONOBO_OBJECT (c_factory));
return NULL;
}
@@ -215,7 +213,8 @@
CORBA_Environment ev;
CORBA_exception_init (&ev);
- goad_server_unregister (NULL, c_factory->goad_id, "server", &ev);
+ od_server_unregister (BONOBO_OBJECT(c_factory)->corba_objref,
+ c_factory->goad_id);
CORBA_exception_free (&ev);
g_free (c_factory->goad_id);
Index: bonobo/bonobo-main.c
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-main.c,v
retrieving revision 1.20
diff -u -u -r1.20 bonobo-main.c
--- bonobo/bonobo-main.c 2000/01/25 11:35:43 1.20
+++ bonobo/bonobo-main.c 2000/01/25 21:36:51
@@ -11,8 +11,9 @@
*/
#include <config.h>
#include <bonobo/bonobo-main.h>
-#include <libgnorba/gnorba.h>
+#include "bonobo-object-directory.h"
#include <signal.h>
+#include <gnome.h>
#include <X11/Xlib.h>
@@ -183,7 +184,7 @@
* Create the POA.
*/
if (orb == CORBA_OBJECT_NIL)
- orb = gnome_CORBA_ORB();
+ orb = od_get_orb();
if (CORBA_Object_is_nil ((CORBA_Object)poa, &ev)){
poa = (PortableServer_POA)CORBA_ORB_resolve_initial_references (orb, "RootPOA", &ev);
Index: bonobo/bonobo-moniker-client.c
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-moniker-client.c,v
retrieving revision 1.7
diff -u -u -r1.7 bonobo-moniker-client.c
--- bonobo/bonobo-moniker-client.c 2000/01/25 11:35:43 1.7
+++ bonobo/bonobo-moniker-client.c 2000/01/25 21:36:51
@@ -12,7 +12,8 @@
#include <bonobo/bonobo-moniker.h>
#include <bonobo/Bonobo.h>
#include <bonobo/bonobo-moniker-client.h>
-#include <libgnorba/gnorba.h>
+#include <gtk/gtk.h>
+#include "bonobo-object-directory.h"
/**
* bonobo_moniker_find_in_naming_service:
Index: bonobo/bonobo-object-client.c
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-object-client.c,v
retrieving revision 1.31
diff -u -u -r1.31 bonobo-object-client.c
--- bonobo/bonobo-object-client.c 2000/01/25 11:35:43 1.31
+++ bonobo/bonobo-object-client.c 2000/01/25 21:36:51
@@ -14,6 +14,7 @@
#include <bonobo/bonobo-stream.h>
#include <bonobo/bonobo-moniker-client.h>
#include <bonobo/bonobo-stream-fs.h>
+#include "bonobo-object-directory.h"
static BonoboObjectClass *bonobo_object_client_parent_class;
@@ -39,31 +40,14 @@
return object_client;
}
-/**
- * bonobo_object_activate_with_repo_id:
- * @list: Preloaded list of servers or NULL.
- * @repo_id: CORBA interface repository id that we want to activate.
- * @flags: Goad activation flags.
- * @params: parameters passed to the factory
- *
- * Activates a service and wraps it on the BonoboObjectClient object.
- * The service activated should support the GNOME::object interface.
- *
- * This routine used goad_server_activate_with_repo_id() routine from
- * libgnorba.
- */
-BonoboObjectClient *
-bonobo_object_activate_with_repo_id (GoadServerList *list,
- const char *repo_id,
- GoadActivationFlags flags,
- const char **params)
+static BonoboObjectClient *
+bonobo_object_activate_with_either_id(const gchar* iid,
+ gint flags)
{
CORBA_Object corba_object;
BonoboObjectClient *object;
-
- g_warning ("Activating objects by repo_id is a bad idea, try using the goad_id instead");
- corba_object = goad_server_activate_with_repo_id (NULL, repo_id, 0, NULL);
+ corba_object = od_server_activate_with_id (iid, flags, NULL);
if (corba_object == CORBA_OBJECT_NIL)
return NULL;
@@ -75,7 +59,7 @@
/**
* bonobo_object_activate_with_goad_id:
- * @list: Preloaded list of servers or NULL.
+ * @dummy: obsolete, ignored.
* @goad_id: GOAD service identification.
* @flags: Goad activation flags.
* @params: parameters passed to the factory
@@ -87,22 +71,34 @@
* libgnorba.
*/
BonoboObjectClient *
-bonobo_object_activate_with_goad_id (GoadServerList *list,
+bonobo_object_activate_with_goad_id (gpointer dummy,
const char *goad_id,
- GoadActivationFlags flags,
+ gint flags,
const char **params)
{
- CORBA_Object corba_object;
- BonoboObjectClient *object;
+ od_assert_using_goad();
- corba_object = goad_server_activate_with_id (NULL, goad_id, 0, NULL);
- if (corba_object == CORBA_OBJECT_NIL)
- return NULL;
-
- object = gtk_type_new (bonobo_object_client_get_type ());
- bonobo_object_client_construct (object, corba_object);
+ return bonobo_object_activate_with_either_id(goad_id, flags);
+}
- return object;
+/**
+ * bonobo_object_activate_with_oaf_id:
+ * @list: Preloaded list of servers or NULL.
+ * @oaf_id: OAF IID
+ * @flags: OAF activation flags
+ * @params: parameters passed to the factory
+ *
+ * Activates the service represented by @oaf_id.
+ * The service activated should support the GNOME::object interface.
+ *
+ */
+BonoboObjectClient *
+bonobo_object_activate_with_oaf_id (const char *oaf_id,
+ gint flags)
+{
+ od_assert_using_oaf();
+
+ return bonobo_object_activate_with_either_id(oaf_id, flags);
}
static GList *
@@ -137,7 +133,7 @@
}
Bonobo_Unknown
-bonobo_object_restore_from_url (const char *goad_id, const char *url)
+bonobo_object_restore_from_url (const char *iid, const char *url)
{
#define bonobo_object_restore_from_url_defined_here
CORBA_Object rtn = CORBA_OBJECT_NIL;
@@ -148,19 +144,20 @@
name = g_strdup_printf ("url_moniker!%s", url);
/* 1. Check the naming service to see if we're already available */
- rtn = bonobo_moniker_find_in_naming_service (name, goad_id);
+ rtn = bonobo_moniker_find_in_naming_service (name, iid);
if (!rtn) {
- /* 2. fire up that object specified by the goad_id */
- rtn = goad_server_activate_with_id (
- NULL, /* name_server list */
- goad_id, /* server to activate */
- 0, /* GoadActivationFlags */
- 0); /* params for activation */
+ /* 2. fire up that object specified by the iid */
+ CORBA_exception_init (&ev);
+
+ rtn = od_server_activate_with_id (
+ iid, /* server to activate */
+ 0, /* ActivationFlags */
+ &ev);
g_free (name);
- CORBA_exception_init (&ev);
+
if (CORBA_Object_is_nil (rtn, &ev)) /* bail */ {
@@ -250,13 +247,13 @@
/**
* bonobo_object_activate:
* @object_desc: Either a string representation of an object moniker
- * or an object goad id.
+ * or an object ID (GOAD ID or OAF ID depending on Bonobo compilation).
* @flags: activation flags
*
* Returns: An object created.
*/
BonoboObjectClient *
-bonobo_object_activate (const char *object_desc, GoadActivationFlags flags)
+bonobo_object_activate (const char *object_desc, gint flags)
{
CORBA_Environment ev;
Bonobo_Unknown obj, last;
@@ -266,7 +263,7 @@
g_return_val_if_fail (object_desc != NULL, NULL);
if (strncmp (object_desc, "moniker_url:", 12) != 0)
- return bonobo_object_activate_with_goad_id (NULL, object_desc, flags, NULL);
+ return bonobo_object_activate_with_either_id (object_desc, flags);
moniker_info = parse_moniker_string (object_desc + 12);
if (g_list_length (moniker_info) < 2){
@@ -379,8 +376,8 @@
}
interface = Bonobo_Unknown_query_interface (
- bonobo_object_corba_objref (BONOBO_OBJECT (object)),
- interface_desc, ev);
+ bonobo_object_corba_objref (BONOBO_OBJECT (object)),
+ interface_desc, ev);
if (ev->_major != CORBA_NO_EXCEPTION) {
bonobo_object_check_env (BONOBO_OBJECT (object),
Index: bonobo/bonobo-object-client.h
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-object-client.h,v
retrieving revision 1.13
diff -u -u -r1.13 bonobo-object-client.h
--- bonobo/bonobo-object-client.h 2000/01/25 11:35:43 1.13
+++ bonobo/bonobo-object-client.h 2000/01/25 21:36:51
@@ -5,7 +5,6 @@
#include <libgnome/gnome-defs.h>
#include <gtk/gtkobject.h>
#include <bonobo/Bonobo.h>
-#include <libgnorba/gnorba.h>
#include <bonobo/bonobo-object.h>
#define BONOBO_OBJECT_CLIENT_TYPE (bonobo_object_client_get_type ())
@@ -28,15 +27,13 @@
CORBA_Object corba_object);
BonoboObjectClient *bonobo_object_activate (const char *object_desc,
- GoadActivationFlags flags);
-BonoboObjectClient *bonobo_object_activate_with_repo_id (GoadServerList *list,
- const char *repo_id,
- GoadActivationFlags flags,
- const char **params);
-BonoboObjectClient *bonobo_object_activate_with_goad_id (GoadServerList *list,
+ gint oaf_or_goad_flags);
+BonoboObjectClient *bonobo_object_activate_with_goad_id (gpointer dummy,
const char *goad_id,
- GoadActivationFlags flags,
+ gint goad_flags,
const char **params);
+BonoboObjectClient *bonobo_object_activate_with_oaf_id (const char *oaf_id,
+ gint flags);
Bonobo_Unknown bonobo_object_restore_from_url (const char *goad_id,
const char *url);
BonoboObjectClient *bonobo_object_client_from_corba (Bonobo_Unknown o);
Index: bonobo/bonobo-object-directory-goad.c
===================================================================
RCS file: bonobo-object-directory-goad.c
diff -N bonobo-object-directory-goad.c
--- /dev/null Tue May 5 16:32:27 1998
+++ bonobo-object-directory-goad.c Tue Jan 25 16:36:51 2000
@@ -0,0 +1,142 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 c-set-style: linux -*- */
+
+#include "bonobo-object-directory.h"
+#include <libgnorba/gnorba.h>
+
+CORBA_ORB
+od_get_orb (void)
+{
+ return gnome_CORBA_ORB();
+}
+
+static gboolean
+stringlist_contains (gchar **list, const gchar *word)
+{
+ int i = 0;
+
+ if (list == NULL)
+ return FALSE;
+
+ while (list[i] != NULL) {
+ if (strcmp (list[i], word) == 0) {
+ return TRUE;
+ }
+ i++;
+ }
+ return FALSE;
+}
+
+GList*
+od_get_server_list (const gchar **required_ids)
+{
+ GList *retval = NULL;
+ GoadServerList *goad_list;
+ guint i;
+ guint n_required = 0;
+ const gchar** iter;
+
+ iter = required_ids;
+ while (*iter) {
+ ++n_required;
+
+ ++iter;
+ }
+
+ goad_list = goad_server_list_get();
+
+ i = 0;
+
+ while (goad_list->list[i].repo_id != NULL) {
+ guint num = 0, j = 0;
+
+ for (j = 0; j < n_required; j++) {
+ if (stringlist_contains (goad_list->list[i].repo_id,
+ required_ids[j])) {
+ num++;
+ }
+ }
+
+ if (num == n_required) { /* We have a match! */
+ ODServerInfo *info;
+
+ info = od_server_info_new(goad_list->list[i].server_id,
+ goad_list->list[i].description);
+ retval = g_list_prepend(retval, info);
+ }
+
+ ++i;
+ }
+
+ retval = g_list_reverse(retval);
+
+ return retval;
+}
+
+CORBA_Object
+od_server_activate_with_id (const gchar *iid,
+ gint flags,
+ CORBA_Environment *ev)
+{
+ return goad_server_activate_with_id(NULL, iid, flags, NULL);
+}
+
+ODRegistrationResult
+od_server_register (CORBA_Object objref,
+ const gchar *iid)
+{
+ gint result;
+ CORBA_Environment ev;
+
+ CORBA_exception_init(&ev);
+
+ result = goad_server_register(NULL, objref, iid, "server", &ev);
+
+ CORBA_exception_free(&ev);
+
+ switch (result) {
+ case 0:
+ return OD_REG_SUCCESS;
+ break;
+
+ case -2:
+ return OD_REG_ALREADY_ACTIVE;
+ break;
+
+ default:
+ return OD_REG_ERROR;
+ break;
+ }
+}
+
+ODRegistrationResult
+od_server_unregister (CORBA_Object objref,
+ const gchar *iid)
+{
+ gint result;
+ CORBA_Environment ev;
+
+ CORBA_exception_init(&ev);
+
+ result = goad_server_unregister(NULL, iid, "server", &ev);
+
+ CORBA_exception_free(&ev);
+
+ if (result < 0)
+ return OD_REG_ERROR;
+ else
+ return OD_REG_SUCCESS;
+}
+
+void
+od_assert_using_goad (void)
+{
+ return;
+}
+
+void
+od_assert_using_oaf (void)
+{
+ g_warning("Your Bonobo library is compiled to use GOAD (from gnome-libs 1.0)\n"
+ "This program requires a Bonobo compiled to use OAF instead.");
+ exit(1);
+}
Index: bonobo/bonobo-object-directory-oaf.c
===================================================================
RCS file: bonobo-object-directory-oaf.c
diff -N bonobo-object-directory-oaf.c
--- /dev/null Tue May 5 16:32:27 1998
+++ bonobo-object-directory-oaf.c Tue Jan 25 16:36:51 2000
@@ -0,0 +1,152 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 c-set-style: linux -*- */
+
+#include "bonobo-object-directory.h"
+#include <liboaf/liboaf.h>
+
+CORBA_ORB
+od_get_orb (void)
+{
+ return oaf_orb_get();
+}
+
+GList*
+od_get_server_list (const gchar **required_ids)
+{
+ GList *retval = NULL;
+ gchar *query;
+ const gchar** iter;
+ guint n_required = 0;
+ gchar **query_components;
+ OAF_ServerInfoList *servers;
+ CORBA_Environment ev;
+ guint i;
+
+ g_return_val_if_fail(required_ids != NULL, NULL);
+ g_return_val_if_fail(*required_ids != NULL, NULL);
+
+ /* We need to build a query up from the required_ids */
+ iter = required_ids;
+
+ while (*iter) {
+ ++n_required;
+ ++iter;
+ }
+
+ query_components = g_new0(gchar*, n_required+1);
+
+ iter = required_ids;
+
+ while (*iter) {
+ *query_components = g_strconcat("repo_ids.has(",
+ *iter,
+ ")",
+ NULL);
+ ++iter;
+ }
+
+ query = g_strjoinv(" and ", query_components);
+
+ printf("OAF query: %s\n", query); /* debug spew */
+
+ g_strfreev(query_components);
+
+ CORBA_exception_init(&ev);
+ servers = oaf_query(query, NULL, &ev);
+ g_free(query);
+ CORBA_exception_free(&ev);
+
+ if (servers == NULL)
+ return NULL;
+
+ i = 0;
+ while (i < servers->_length) {
+ OAF_ServerInfo *oafinfo = &servers->_buffer[i];
+ ODServerInfo *info;
+
+ info = od_server_info_new(oafinfo->iid,
+ "OAF servers have no description?");
+
+ retval = g_list_prepend(retval, info);
+
+ ++i;
+ }
+
+ CORBA_free(servers);
+
+ retval = g_list_reverse(retval);
+
+ return retval;
+}
+
+CORBA_Object
+od_server_activate_with_id (const gchar *iid,
+ gint flags,
+ CORBA_Environment *ev)
+{
+ CORBA_Environment myev;
+ CORBA_Object retval;
+
+ CORBA_exception_init(&myev);
+
+ if (ev == NULL) {
+ ev = &myev;
+ }
+
+ retval = oaf_activate_from_id(iid, 0, NULL, ev);
+
+ CORBA_exception_free(ev);
+
+ return retval;
+}
+
+ODRegistrationResult
+od_server_register (CORBA_Object objref,
+ const gchar *iid)
+{
+ OAF_RegistrationResult result;
+
+
+ result = oaf_active_server_register(iid, objref);
+
+ switch (result) {
+ case OAF_REG_SUCCESS:
+ return OD_REG_SUCCESS;
+ break;
+
+ case OAF_REG_NOT_LISTED:
+ return OD_REG_NOT_LISTED;
+ break;
+
+ case OAF_REG_ALREADY_ACTIVE:
+ return OD_REG_ALREADY_ACTIVE;
+ break;
+
+ case OAF_REG_ERROR:
+ default:
+ return OD_REG_ERROR;
+ break;
+ }
+}
+
+ODRegistrationResult
+od_server_unregister (CORBA_Object objref,
+ const gchar *iid)
+{
+ oaf_active_server_unregister(iid, objref);
+
+ return OD_REG_SUCCESS;
+}
+
+void
+od_assert_using_goad (void)
+{
+ g_warning("Your Bonobo library is compiled to use OAF\n"
+ "This program requires a Bonobo compiled to use GOAD from gnome-libs 1.0 instead.");
+ exit(1);
+}
+
+void
+od_assert_using_oaf (void)
+{
+ return;
+}
Index: bonobo/bonobo-object-directory.c
===================================================================
RCS file: bonobo-object-directory.c
diff -N bonobo-object-directory.c
--- /dev/null Tue May 5 16:32:27 1998
+++ bonobo-object-directory.c Tue Jan 25 16:36:51 2000
@@ -0,0 +1,72 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 c-set-style: linux -*- */
+
+#include "bonobo-object-directory.h"
+
+struct _ODServerInfo {
+ guint refcount;
+ gchar* iid;
+ gchar* desc;
+};
+
+ODServerInfo*
+od_server_info_new(const gchar* iid, const gchar* desc)
+{
+ ODServerInfo *info;
+
+ info = g_new(ODServerInfo, 1);
+
+ info->refcount = 1;
+ info->iid = iid ? g_strdup(iid) : NULL;
+ info->desc = desc ? g_strdup(desc) : NULL;
+
+ return info;
+}
+
+const gchar*
+od_server_info_get_id (ODServerInfo *info)
+{
+ return info->iid;
+}
+
+const gchar*
+od_server_info_get_description (ODServerInfo *info)
+{
+ return info->desc;
+}
+
+void
+od_server_info_ref (ODServerInfo *info)
+{
+ info->refcount += 1;
+}
+
+void
+od_server_info_unref (ODServerInfo *info)
+{
+ g_return_if_fail(info != NULL);
+ g_return_if_fail(info->refcount > 0);
+
+ info->refcount -= 1;
+
+ if (info->refcount == 0) {
+ g_free(info->iid);
+ g_free(info->desc);
+ g_free(info);
+ }
+}
+
+void
+od_server_list_free (GList *list)
+{
+ GList *iter;
+
+ iter = list;
+
+ while (iter != NULL) {
+ od_server_info_unref(iter->data);
+
+ iter = g_list_next(iter);
+ }
+
+ g_list_free(list);
+}
Index: bonobo/bonobo-object-directory.h
===================================================================
RCS file: bonobo-object-directory.h
diff -N bonobo-object-directory.h
--- /dev/null Tue May 5 16:32:27 1998
+++ bonobo-object-directory.h Tue Jan 25 16:36:52 2000
@@ -0,0 +1,56 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 c-set-style: linux -*- */
+#ifndef __BONOBO_OBJECT_DIRECTORY_H__
+#define __BONOBO_OBJECT_DIRECTORY_H__
+
+#include <glib.h>
+#include <libgnome/gnome-defs.h>
+#include <orb/orbit.h>
+#include <ORBitservices/CosNaming.h>
+
+BEGIN_GNOME_DECLS
+
+/* This file provides an abstraction of the object directory Bonobo
+ will use (GOAD or OAF). However, the object directory is not
+ dynamically loaded or anything like that; it must be selected
+ at compile time. This is a private, non-installed API.
+*/
+
+typedef struct _ODServerInfo ODServerInfo;
+
+typedef enum {
+ OD_REG_SUCCESS,
+ OD_REG_NOT_LISTED,
+ OD_REG_ALREADY_ACTIVE,
+ OD_REG_ERROR
+} ODRegistrationResult;
+
+CORBA_ORB od_get_orb (void);
+
+ODServerInfo *od_server_info_new (const gchar *iid,
+ const gchar *desc);
+const gchar *od_server_info_get_id (ODServerInfo *info);
+const gchar *od_server_info_get_description (ODServerInfo *info);
+void od_server_info_ref (ODServerInfo *info);
+void od_server_info_unref (ODServerInfo *info);
+
+
+
+/* returns list of ODServerInfo */
+GList *od_get_server_list (const gchar **required_ids);
+void od_server_list_free (GList *list);
+CORBA_Object od_server_activate_with_id (const gchar *iid,
+ gint flags,
+ CORBA_Environment *ev);
+ODRegistrationResult od_server_register (CORBA_Object objref,
+ const gchar *iid);
+ODRegistrationResult od_server_unregister (CORBA_Object objref,
+ const gchar *iid);
+void od_assert_using_goad (void);
+void od_assert_using_oaf (void);
+
+
+END_GNOME_DECLS
+
+#endif /* __BONOBO_OBJECT_DIRECTORY_H__ */
+
+
Index: bonobo/bonobo-object.c
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-object.c,v
retrieving revision 1.52
diff -u -u -r1.52 bonobo-object.c
--- bonobo/bonobo-object.c 2000/01/25 11:35:43 1.52
+++ bonobo/bonobo-object.c 2000/01/25 21:36:52
@@ -11,10 +11,10 @@
#include <gtk/gtksignal.h>
#include <gtk/gtkmarshal.h>
#include <gtk/gtktypeutils.h>
-#include <libgnorba/gnorba.h>
#include <bonobo/bonobo-main.h>
#include <bonobo/bonobo-object.h>
#include "Bonobo.h"
+#include "bonobo-object-directory.h"
POA_Bonobo_Unknown__vepv bonobo_object_vepv;
Index: bonobo/bonobo-selector.c
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-selector.c,v
retrieving revision 1.18
diff -u -u -r1.18 bonobo-selector.c
--- bonobo/bonobo-selector.c 2000/01/25 11:35:45 1.18
+++ bonobo/bonobo-selector.c 2000/01/25 21:37:01
@@ -2,6 +2,8 @@
#include <config.h>
#include "bonobo-selector.h"
#include <string.h> /* strcmp */
+#include <gnome.h>
+#include "bonobo-object-directory.h"
#define DEFAULT_INTERFACE "IDL:GNOME/Embeddable:1.0"
@@ -10,7 +12,7 @@
struct _BonoboSelectorPrivate
{
GtkWidget *clist;
- GoadServerList *servers;
+ GList *servers;
int n_servers;
const gchar **interfaces_required;
};
@@ -32,7 +34,6 @@
static void cancel_callback (GtkWidget *widget, gpointer data);
static void add_gnorba_objects (BonoboSelector *widget);
static GList *get_filtered_objects (BonoboSelector *widget);
-static gboolean stringlist_contains (gchar **list, const gchar *word);
/* fixme: revove this as soon it is included in gnome-dialog */
@@ -145,7 +146,7 @@
priv = sel->priv;
gtk_widget_destroy (priv->clist);
- goad_server_list_free (priv->servers);
+ od_server_list_free (priv->servers);
g_free (priv);
if (GTK_OBJECT_CLASS (parent_class)->destroy)
@@ -153,21 +154,14 @@
}
-/**
- * bonobo_selector_get_selected_goad_id:
- * @sel: A BonoboSelector widget.
- *
- * Returns: A newly-allocated string containing the GOAD ID of the
- * currently-selected CORBA server (i.e., the corba server whose
- * name is highlighted in the list). The user of this function is
- * responsible for freeing this.
- */
-gchar *
-bonobo_selector_get_selected_goad_id (BonoboSelector *sel)
+static gchar *
+bonobo_selector_get_selected_id (BonoboSelector *sel)
{
GList *selection;
gchar *text;
BonoboSelectorPrivate *priv;
+
+ od_assert_using_goad();
g_return_val_if_fail (sel != NULL, NULL);
priv = sel->priv;
@@ -179,23 +173,9 @@
return g_strdup (text);
}
-/**
- * gnome_bonobo_select_goad_id:
- * @title: The title to be used for the dialog.
- * @interfaces_required: A list of required interfaces. See
- * bonobo_selector_new().
- *
- * Calls bonobo_selector_new() to create a new
- * BonoboSelector widget with the specified paramters, @title and
- * @interfaces_required. Then runs the dialog modally and allows
- * the user to make a selection.
- *
- * Returns: The GOAD ID of the selected server, or NULL if no server
- * is selected. The GOAD ID string has been allocated with g_strdup
- */
-gchar *
-gnome_bonobo_select_goad_id (const gchar *title,
- const gchar **interfaces_required)
+static gchar *
+gnome_bonobo_select_id (const gchar *title,
+ const gchar **interfaces_required)
{
GtkWidget *sel = bonobo_selector_new (title, interfaces_required);
gchar *name = NULL;
@@ -224,6 +204,82 @@
return name;
}
+/**
+ * bonobo_selector_get_selected_goad_id:
+ * @sel: A BonoboSelector widget.
+ *
+ * Returns: A newly-allocated string containing the GOAD ID of the
+ * currently-selected CORBA server (i.e., the corba server whose
+ * name is highlighted in the list). The user of this function is
+ * responsible for freeing this.
+ */
+gchar *
+bonobo_selector_get_selected_goad_id (BonoboSelector *sel)
+{
+ od_assert_using_goad();
+ return bonobo_selector_get_selected_id(sel);
+}
+
+/**
+ * gnome_bonobo_select_goad_id:
+ * @title: The title to be used for the dialog.
+ * @interfaces_required: A list of required interfaces. See
+ * bonobo_selector_new().
+ *
+ * Calls bonobo_selector_new() to create a new
+ * BonoboSelector widget with the specified paramters, @title and
+ * @interfaces_required. Then runs the dialog modally and allows
+ * the user to make a selection.
+ *
+ * Returns: The GOAD ID of the selected server, or NULL if no server
+ * is selected. The GOAD ID string has been allocated with g_strdup
+ */
+gchar *
+gnome_bonobo_select_goad_id (const gchar *title,
+ const gchar **interfaces_required)
+{
+ od_assert_using_goad();
+ return gnome_bonobo_select_id(title, interfaces_required);
+}
+
+/**
+ * bonobo_selector_get_selected_oaf_id:
+ * @sel: A BonoboSelector widget.
+ *
+ * Returns: A newly-allocated string containing the OAF ID of the
+ * currently-selected CORBA server (i.e., the corba server whose
+ * name is highlighted in the list). The user of this function is
+ * responsible for freeing this.
+ */
+gchar *
+bonobo_selector_get_selected_oaf_id (BonoboSelector *sel)
+{
+ od_assert_using_oaf();
+ return bonobo_selector_get_selected_id(sel);
+}
+
+/**
+ * gnome_bonobo_select_oaf_id:
+ * @title: The title to be used for the dialog.
+ * @interfaces_required: A list of required interfaces. See
+ * bonobo_selector_new().
+ *
+ * Calls bonobo_selector_new() to create a new
+ * BonoboSelector widget with the specified paramters, @title and
+ * @interfaces_required. Then runs the dialog modally and allows
+ * the user to make a selection.
+ *
+ * Returns: The OAF ID of the selected server, or NULL if no server
+ * is selected. The OAF ID string has been allocated with g_strdup
+ */
+gchar *
+gnome_bonobo_select_oaf_id (const gchar *title,
+ const gchar **interfaces_required)
+{
+ od_assert_using_oaf();
+ return gnome_bonobo_select_id(title, interfaces_required);
+}
+
static void
button_callback (GtkWidget *widget, gint button_number,
gpointer data)
@@ -245,7 +301,7 @@
static void
ok_callback (GtkWidget *widget, gpointer data)
{
- char *text = bonobo_selector_get_selected_goad_id (
+ char *text = bonobo_selector_get_selected_id (
BONOBO_SELECTOR (widget));
gtk_object_set_user_data (GTK_OBJECT (widget), text);
gtk_main_quit ();
@@ -278,7 +334,7 @@
BonoboSelector *sel = BONOBO_SELECTOR (widget);
GtkWidget *scrolled;
BonoboSelectorPrivate *priv;
- gchar *titles[] = { N_("Bonobo object description"), "goadid", NULL };
+ gchar *titles[] = { N_("Bonobo object description"), "ID", NULL };
g_return_if_fail (widget != NULL);
@@ -319,7 +375,7 @@
static void
add_gnorba_objects (BonoboSelector *widget)
{
- gchar *text[3];
+ const gchar *text[3];
GList *list = NULL;
BonoboSelectorPrivate *priv;
@@ -344,9 +400,9 @@
while (list != NULL)
{
- text[0] = ( (GoadServer *)list->data)->description;
- text[1] = ( (GoadServer *)list->data)->server_id;
- gtk_clist_append (GTK_CLIST (priv->clist), text);
+ text[0] = od_server_info_get_description(list->data);
+ text[1] = od_server_info_get_id(list->data);
+ gtk_clist_append (GTK_CLIST (priv->clist), (gchar**)text);
priv->n_servers++;
list = list->next;
}
@@ -357,79 +413,37 @@
static GList *
get_filtered_objects (BonoboSelector *widget)
{
- int i = 0, j = 0, num = 0;
+ int i = 0;
const gchar **inters;
GList *objects = NULL;
- int n_inters = 0;
- int n_objects = 0;
BonoboSelectorPrivate *priv;
+ int n_inters = 0;
g_return_val_if_fail (widget != NULL, NULL);
priv = widget->priv;
-
- priv->servers = goad_server_list_get ();
- if (priv->servers == NULL) return NULL;
- if (priv->interfaces_required == NULL)
- {
+ if (priv->interfaces_required == NULL) {
inters = g_malloc (sizeof (gpointer) * 2);
inters[0] = DEFAULT_INTERFACE;
inters[1] = NULL;
n_inters = 1;
- }
- else
- {
+ } else {
inters = priv->interfaces_required;
- while (inters[i] != NULL)
- {
+ while (inters[i] != NULL) {
n_inters++;
i++;
}
}
-
- while (priv->servers->list[i].repo_id != NULL)
- {
- num = 0;
-
- for (j = 0; j < n_inters; j++)
- {
- if (stringlist_contains (
- priv->servers->list[i].repo_id, inters[j]))
- {
- num++;
- }
- }
- if (num == n_inters) /* We have a match! */
- {
- objects = g_list_prepend (objects,
- &priv->servers->list[i]);
- n_objects++;
- }
- i++;
- }
- objects = g_list_reverse (objects);
- /* Free our temporary criteria */
- if (priv->interfaces_required == NULL) g_free (inters);
-
- return objects;
-}
+ priv->servers = od_get_server_list(inters);
-static gboolean
-stringlist_contains (gchar **list, const gchar *word)
-{
- int i = 0;
-
- if (list == NULL) return FALSE;
+ /* Free our temporary criteria */
+ if (priv->interfaces_required == NULL)
+ g_free (inters);
- while (list[i] != NULL)
- {
- if (strcmp (list[i], word) == 0)
- {
- return TRUE;
- }
- i++;
- }
- return FALSE;
+ if (priv->servers == NULL)
+ return NULL;
+ else
+ return objects;
}
Index: bonobo/bonobo-selector.h
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-selector.h,v
retrieving revision 1.9
diff -u -u -r1.9 bonobo-selector.h
--- bonobo/bonobo-selector.h 2000/01/25 11:35:45 1.9
+++ bonobo/bonobo-selector.h 2000/01/25 21:37:01
@@ -4,7 +4,6 @@
#include <gtk/gtk.h>
-#include <libgnorba/gnorba.h>
#include <libgnomeui/gnome-dialog.h>
BEGIN_GNOME_DECLS
@@ -38,6 +37,10 @@
const gchar **interfaces_required);
gchar *bonobo_selector_get_selected_goad_id (BonoboSelector *sel);
gchar *gnome_bonobo_select_goad_id (const gchar *title,
+ const gchar **interfaces_required);
+
+gchar *bonobo_selector_get_selected_oaf_id (BonoboSelector *sel);
+gchar *gnome_bonobo_select_oaf_id (const gchar *title,
const gchar **interfaces_required);
END_GNOME_DECLS
Index: bonobo/bonobo-view-frame.c
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-view-frame.c,v
retrieving revision 1.37
diff -u -u -r1.37 bonobo-view-frame.c
--- bonobo/bonobo-view-frame.c 2000/01/25 11:35:46 1.37
+++ bonobo/bonobo-view-frame.c 2000/01/25 21:37:01
@@ -17,6 +17,7 @@
#include <bonobo/bonobo-view-frame.h>
#include <gdk/gdkprivate.h>
#include <libgnomeui/gnome-canvas.h>
+#include <gdk/gdkkeysyms.h>
enum {
USER_ACTIVATE,
Index: bonobo/bonobo-widget.c
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/bonobo-widget.c,v
retrieving revision 1.13
diff -u -u -r1.13 bonobo-widget.c
--- bonobo/bonobo-widget.c 2000/01/25 16:34:59 1.13
+++ bonobo/bonobo-widget.c 2000/01/25 21:37:01
@@ -81,7 +81,7 @@
{
BonoboObjectClient *server;
- server = bonobo_object_activate (object_desc, (GoadActivationFlags) 0);
+ server = bonobo_object_activate (object_desc, 0);
return server;
}
Index: bonobo/test-bw.c
===================================================================
RCS file: /cvs/gnome/bonobo/bonobo/test-bw.c,v
retrieving revision 1.5
diff -u -u -r1.5 test-bw.c
--- bonobo/test-bw.c 2000/01/25 11:35:52 1.5
+++ bonobo/test-bw.c 2000/01/25 21:37:01
@@ -2,6 +2,7 @@
#include <config.h>
#include <gnome.h>
#include <bonobo/bonobo.h>
+#include <libgnorba/gnorba.h>
typedef struct {
GtkWidget *box;
Index: components/Makefile.am
===================================================================
RCS file: /cvs/gnome/bonobo/components/Makefile.am,v
retrieving revision 1.9
diff -u -u -r1.9 Makefile.am
--- components/Makefile.am 1999/11/09 20:41:40 1.9
+++ components/Makefile.am 2000/01/25 21:37:01
@@ -1,4 +1,8 @@
+if OAF
+SUBDIRS =
+else
SUBDIRS = application-x-gnomine image-x-png text-plain audio-ulaw
+endif
Keysdir = $(datadir)/mime-info
Keys_DATA = bonobo.keys
Index: components/application-x-gnomine/ChangeLog
===================================================================
RCS file: /cvs/gnome/bonobo/components/application-x-gnomine/ChangeLog,v
retrieving revision 1.3
diff -u -u -r1.3 ChangeLog
--- components/application-x-gnomine/ChangeLog 1999/12/07 15:37:07 1.3
+++ components/application-x-gnomine/ChangeLog 2000/01/25 21:37:01
@@ -1,3 +1,7 @@
+2000-01-26 Havoc Pennington <hp@pobox.com>
+
+ * bonobo-application-x-mines.c: include GNORBA
+
1999-12-07 Michael Meeks <mmeeks@gnu.org>
* bonobo-application-x-mines.c (embeddable_update_all_views): Kill
Index: components/application-x-gnomine/bonobo-application-x-mines.c
===================================================================
RCS file: /cvs/gnome/bonobo/components/application-x-gnomine/bonobo-application-x-mines.c,v
retrieving revision 1.6
diff -u -u -r1.6 bonobo-application-x-mines.c
--- components/application-x-gnomine/bonobo-application-x-mines.c 2000/01/25 11:45:28 1.6
+++ components/application-x-gnomine/bonobo-application-x-mines.c 2000/01/25 21:37:01
@@ -11,6 +11,7 @@
#include <config.h>
#include <gnome.h>
#include <bonobo.h>
+#include <libgnorba/gnorba.h>
#include "minefield.h"
Index: gshell/Makefile.am
===================================================================
RCS file: /cvs/gnome/bonobo/gshell/Makefile.am,v
retrieving revision 1.5
diff -u -u -r1.5 Makefile.am
--- gshell/Makefile.am 2000/01/25 17:42:50 1.5
+++ gshell/Makefile.am 2000/01/25 21:37:01
@@ -6,7 +6,11 @@
$(GNOME_INCLUDEDIR) \
$(GTK_CFLAGS)
+if OAF
+bin_PROGRAMS =
+else
bin_PROGRAMS = gshell
+endif
gshell_SOURCES = gshell.h gshell.c inout.h inout.c menu.h menu.c
Index: samples/compound-doc/Makefile.am
===================================================================
RCS file: /cvs/gnome/bonobo/samples/compound-doc/Makefile.am,v
retrieving revision 1.2
diff -u -u -r1.2 Makefile.am
--- samples/compound-doc/Makefile.am 2000/01/25 17:42:51 1.2
+++ samples/compound-doc/Makefile.am 2000/01/25 21:37:01
@@ -1,5 +1,9 @@
+if OAF
+bin_PROGRAMS =
+else
bin_PROGRAMS = paint-component-simple sample-container
+endif
INCLUDES = \
-DGNOMELOCALEDIR=\""$(datadir)/locale"\" \
Index: samples/compound-doc/paint-component-simple.c
===================================================================
RCS file: /cvs/gnome/bonobo/samples/compound-doc/paint-component-simple.c,v
retrieving revision 1.18
diff -u -u -r1.18 paint-component-simple.c
--- samples/compound-doc/paint-component-simple.c 2000/01/25 11:45:33 1.18
+++ samples/compound-doc/paint-component-simple.c 2000/01/25 21:37:01
@@ -11,6 +11,7 @@
#include <config.h>
#include <gnome.h>
#include <bonobo.h>
+#include <libgnorba/gnorba.h>
/*
* Number of running objects
Index: samples/controls/Makefile.am
===================================================================
RCS file: /cvs/gnome/bonobo/samples/controls/Makefile.am,v
retrieving revision 1.3
diff -u -u -r1.3 Makefile.am
--- samples/controls/Makefile.am 2000/01/25 17:42:52 1.3
+++ samples/controls/Makefile.am 2000/01/25 21:37:01
@@ -1,5 +1,9 @@
+if OAF
+bin_PROGRAMS =
+else
bin_PROGRAMS = sample-control-factory sample-control-container
+endif
INCLUDES = \
-DGNOMELOCALEDIR=\""$(datadir)/locale"\" \
@@ -20,7 +24,7 @@
$(top_builddir)/bonobo/libbonobo.la \
$(GTK_LIBS) \
$(GNOME_LIBDIR) \
- $(GNOMEGNORBA_LIBS) \
+ $(GNOMEGNORBA_LIBS) \
$(INTLLIBS)
sample_control_container_SOURCES = \
@@ -30,7 +34,7 @@
$(top_builddir)/bonobo/libbonobo.la \
$(GTK_LIBS) \
$(GNOME_LIBDIR) \
- $(GNOMEGNORBA_LIBS) \
+ $(GNOMEGNORBA_LIBS) \
$(INTLLIBS)
gnorbadir = $(sysconfdir)/CORBA/servers
@@ -38,4 +42,6 @@
bonobo-calculator-control.gnorba
EXTRA_DIST = $(gnorba_DATA)
+
+
Index: tests/Makefile.am
===================================================================
RCS file: /cvs/gnome/bonobo/tests/Makefile.am,v
retrieving revision 1.3
diff -u -u -r1.3 Makefile.am
--- tests/Makefile.am 2000/01/25 17:42:52 1.3
+++ tests/Makefile.am 2000/01/25 21:37:01
@@ -1,4 +1,8 @@
+if OAF
+bin_PROGRAMS=
+else
bin_PROGRAMS=test-properties-server test-properties-client
+endif
INCLUDES = \
-DGNOMELOCALEDIR=\""$(datadir)/locale"\" \
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]