[balsa/wip/gtk4: 180/351] address-book-vcard: Declare it final
- From: Peter Bloomfield <peterb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [balsa/wip/gtk4: 180/351] address-book-vcard: Declare it final
- Date: Wed, 23 May 2018 21:32:05 +0000 (UTC)
commit 9e7ae904a32136d542b190dcec6545991c5e4312
Author: Peter Bloomfield <PeterBloomfield bellsouth net>
Date: Thu Feb 15 17:55:29 2018 -0500
address-book-vcard: Declare it final
Use G_DECLARE_FINAL_TYPE for LibBalsaAddressBookVcard and make object
and class opaque.
libbalsa/address-book-vcard.c | 45 +++++++++++++++-------------------------
libbalsa/address-book-vcard.h | 22 ++-----------------
2 files changed, 20 insertions(+), 47 deletions(-)
---
diff --git a/libbalsa/address-book-vcard.c b/libbalsa/address-book-vcard.c
index b28172f..5b2ec15 100644
--- a/libbalsa/address-book-vcard.c
+++ b/libbalsa/address-book-vcard.c
@@ -52,32 +52,16 @@ static LibBalsaABErr
libbalsa_address_book_vcard_save_address(FILE * stream,
LibBalsaAddress * address);
+struct _LibBalsaAddressBookVcard {
+ LibBalsaAddressBookText parent;
+};
-GType libbalsa_address_book_vcard_get_type(void)
-{
- static GType address_book_vcard_type = 0;
-
- if (!address_book_vcard_type) {
- static const GTypeInfo address_book_vcard_info = {
- sizeof(LibBalsaAddressBookVcardClass),
- NULL, /* base_init */
- NULL, /* base_finalize */
- (GClassInitFunc) libbalsa_address_book_vcard_class_init,
- NULL, /* class_finalize */
- NULL, /* class_data */
- sizeof(LibBalsaAddressBookVcard),
- 0, /* n_preallocs */
- NULL /* instance_init */
- };
-
- address_book_vcard_type =
- g_type_register_static(LIBBALSA_TYPE_ADDRESS_BOOK_TEXT,
- "LibBalsaAddressBookVcard",
- &address_book_vcard_info, 0);
- }
+struct _LibBalsaAddressBookVcardClass {
+ LibBalsaAddressBookTextClass parent_class;
+};
- return address_book_vcard_type;
-}
+G_DEFINE_TYPE(LibBalsaAddressBookVcard, libbalsa_address_book_vcard,
+ LIBBALSA_TYPE_ADDRESS_BOOK_TEXT)
static void
libbalsa_address_book_vcard_class_init(LibBalsaAddressBookVcardClass *
@@ -92,18 +76,23 @@ libbalsa_address_book_vcard_class_init(LibBalsaAddressBookVcardClass *
libbalsa_address_book_vcard_save_address;
}
+static void
+libbalsa_address_book_vcard_init(LibBalsaAddressBookVcard * ab_vcard)
+{
+}
+
/* Public method */
LibBalsaAddressBook *
libbalsa_address_book_vcard_new(const gchar * name, const gchar * path)
{
- LibBalsaAddressBookVcard *abvc;
+ LibBalsaAddressBookVcard *ab_vcard;
LibBalsaAddressBook *ab;
- abvc =
+ ab_vcard =
LIBBALSA_ADDRESS_BOOK_VCARD(g_object_new
(LIBBALSA_TYPE_ADDRESS_BOOK_VCARD,
NULL));
- ab = LIBBALSA_ADDRESS_BOOK(abvc);
+ ab = LIBBALSA_ADDRESS_BOOK(ab_vcard);
libbalsa_address_book_set_name(ab, name);
libbalsa_address_book_text_set_path(LIBBALSA_ADDRESS_BOOK_TEXT(ab), path);
diff --git a/libbalsa/address-book-vcard.h b/libbalsa/address-book-vcard.h
index 1b5a3c7..7d193a5 100644
--- a/libbalsa/address-book-vcard.h
+++ b/libbalsa/address-book-vcard.h
@@ -27,25 +27,9 @@
#include "address-book-text.h"
-#define LIBBALSA_TYPE_ADDRESS_BOOK_VCARD (libbalsa_address_book_vcard_get_type())
-#define LIBBALSA_ADDRESS_BOOK_VCARD(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj,
LIBBALSA_TYPE_ADDRESS_BOOK_VCARD, LibBalsaAddressBookVcard))
-#define LIBBALSA_ADDRESS_BOOK_VCARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST (klass,
LIBBALSA_TYPE_ADDRESS_BOOK_VCARD, LibBalsaAddressBookVcardClass))
-#define LIBBALSA_IS_ADDRESS_BOOK_VCARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj,
LIBBALSA_TYPE_ADDRESS_BOOK_VCARD))
-#define LIBBALSA_IS_ADDRESS_BOOK_VCARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE (klass,
LIBBALSA_TYPE_ADDRESS_BOOK_VCARD))
-
-struct _LibBalsaAddressBookVcard {
- LibBalsaAddressBookText parent;
-};
-
-struct _LibBalsaAddressBookVcardClass {
- LibBalsaAddressBookTextClass parent_class;
-};
-
-typedef struct _LibBalsaAddressBookVcard LibBalsaAddressBookVcard;
-typedef struct _LibBalsaAddressBookVcardClass
- LibBalsaAddressBookVcardClass;
-
-GType libbalsa_address_book_vcard_get_type(void);
+#define LIBBALSA_TYPE_ADDRESS_BOOK_VCARD (libbalsa_address_book_vcard_get_type())
+G_DECLARE_FINAL_TYPE(LibBalsaAddressBookVcard, libbalsa_address_book_vcard,
+ LIBBALSA, ADDRESS_BOOK_VCARD, LibBalsaAddressBookText)
LibBalsaAddressBook *libbalsa_address_book_vcard_new(const gchar * name,
const gchar * path);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]