[balsa/wip/gtk4: 252/351] mailbox imap: Declare it final
- From: Peter Bloomfield <peterb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [balsa/wip/gtk4: 252/351] mailbox imap: Declare it final
- Date: Wed, 23 May 2018 21:38:09 +0000 (UTC)
commit 4ac403f0e65c7f20a49f653199bb5e7dbe71a558
Author: Peter Bloomfield <PeterBloomfield bellsouth net>
Date: Mon Mar 26 11:44:27 2018 -0400
mailbox imap: Declare it final
Use G_DECLARE_FINAL_TYPE for LibBalsaMailboxImap. It was already
private.
libbalsa/mailbox_imap.c | 50 ++++++++++++----------------------------------
libbalsa/mailbox_imap.h | 22 +++++---------------
2 files changed, 19 insertions(+), 53 deletions(-)
---
diff --git a/libbalsa/mailbox_imap.c b/libbalsa/mailbox_imap.c
index cf02d07..e8cdf56 100644
--- a/libbalsa/mailbox_imap.c
+++ b/libbalsa/mailbox_imap.c
@@ -92,8 +92,6 @@ struct message_info {
LibBalsaMessageFlag user_flags;
};
-static LibBalsaMailboxClass *parent_class = NULL;
-
static off_t ImapCacheSize = 30*1024*1024; /* 30MB */
/* issue message if downloaded part has more than this size */
@@ -206,32 +204,9 @@ static struct message_info *message_info_from_msgno(
#define IMAP_MAILBOX_UID_VALIDITY(mailbox) (LIBBALSA_MAILBOX_IMAP(mailbox)->uid_validity)
-GType
-libbalsa_mailbox_imap_get_type(void)
-{
- static GType mailbox_type = 0;
-
- if (!mailbox_type) {
- static const GTypeInfo mailbox_info = {
- sizeof(LibBalsaMailboxImapClass),
- NULL, /* base_init */
- NULL, /* base_finalize */
- (GClassInitFunc) libbalsa_mailbox_imap_class_init,
- NULL, /* class_finalize */
- NULL, /* class_data */
- sizeof(LibBalsaMailboxImap),
- 0, /* n_preallocs */
- (GInstanceInitFunc) libbalsa_mailbox_imap_init
- };
-
- mailbox_type =
- g_type_register_static(LIBBALSA_TYPE_MAILBOX_REMOTE,
- "LibBalsaMailboxImap",
- &mailbox_info, 0);
- }
-
- return mailbox_type;
-}
+G_DEFINE_TYPE(LibBalsaMailboxImap,
+ libbalsa_mailbox_imap,
+ LIBBALSA_TYPE_MAILBOX_REMOTE)
static void
libbalsa_mailbox_imap_class_init(LibBalsaMailboxImapClass * klass)
@@ -242,8 +217,6 @@ libbalsa_mailbox_imap_class_init(LibBalsaMailboxImapClass * klass)
object_class = G_OBJECT_CLASS(klass);
libbalsa_mailbox_class = LIBBALSA_MAILBOX_CLASS(klass);
- parent_class = g_type_class_peek_parent(klass);
-
object_class->dispose = libbalsa_mailbox_imap_dispose;
object_class->finalize = libbalsa_mailbox_imap_finalize;
@@ -325,7 +298,7 @@ libbalsa_mailbox_imap_dispose(GObject * object)
mailbox = LIBBALSA_MAILBOX_IMAP(object);
libbalsa_clear_source_id(&mailbox->unread_update_id);
- G_OBJECT_CLASS(parent_class)->dispose(object);
+ G_OBJECT_CLASS(libbalsa_mailbox_imap_parent_class)->dispose(object);
}
/* libbalsa_mailbox_imap_finalize:
@@ -348,7 +321,7 @@ libbalsa_mailbox_imap_finalize(GObject * object)
g_array_free(mailbox->sort_ranks, TRUE);
g_list_free_full(mailbox->acls, (GDestroyNotify) imap_user_acl_free);
- G_OBJECT_CLASS(parent_class)->finalize(object);
+ G_OBJECT_CLASS(libbalsa_mailbox_imap_parent_class)->finalize(object);
}
LibBalsaMailbox*
@@ -1665,8 +1638,9 @@ libbalsa_mailbox_imap_save_config(LibBalsaMailbox * mailbox,
libbalsa_server_save_config(LIBBALSA_MAILBOX_REMOTE_GET_SERVER(mailbox));
- if (LIBBALSA_MAILBOX_CLASS(parent_class)->save_config)
- LIBBALSA_MAILBOX_CLASS(parent_class)->save_config(mailbox, prefix);
+ if (LIBBALSA_MAILBOX_CLASS(libbalsa_mailbox_imap_parent_class)->save_config)
+ LIBBALSA_MAILBOX_CLASS(libbalsa_mailbox_imap_parent_class)->
+ save_config(mailbox, prefix);
}
static void
@@ -1700,8 +1674,9 @@ libbalsa_mailbox_imap_load_config(LibBalsaMailbox * mailbox,
libbalsa_mailbox_remote_set_server(remote, server);
- if (LIBBALSA_MAILBOX_CLASS(parent_class)->load_config)
- LIBBALSA_MAILBOX_CLASS(parent_class)->load_config(mailbox, prefix);
+ if (LIBBALSA_MAILBOX_CLASS(libbalsa_mailbox_imap_parent_class)->load_config)
+ LIBBALSA_MAILBOX_CLASS(libbalsa_mailbox_imap_parent_class)->
+ load_config(mailbox, prefix);
libbalsa_mailbox_imap_update_url(mimap);
}
@@ -3419,7 +3394,8 @@ libbalsa_mailbox_imap_messages_copy(LibBalsaMailbox * mailbox,
}
/* Couldn't use server-side copy, fall back to default method. */
- return parent_class->messages_copy(mailbox, msgnos, dest, err);
+ return LIBBALSA_MAILBOX_CLASS(libbalsa_mailbox_imap_parent_class)->
+ messages_copy(mailbox, msgnos, dest, err);
}
void
diff --git a/libbalsa/mailbox_imap.h b/libbalsa/mailbox_imap.h
index f7bb7a0..4792d9a 100644
--- a/libbalsa/mailbox_imap.h
+++ b/libbalsa/mailbox_imap.h
@@ -20,23 +20,13 @@
#ifndef __LIBBALSA_MAILBOX_IMAP_H__
#define __LIBBALSA_MAILBOX_IMAP_H__
-#define LIBBALSA_TYPE_MAILBOX_IMAP \
- (libbalsa_mailbox_imap_get_type())
-#define LIBBALSA_MAILBOX_IMAP(obj) \
- (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIBBALSA_TYPE_MAILBOX_IMAP, \
- LibBalsaMailboxImap))
-#define LIBBALSA_MAILBOX_IMAP_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_CAST ((klass), LIBBALSA_TYPE_MAILBOX_IMAP, \
- LibBalsaMailboxImapClass))
-#define LIBBALSA_IS_MAILBOX_IMAP(obj) \
- (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIBBALSA_TYPE_MAILBOX_IMAP))
-#define LIBBALSA_IS_MAILBOX_IMAP_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_TYPE ((klass), LIBBALSA_TYPE_MAILBOX_IMAP))
-
-GType libbalsa_mailbox_imap_get_type(void);
-
-typedef struct _LibBalsaMailboxImap LibBalsaMailboxImap;
-typedef struct _LibBalsaMailboxImapClass LibBalsaMailboxImapClass;
+#define LIBBALSA_TYPE_MAILBOX_IMAP libbalsa_mailbox_imap_get_type()
+
+G_DECLARE_FINAL_TYPE(LibBalsaMailboxImap,
+ libbalsa_mailbox_imap,
+ LIBBALSA,
+ MAILBOX_IMAP,
+ LibBalsaMailboxRemote)
#define POINTER_TO_UID(p) GPOINTER_TO_UINT(p)
#define UID_TO_POINTER(p) GUINT_TO_POINTER(p)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]