diff options
author | Not Zed <NotZed@Ximian.com> | 2005-05-26 18:40:56 +0800 |
---|---|---|
committer | Michael Zucci <zucchi@src.gnome.org> | 2005-05-26 18:40:56 +0800 |
commit | 10c92931e083b34d3395744433edda5a493a3054 (patch) | |
tree | e433d945f32e7316771e3b518afb29736c64a4f0 /plugins/mail-remote/evolution-mail-messageiterator.c | |
parent | f657c69d7b4375a9a4fd202890b17a1e7e280d89 (diff) | |
download | gsoc2013-evolution-10c92931e083b34d3395744433edda5a493a3054.tar gsoc2013-evolution-10c92931e083b34d3395744433edda5a493a3054.tar.gz gsoc2013-evolution-10c92931e083b34d3395744433edda5a493a3054.tar.bz2 gsoc2013-evolution-10c92931e083b34d3395744433edda5a493a3054.tar.lz gsoc2013-evolution-10c92931e083b34d3395744433edda5a493a3054.tar.xz gsoc2013-evolution-10c92931e083b34d3395744433edda5a493a3054.tar.zst gsoc2013-evolution-10c92931e083b34d3395744433edda5a493a3054.zip |
New helpers for listeners.
2005-05-26 Not Zed <NotZed@Ximian.com>
* evolution-mail-folderlistener.[ch]:
* evolution-mail-sessionlistener.[ch]:
* evolution-mail-storelistener.[ch]: New helpers for listeners.
* evolution-mail-listener.[ch]: removed.
* Evolution-DataServer-Mail.idl: removed the GNOME prefix, Bonobo
doesn't use it, and it just adds pointless typing. Added
getmessage and appendmessage interaces. Moved listeners to each
object rather than one global listener.
svn path=/trunk/; revision=29414
Diffstat (limited to 'plugins/mail-remote/evolution-mail-messageiterator.c')
-rw-r--r-- | plugins/mail-remote/evolution-mail-messageiterator.c | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/plugins/mail-remote/evolution-mail-messageiterator.c b/plugins/mail-remote/evolution-mail-messageiterator.c index 8cf123640d..0fa25f730f 100644 --- a/plugins/mail-remote/evolution-mail-messageiterator.c +++ b/plugins/mail-remote/evolution-mail-messageiterator.c @@ -74,12 +74,12 @@ impl_finalize (GObject *object) } /* Evolution.Mail.MessageIterator */ -static GNOME_Evolution_Mail_MessageInfos * +static Evolution_Mail_MessageInfos * impl_next(PortableServer_Servant _servant, const CORBA_long limit, CORBA_Environment * ev) { EvolutionMailMessageIterator *emf = (EvolutionMailMessageIterator *)bonobo_object_from_servant(_servant); int i, j; - GNOME_Evolution_Mail_MessageInfos *msgs; + Evolution_Mail_MessageInfos *msgs; struct _EvolutionMailMessageIteratorPrivate *p = _PRIVATE(emf); CamelException ex = { 0 }; @@ -97,9 +97,9 @@ impl_next(PortableServer_Servant _servant, const CORBA_long limit, CORBA_Environ p->index = 0; } - msgs = GNOME_Evolution_Mail_MessageInfos__alloc(); + msgs = Evolution_Mail_MessageInfos__alloc(); msgs->_maximum = MIN(limit, p->search->len - p->index); - msgs->_buffer = GNOME_Evolution_Mail_MessageInfos_allocbuf(msgs->_maximum); + msgs->_buffer = Evolution_Mail_MessageInfos_allocbuf(msgs->_maximum); CORBA_sequence_set_release(msgs, CORBA_TRUE); j=0; @@ -119,17 +119,27 @@ impl_next(PortableServer_Servant _servant, const CORBA_long limit, CORBA_Environ return msgs; } +static void +impl_mi_dispose(PortableServer_Servant _servant, CORBA_Environment *ev) +{ + EvolutionMailMessageIterator *emmi = (EvolutionMailMessageIterator *)bonobo_object_from_servant(_servant); + + bonobo_object_set_immortal((BonoboObject *)emmi, FALSE); + /*bonobo_object_unref((BonoboObject *)emmi);*/ +} + /* Initialization */ static void evolution_mail_messageiterator_class_init (EvolutionMailMessageIteratorClass *klass) { - POA_GNOME_Evolution_Mail_MessageIterator__epv *epv = &klass->epv; + POA_Evolution_Mail_MessageIterator__epv *epv = &klass->epv; GObjectClass *object_class = G_OBJECT_CLASS (klass); parent_class = g_type_class_peek_parent (klass); epv->next = impl_next; + epv->dispose = impl_mi_dispose; object_class->dispose = impl_dispose; object_class->finalize = impl_finalize; @@ -138,11 +148,12 @@ evolution_mail_messageiterator_class_init (EvolutionMailMessageIteratorClass *kl } static void -evolution_mail_messageiterator_init(EvolutionMailMessageIterator *component, EvolutionMailMessageIteratorClass *klass) +evolution_mail_messageiterator_init(EvolutionMailMessageIterator *emi, EvolutionMailMessageIteratorClass *klass) { + bonobo_object_set_immortal((BonoboObject *)emi, TRUE); } -BONOBO_TYPE_FUNC_FULL (EvolutionMailMessageIterator, GNOME_Evolution_Mail_MessageIterator, PARENT_TYPE, evolution_mail_messageiterator) +BONOBO_TYPE_FUNC_FULL (EvolutionMailMessageIterator, Evolution_Mail_MessageIterator, PARENT_TYPE, evolution_mail_messageiterator) EvolutionMailMessageIterator * evolution_mail_messageiterator_new(CamelFolder *folder, const char *expr) |