aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog9
-rw-r--r--mail/Evolution-Mail.idl9
-rw-r--r--mail/Makefile.am22
-rw-r--r--mail/mail-component.c7
-rw-r--r--mail/mail-component.h10
5 files changed, 49 insertions, 8 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index b13e9ff772..834a4d5b62 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,12 @@
+2005-06-02 Not Zed <NotZed@Ximian.com>
+
+ * mail-component.c: change this to sub-class evolution-component,
+ not bonobo-object.
+
+ * Evolution-Mail.idl: Made the mail component sub-class
+ Evolution.Component so it can add new interfaces for remote gui
+ mail operations.
+
2005-05-31 Rodney Dawes <dobey@novell.com>
* em-folder-browser.c (emfb_view_hide_read, emfb_view_show_selected):
diff --git a/mail/Evolution-Mail.idl b/mail/Evolution-Mail.idl
new file mode 100644
index 0000000000..82097a9c1e
--- /dev/null
+++ b/mail/Evolution-Mail.idl
@@ -0,0 +1,9 @@
+#include <shell/Evolution-Component.idl>
+
+module GNOME {
+module Evolution {
+ interface MailComponent : Component {
+ // Insert wonderous remote mail operations here.
+ };
+};
+};
diff --git a/mail/Makefile.am b/mail/Makefile.am
index 16659aad82..42cd33b356 100644
--- a/mail/Makefile.am
+++ b/mail/Makefile.am
@@ -51,6 +51,24 @@ $(SPELL_IDL_GENERATED_C): $(SPELL_IDL_GENERATED_H)
Spell-impl.o: Spell.h
+# Mail.idl
+MAIL_IDL = Evolution-Mail.idl
+MAIL_IDL_GENERATED_H = \
+ Evolution-Mail.h
+MAIL_IDL_GENERATED_C = \
+ Evolution-Mail-common.c \
+ Evolution-Mail-skels.c \
+ Evolution-Mail-stubs.c
+MAIL_IDL_GENERATED = $(MAIL_IDL_GENERATED_C) $(MAIL_IDL_GENERATED_H)
+
+$(MAIL_IDL_GENERATED_H): $(MAIL_IDL)
+ $(ORBIT_IDL) -I $(top_srcdir) -I $(datadir)/idl $(IDL_INCLUDES) $^
+$(MAIL_IDL_GENERATED_C): $(MAIL_IDL_GENERATED_H)
+
+# IDL install
+
+idl_DATA = $(MAIL_IDL)
+
# plugin mail api
mailinclude_HEADERS = \
em-composer-utils.h \
@@ -91,6 +109,7 @@ mailinclude_HEADERS = \
libevolution_mail_la_SOURCES = \
$(SPELL_IDL_GENERATED) \
+ $(MAIL_IDL_GENERATED) \
$(MARSHAL_GENERATED) \
$(mailinclude_HEADERS) \
e-searching-tokenizer.c \
@@ -246,6 +265,7 @@ EXTRA_DIST = \
ChangeLog.pre-1-4 \
em-marshal.list \
$(SPELL_IDL) \
+ $(MAIL_IDL) \
mail.error.xml \
$(glade_DATA) \
$(schema_in_files) \
@@ -293,6 +313,6 @@ install-data-local:
dist-hook:
cd $(distdir); rm -f $(BUILT_SOURCES)
-BUILT_SOURCES = $(SPELL_IDL_GENERATED) $(MARSHAL_GENERATED) $(server_DATA) $(error_DATA)
+BUILT_SOURCES = $(SPELL_IDL_GENERATED) $(MAIL_IDL_GENERATED) $(MARSHAL_GENERATED) $(server_DATA) $(error_DATA)
CLEANFILES = $(BUILT_SOURCES)
diff --git a/mail/mail-component.c b/mail/mail-component.c
index 9b280a0839..3e11a8e249 100644
--- a/mail/mail-component.c
+++ b/mail/mail-component.c
@@ -89,7 +89,7 @@ static void create_local_item_cb(EUserCreatableItemsHandler *handler, const char
#define MAIL_COMPONENT_DEFAULT(mc) if (mc == NULL) mc = mail_component_peek();
-#define PARENT_TYPE bonobo_object_get_type ()
+#define PARENT_TYPE evolution_component_get_type ()
static BonoboObjectClass *parent_class = NULL;
struct _store_info {
@@ -865,7 +865,8 @@ impl_upgradeFromVersion (PortableServer_Servant servant, const short major, cons
static void
mail_component_class_init (MailComponentClass *class)
{
- POA_GNOME_Evolution_Component__epv *epv = &class->epv;
+ POA_GNOME_Evolution_Component__epv *epv = &((EvolutionComponentClass *)class)->epv;
+ POA_GNOME_Evolution_MailComponent__epv *mepv = &class->epv;
GObjectClass *object_class = G_OBJECT_CLASS (class);
parent_class = g_type_class_peek_parent (class);
@@ -881,6 +882,8 @@ mail_component_class_init (MailComponentClass *class)
epv->handleURI = impl_handleURI;
epv->sendAndReceive = impl_sendAndReceive;
epv->upgradeFromVersion = impl_upgradeFromVersion;
+
+ mepv = mepv;
}
static void
diff --git a/mail/mail-component.h b/mail/mail-component.h
index baaf2ea2fd..d8e0dbaba4 100644
--- a/mail/mail-component.h
+++ b/mail/mail-component.h
@@ -27,8 +27,8 @@
#define _MAIL_COMPONENT_H_
#include <bonobo/bonobo-object.h>
-
-#include "shell/Evolution.h"
+#include "shell/evolution-component.h"
+#include "Evolution-Mail.h"
struct _CamelStore;
@@ -51,15 +51,15 @@ enum _mail_component_folder_t {
};
struct _MailComponent {
- BonoboObject parent;
+ EvolutionComponent parent;
MailComponentPrivate *priv;
};
struct _MailComponentClass {
- BonoboObjectClass parent_class;
+ EvolutionComponentClass parent_class;
- POA_GNOME_Evolution_Component__epv epv;
+ POA_GNOME_Evolution_MailComponent__epv epv;
};
GType mail_component_get_type (void);