diff options
-rw-r--r-- | libyelp/yelp-docbook-document.c | 46 | ||||
-rw-r--r-- | libyelp/yelp-document.c | 26 | ||||
-rw-r--r-- | libyelp/yelp-document.h | 10 | ||||
-rw-r--r-- | libyelp/yelp-help-list.c | 23 | ||||
-rw-r--r-- | libyelp/yelp-info-document.c | 33 | ||||
-rw-r--r-- | libyelp/yelp-mallard-document.c | 49 | ||||
-rw-r--r-- | libyelp/yelp-man-document.c | 29 | ||||
-rw-r--r-- | libyelp/yelp-man-parser.c | 2 | ||||
-rw-r--r-- | libyelp/yelp-search-entry.c | 35 | ||||
-rw-r--r-- | libyelp/yelp-settings.c | 11 | ||||
-rw-r--r-- | libyelp/yelp-settings.h | 12 | ||||
-rw-r--r-- | libyelp/yelp-simple-document.c | 11 | ||||
-rw-r--r-- | libyelp/yelp-simple-document.h | 10 | ||||
-rw-r--r-- | libyelp/yelp-sqlite-storage.c | 35 | ||||
-rw-r--r-- | libyelp/yelp-transform.c | 43 | ||||
-rw-r--r-- | libyelp/yelp-uri.c | 83 | ||||
-rw-r--r-- | libyelp/yelp-view.c | 75 | ||||
-rw-r--r-- | src/yelp-application.c | 34 | ||||
-rw-r--r-- | src/yelp-window.c | 77 |
19 files changed, 314 insertions, 330 deletions
diff --git a/libyelp/yelp-docbook-document.c b/libyelp/yelp-docbook-document.c index 62f40611..f4ff88ac 100644 --- a/libyelp/yelp-docbook-document.c +++ b/libyelp/yelp-docbook-document.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2003-2009 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2003-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -94,9 +94,6 @@ static void transform_error (YelpTransform *transform static void transform_finalized (YelpDocbookDocument *docbook, gpointer transform); -G_DEFINE_TYPE (YelpDocbookDocument, yelp_docbook_document, YELP_TYPE_DOCUMENT) -#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_DOCBOOK_DOCUMENT, YelpDocbookDocumentPrivate)) - typedef struct _YelpDocbookDocumentPrivate YelpDocbookDocumentPrivate; struct _YelpDocbookDocumentPrivate { DocbookState state; @@ -129,6 +126,8 @@ struct _YelpDocbookDocumentPrivate { GHashTable *autoids; }; +G_DEFINE_TYPE_WITH_PRIVATE (YelpDocbookDocument, yelp_docbook_document, YELP_TYPE_DOCUMENT) + /******************************************************************************/ static void @@ -155,14 +154,12 @@ yelp_docbook_document_class_init (YelpDocbookDocumentClass *klass) document_class->index = docbook_index; document_class->request_page = docbook_request_page; - - g_type_class_add_private (klass, sizeof (YelpDocbookDocumentPrivate)); } static void yelp_docbook_document_init (YelpDocbookDocument *docbook) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); priv->state = DOCBOOK_STATE_BLANK; priv->autoids = NULL; @@ -174,7 +171,8 @@ static void yelp_docbook_document_dispose (GObject *object) { gint i; - YelpDocbookDocumentPrivate *priv = GET_PRIV (object); + YelpDocbookDocumentPrivate *priv = + yelp_docbook_document_get_instance_private (YELP_DOCBOOK_DOCUMENT (object)); if (priv->monitors != NULL) { for (i = 0; priv->monitors[i]; i++) { @@ -190,7 +188,8 @@ yelp_docbook_document_dispose (GObject *object) static void yelp_docbook_document_finalize (GObject *object) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (object); + YelpDocbookDocumentPrivate *priv = + yelp_docbook_document_get_instance_private (YELP_DOCBOOK_DOCUMENT (object)); if (priv->xmldoc) xmlFreeDoc (priv->xmldoc); @@ -221,7 +220,7 @@ yelp_docbook_document_new (YelpUri *uri) docbook = (YelpDocbookDocument *) g_object_new (YELP_TYPE_DOCBOOK_DOCUMENT, "document-uri", uri, NULL); - priv = GET_PRIV (docbook); + priv = yelp_docbook_document_get_instance_private (docbook); path = yelp_uri_get_search_path (uri); priv->monitors = g_new0 (GFileMonitor*, g_strv_length (path) + 1); @@ -250,7 +249,8 @@ docbook_request_page (YelpDocument *document, gpointer user_data, GDestroyNotify notify) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (document); + YelpDocbookDocumentPrivate *priv = + yelp_docbook_document_get_instance_private (YELP_DOCBOOK_DOCUMENT (document)); gchar *docuri; GError *error; gboolean handled; @@ -311,7 +311,7 @@ docbook_request_page (YelpDocument *document, static void docbook_process (YelpDocbookDocument *docbook) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); YelpDocument *document = YELP_DOCUMENT (docbook); GFile *file = NULL; gchar *filepath = NULL; @@ -469,7 +469,7 @@ docbook_process (YelpDocbookDocument *docbook) static void docbook_disconnect (YelpDocbookDocument *docbook) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); if (priv->chunk_ready) { g_signal_handler_disconnect (priv->transform, priv->chunk_ready); priv->chunk_ready = 0; @@ -491,7 +491,7 @@ docbook_disconnect (YelpDocbookDocument *docbook) static gboolean docbook_reload (YelpDocbookDocument *docbook) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); if (priv->index_running || priv->process_running || priv->transform_running) return TRUE; @@ -521,7 +521,7 @@ docbook_monitor_changed (GFileMonitor *monitor, GFileMonitorEvent event_type, YelpDocbookDocument *docbook) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); if (g_get_monotonic_time() - priv->reload_time < 1000) return; @@ -546,7 +546,7 @@ docbook_walk (YelpDocbookDocument *docbook) xmlChar *keywords = NULL; xmlNodePtr cur, old_cur; gboolean chunkQ; - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); YelpDocument *document = YELP_DOCUMENT (docbook); debug_print (DB_FUNCTION, "entering\n"); @@ -853,7 +853,7 @@ transform_chunk_ready (YelpTransform *transform, gchar *chunk_id, YelpDocbookDocument *docbook) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); gchar *content; debug_print (DB_FUNCTION, "entering\n"); @@ -880,7 +880,7 @@ static void transform_finished (YelpTransform *transform, YelpDocbookDocument *docbook) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); YelpDocument *document = YELP_DOCUMENT (docbook); gchar *docuri; GError *error; @@ -916,7 +916,7 @@ static void transform_error (YelpTransform *transform, YelpDocbookDocument *docbook) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); GError *error; debug_print (DB_FUNCTION, "entering\n"); @@ -938,7 +938,7 @@ static void transform_finalized (YelpDocbookDocument *docbook, gpointer transform) { - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); debug_print (DB_FUNCTION, "entering\n"); @@ -1007,7 +1007,7 @@ docbook_index_chunk (DocbookIndexData *index) gchar *title = NULL; gchar *keywords; GSList *chunks = NULL; - YelpDocbookDocumentPrivate *priv = GET_PRIV (index->docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (index->docbook); id = xmlGetProp (index->cur, BAD_CAST "id"); if (!id) @@ -1092,7 +1092,7 @@ docbook_index_threaded (YelpDocbookDocument *docbook) GFile *file = NULL; gchar *filename = NULL; YelpUri *uri; - YelpDocbookDocumentPrivate *priv = GET_PRIV (docbook); + YelpDocbookDocumentPrivate *priv = yelp_docbook_document_get_instance_private (docbook); uri = yelp_document_get_uri (YELP_DOCUMENT (docbook)); file = yelp_uri_get_file (uri); @@ -1153,7 +1153,7 @@ docbook_index (YelpDocument *document) if (done) return; - priv = GET_PRIV (document); + priv = yelp_docbook_document_get_instance_private (YELP_DOCBOOK_DOCUMENT (document)); g_object_ref (document); priv->index = g_thread_new ("docbook-index", (GThreadFunc)(GCallback) docbook_index_threaded, diff --git a/libyelp/yelp-document.c b/libyelp/yelp-document.c index 83582eaf..0a86f3f7 100644 --- a/libyelp/yelp-document.c +++ b/libyelp/yelp-document.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2003-2009 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2003-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -64,7 +64,7 @@ struct _Hash { GDestroyNotify destroy; }; -struct _YelpDocumentPriv { +struct _YelpDocumentPrivate { GMutex mutex; GSList *reqs_all; /* Holds canonical refs, only free from here */ @@ -97,9 +97,7 @@ struct _YelpDocumentPriv { GError *idle_error; }; -G_DEFINE_TYPE (YelpDocument, yelp_document, G_TYPE_OBJECT) - -#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_DOCUMENT, YelpDocumentPriv)) +G_DEFINE_TYPE_WITH_PRIVATE (YelpDocument, yelp_document, G_TYPE_OBJECT) static void yelp_document_dispose (GObject *object); static void yelp_document_finalize (GObject *object); @@ -292,16 +290,14 @@ yelp_document_class_init (YelpDocumentClass *klass) YELP_TYPE_URI, G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); - - g_type_class_add_private (klass, sizeof (YelpDocumentPriv)); } static void yelp_document_init (YelpDocument *document) { - YelpDocumentPriv *priv; + YelpDocumentPrivate *priv; - document->priv = priv = GET_PRIV (document); + document->priv = priv = yelp_document_get_instance_private (document); g_mutex_init (&priv->mutex); @@ -1263,7 +1259,7 @@ yelp_document_signal (YelpDocument *document, static gboolean yelp_document_error_pending_idle (YelpDocument *document) { - YelpDocumentPriv *priv = GET_PRIV (document); + YelpDocumentPrivate *priv = yelp_document_get_instance_private (document); GSList *cur; Request *request; @@ -1291,7 +1287,7 @@ void yelp_document_error_pending (YelpDocument *document, const GError *error) { - YelpDocumentPriv *priv = GET_PRIV (document); + YelpDocumentPrivate *priv = yelp_document_get_instance_private (document); g_assert (document != NULL && YELP_IS_DOCUMENT (document)); @@ -1433,7 +1429,7 @@ static gboolean request_idle_contents (Request *request) { YelpDocument *document; - YelpDocumentPriv *priv; + YelpDocumentPrivate *priv; YelpDocumentCallback callback = NULL; gpointer user_data; @@ -1445,7 +1441,7 @@ request_idle_contents (Request *request) } document = g_object_ref (request->document); - priv = GET_PRIV (document); + priv = yelp_document_get_instance_private (document); g_mutex_lock (&document->priv->mutex); @@ -1499,7 +1495,7 @@ static gboolean request_idle_error (Request *request) { YelpDocument *document; - YelpDocumentPriv *priv; + YelpDocumentPrivate *priv; YelpDocumentCallback callback = NULL; GError *error = NULL; gpointer user_data; @@ -1512,7 +1508,7 @@ request_idle_error (Request *request) } document = g_object_ref (request->document); - priv = GET_PRIV (document); + priv = yelp_document_get_instance_private (document); g_mutex_lock (&priv->mutex); diff --git a/libyelp/yelp-document.h b/libyelp/yelp-document.h index 8ee9203e..d4db68c5 100644 --- a/libyelp/yelp-document.h +++ b/libyelp/yelp-document.h @@ -35,9 +35,9 @@ G_BEGIN_DECLS #define YELP_IS_DOCUMENT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), YELP_TYPE_DOCUMENT)) #define YELP_DOCUMENT_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), YELP_TYPE_DOCUMENT, YelpDocumentClass)) -typedef struct _YelpDocument YelpDocument; -typedef struct _YelpDocumentClass YelpDocumentClass; -typedef struct _YelpDocumentPriv YelpDocumentPriv; +typedef struct _YelpDocument YelpDocument; +typedef struct _YelpDocumentClass YelpDocumentClass; +typedef struct _YelpDocumentPrivate YelpDocumentPrivate; typedef enum { YELP_DOCUMENT_SIGNAL_CONTENTS, @@ -51,8 +51,8 @@ typedef void (*YelpDocumentCallback) (YelpDocument *document, GError *error); struct _YelpDocument { - GObject parent; - YelpDocumentPriv *priv; + GObject parent; + YelpDocumentPrivate *priv; }; struct _YelpDocumentClass { diff --git a/libyelp/yelp-help-list.c b/libyelp/yelp-help-list.c index cbac98bf..7c21ab1f 100644 --- a/libyelp/yelp-help-list.c +++ b/libyelp/yelp-help-list.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2010 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2010-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -85,9 +85,6 @@ help_list_entry_cmp (HelpListEntry *a, HelpListEntry *b) return g_utf8_collate (as, bs); } -G_DEFINE_TYPE (YelpHelpList, yelp_help_list, YELP_TYPE_DOCUMENT) -#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_HELP_LIST, YelpHelpListPrivate)) - typedef struct _YelpHelpListPrivate YelpHelpListPrivate; struct _YelpHelpListPrivate { GMutex mutex; @@ -105,6 +102,8 @@ struct _YelpHelpListPrivate { xmlXPathCompExprPtr get_mallard_desc; }; +G_DEFINE_TYPE_WITH_PRIVATE (YelpHelpList, yelp_help_list, YELP_TYPE_DOCUMENT) + static void yelp_help_list_class_init (YelpHelpListClass *klass) { @@ -115,14 +114,12 @@ yelp_help_list_class_init (YelpHelpListClass *klass) object_class->finalize = yelp_help_list_finalize; document_class->request_page = help_list_request_page; - - g_type_class_add_private (klass, sizeof (YelpHelpListPrivate)); } static void yelp_help_list_init (YelpHelpList *list) { - YelpHelpListPrivate *priv = GET_PRIV (list); + YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (list); g_mutex_init (&priv->mutex); priv->entries = g_hash_table_new_full (g_str_hash, g_str_equal, @@ -152,7 +149,7 @@ yelp_help_list_dispose (GObject *object) static void yelp_help_list_finalize (GObject *object) { - YelpHelpListPrivate *priv = GET_PRIV (object); + YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (YELP_HELP_LIST (object)); g_hash_table_destroy (priv->entries); g_mutex_clear (&priv->mutex); @@ -184,7 +181,7 @@ help_list_request_page (YelpDocument *document, GDestroyNotify notify) { gboolean handled; - YelpHelpListPrivate *priv = GET_PRIV (document); + YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (YELP_HELP_LIST (document)); if (page_id == NULL) page_id = "index"; @@ -223,7 +220,7 @@ help_list_think (YelpHelpList *list) { const gchar * const *sdatadirs = g_get_system_data_dirs (); const gchar * const *langs = g_get_language_names (); - YelpHelpListPrivate *priv = GET_PRIV (list); + YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (list); /* The strings are still owned by GLib; we just own the array. */ gchar **datadirs; gint datadir_i, lang_i; @@ -445,7 +442,7 @@ help_list_handle_page (YelpHelpList *list, { gchar **colors, *tmp; GList *cur; - YelpHelpListPrivate *priv = GET_PRIV (list); + YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (list); GtkTextDirection direction = gtk_widget_get_default_direction (); GString *string = g_string_new ("<html xmlns=\"http://www.w3.org/1999/xhtml\"><head><style type='text/css'>\n" @@ -610,7 +607,7 @@ help_list_process_docbook (YelpHelpList *list, xmlDocPtr xmldoc; xmlXPathContextPtr xpath; xmlXPathObjectPtr obj = NULL; - YelpHelpListPrivate *priv = GET_PRIV (list); + YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (list); parserCtxt = xmlNewParserCtxt (); xmldoc = xmlCtxtReadFile (parserCtxt, @@ -649,7 +646,7 @@ help_list_process_mallard (YelpHelpList *list, xmlDocPtr xmldoc; xmlXPathContextPtr xpath; xmlXPathObjectPtr obj = NULL; - YelpHelpListPrivate *priv = GET_PRIV (list); + YelpHelpListPrivate *priv = yelp_help_list_get_instance_private (list); parserCtxt = xmlNewParserCtxt (); xmldoc = xmlCtxtReadFile (parserCtxt, diff --git a/libyelp/yelp-info-document.c b/libyelp/yelp-info-document.c index d55be325..0f89f66a 100644 --- a/libyelp/yelp-info-document.c +++ b/libyelp/yelp-info-document.c @@ -1,7 +1,7 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * Copyright (C) 2007 Don Scorgie <dscorgie@svn.gnome.org> - * Copyright (C) 2010 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2010-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -66,6 +66,7 @@ struct _YelpInfoDocumentPrivate { gchar *visit_prev_id; }; +G_DEFINE_TYPE_WITH_PRIVATE (YelpInfoDocument, yelp_info_document, YELP_TYPE_DOCUMENT) static void yelp_info_document_dispose (GObject *object); static void yelp_info_document_finalize (GObject *object); @@ -97,9 +98,6 @@ static gboolean info_sections_visit (GtkTreeModel *model, static void info_document_disconnect (YelpInfoDocument *info); -G_DEFINE_TYPE (YelpInfoDocument, yelp_info_document, YELP_TYPE_DOCUMENT) -#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_INFO_DOCUMENT, YelpInfoDocumentPrivate)) - static void yelp_info_document_class_init (YelpInfoDocumentClass *klass) { @@ -110,14 +108,12 @@ yelp_info_document_class_init (YelpInfoDocumentClass *klass) object_class->finalize = yelp_info_document_finalize; document_class->request_page = info_request_page; - - g_type_class_add_private (klass, sizeof (YelpInfoDocumentPrivate)); } static void yelp_info_document_init (YelpInfoDocument *info) { - YelpInfoDocumentPrivate *priv = GET_PRIV (info); + YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info); priv->state = INFO_STATE_BLANK; priv->xmldoc = NULL; @@ -127,7 +123,8 @@ yelp_info_document_init (YelpInfoDocument *info) static void yelp_info_document_dispose (GObject *object) { - YelpInfoDocumentPrivate *priv = GET_PRIV (object); + YelpInfoDocumentPrivate *priv = + yelp_info_document_get_instance_private (YELP_INFO_DOCUMENT (object)); if (priv->sections) { g_object_unref (priv->sections); @@ -145,7 +142,8 @@ yelp_info_document_dispose (GObject *object) static void yelp_info_document_finalize (GObject *object) { - YelpInfoDocumentPrivate *priv = GET_PRIV (object); + YelpInfoDocumentPrivate *priv = + yelp_info_document_get_instance_private (YELP_INFO_DOCUMENT (object)); if (priv->xmldoc) xmlFreeDoc (priv->xmldoc); @@ -182,7 +180,8 @@ info_request_page (YelpDocument *document, gpointer user_data, GDestroyNotify notify) { - YelpInfoDocumentPrivate *priv = GET_PRIV (document); + YelpInfoDocumentPrivate *priv = + yelp_info_document_get_instance_private (YELP_INFO_DOCUMENT (document)); gchar *docuri; GError *error; gboolean handled; @@ -244,7 +243,7 @@ transform_chunk_ready (YelpTransform *transform, gchar *chunk_id, YelpInfoDocument *info) { - YelpInfoDocumentPrivate *priv = GET_PRIV (info); + YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info); gchar *content; g_assert (transform == priv->transform); @@ -274,7 +273,7 @@ static void transform_finished (YelpTransform *transform, YelpInfoDocument *info) { - YelpInfoDocumentPrivate *priv = GET_PRIV (info); + YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info); gchar *docuri; GError *error; @@ -309,7 +308,7 @@ static void transform_error (YelpTransform *transform, YelpInfoDocument *info) { - YelpInfoDocumentPrivate *priv = GET_PRIV (info); + YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info); GError *error; g_assert (transform == priv->transform); @@ -330,7 +329,7 @@ static void transform_finalized (YelpInfoDocument *info, gpointer transform) { - YelpInfoDocumentPrivate *priv = GET_PRIV (info); + YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info); if (priv->xmldoc) xmlFreeDoc (priv->xmldoc); @@ -345,7 +344,7 @@ transform_finalized (YelpInfoDocument *info, static void info_document_process (YelpInfoDocument *info) { - YelpInfoDocumentPrivate *priv = GET_PRIV (info); + YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info); GFile *file = NULL; gchar *filepath = NULL; GError *error; @@ -429,7 +428,7 @@ info_sections_visit (GtkTreeModel *model, GtkTreeIter *iter, YelpInfoDocument *info) { - YelpInfoDocumentPrivate *priv = GET_PRIV (info); + YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info); gchar *page_id, *title; gtk_tree_model_get (model, iter, @@ -458,7 +457,7 @@ info_sections_visit (GtkTreeModel *model, static void info_document_disconnect (YelpInfoDocument *info) { - YelpInfoDocumentPrivate *priv = GET_PRIV (info); + YelpInfoDocumentPrivate *priv = yelp_info_document_get_instance_private (info); if (priv->chunk_ready) { g_signal_handler_disconnect (priv->transform, priv->chunk_ready); priv->chunk_ready = 0; diff --git a/libyelp/yelp-mallard-document.c b/libyelp/yelp-mallard-document.c index b1565580..f417a361 100644 --- a/libyelp/yelp-mallard-document.c +++ b/libyelp/yelp-mallard-document.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2009 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2009-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -115,9 +115,6 @@ static gboolean xml_node_is_ns_name (xmlNodePtr node, const xmlChar *name); -G_DEFINE_TYPE (YelpMallardDocument, yelp_mallard_document, YELP_TYPE_DOCUMENT) -#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_MALLARD_DOCUMENT, YelpMallardDocumentPrivate)) - typedef struct _YelpMallardDocumentPrivate YelpMallardDocumentPrivate; struct _YelpMallardDocumentPrivate { MallardState state; @@ -139,6 +136,8 @@ struct _YelpMallardDocumentPrivate { xmlXPathCompExprPtr normalize; }; +G_DEFINE_TYPE_WITH_PRIVATE (YelpMallardDocument, yelp_mallard_document, YELP_TYPE_DOCUMENT) + /******************************************************************************/ static void @@ -152,14 +151,12 @@ yelp_mallard_document_class_init (YelpMallardDocumentClass *klass) document_class->request_page = mallard_request_page; document_class->index = mallard_index; - - g_type_class_add_private (klass, sizeof (YelpMallardDocumentPrivate)); } static void yelp_mallard_document_init (YelpMallardDocument *mallard) { - YelpMallardDocumentPrivate *priv = GET_PRIV (mallard); + YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (mallard); xmlNodePtr cur; g_mutex_init (&priv->mutex); @@ -185,7 +182,8 @@ static void yelp_mallard_document_dispose (GObject *object) { gint i; - YelpMallardDocumentPrivate *priv = GET_PRIV (object); + YelpMallardDocumentPrivate *priv = + yelp_mallard_document_get_instance_private (YELP_MALLARD_DOCUMENT (object)); if (priv->monitors != NULL) { for (i = 0; priv->monitors[i]; i++) { @@ -201,7 +199,8 @@ yelp_mallard_document_dispose (GObject *object) static void yelp_mallard_document_finalize (GObject *object) { - YelpMallardDocumentPrivate *priv = GET_PRIV (object); + YelpMallardDocumentPrivate *priv = + yelp_mallard_document_get_instance_private (YELP_MALLARD_DOCUMENT (object)); g_mutex_clear (&priv->mutex); g_hash_table_destroy (priv->pages_hash); @@ -228,7 +227,7 @@ yelp_mallard_document_new (YelpUri *uri) mallard = (YelpMallardDocument *) g_object_new (YELP_TYPE_MALLARD_DOCUMENT, "document-uri", uri, NULL); - priv = GET_PRIV (mallard); + priv = yelp_mallard_document_get_instance_private (mallard); yelp_document_set_page_id ((YelpDocument *) mallard, NULL, "index"); yelp_document_set_page_id ((YelpDocument *) mallard, "index", "index"); @@ -259,7 +258,8 @@ mallard_request_page (YelpDocument *document, gpointer user_data, GDestroyNotify notify) { - YelpMallardDocumentPrivate *priv = GET_PRIV (document); + YelpMallardDocumentPrivate *priv = + yelp_mallard_document_get_instance_private (YELP_MALLARD_DOCUMENT (document)); gchar *docuri; GError *error; gboolean handled; @@ -326,7 +326,7 @@ mallard_request_page (YelpDocument *document, static void mallard_think (YelpMallardDocument *mallard) { - YelpMallardDocumentPrivate *priv = GET_PRIV (mallard); + YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (mallard); GError *error = NULL; gboolean editor_mode; @@ -442,7 +442,7 @@ mallard_try_run (YelpMallardDocument *mallard, const gchar *page_id) { /* We expect to be in a locked mutex when this function is called. */ - YelpMallardDocumentPrivate *priv = GET_PRIV (mallard); + YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (mallard); MallardPageData *page_data = NULL; gchar *real_id = NULL; GError *error; @@ -507,7 +507,7 @@ mallard_page_data_cancel (MallardPageData *page_data) static void mallard_page_data_walk (MallardPageData *page_data) { - YelpMallardDocumentPrivate *priv = GET_PRIV (page_data->mallard); + YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (page_data->mallard); xmlParserCtxtPtr parserCtxt = NULL; xmlChar *id = NULL; @@ -649,7 +649,8 @@ mallard_page_data_info (MallardPageData *page_data, if (xmlStrEqual (type, BAD_CAST "sort")) page_data->sort_title = TRUE; if (xmlStrEqual (type, BAD_CAST "text")) { - YelpMallardDocumentPrivate *priv = GET_PRIV (page_data->mallard); + YelpMallardDocumentPrivate *priv = + yelp_mallard_document_get_instance_private (page_data->mallard); xmlXPathObjectPtr obj; page_data->xpath->node = child; obj = xmlXPathCompiledEval (priv->normalize, page_data->xpath); @@ -663,7 +664,7 @@ mallard_page_data_info (MallardPageData *page_data, } } else if (xml_node_is_ns_name (child, MALLARD_NS, BAD_CAST "desc")) { - YelpMallardDocumentPrivate *priv = GET_PRIV (page_data->mallard); + YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (page_data->mallard); xmlXPathObjectPtr obj; page_data->xpath->node = child; obj = xmlXPathCompiledEval (priv->normalize, page_data->xpath); @@ -676,7 +677,7 @@ mallard_page_data_info (MallardPageData *page_data, else if (xml_node_is_ns_name (child, MALLARD_NS, BAD_CAST "keywords")) { /* FIXME: multiple keywords? same for desc/title */ - YelpMallardDocumentPrivate *priv = GET_PRIV (page_data->mallard); + YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (page_data->mallard); xmlXPathObjectPtr obj; page_data->xpath->node = child; obj = xmlXPathCompiledEval (priv->normalize, page_data->xpath); @@ -721,7 +722,7 @@ static void mallard_page_data_run (MallardPageData *page_data) { YelpSettings *settings = yelp_settings_get_default (); - YelpMallardDocumentPrivate *priv = GET_PRIV (page_data->mallard); + YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (page_data->mallard); gchar **params = NULL; mallard_page_data_cancel (page_data); @@ -790,7 +791,7 @@ transform_chunk_ready (YelpTransform *transform, YELP_IS_MALLARD_DOCUMENT (page_data->mallard)); g_assert (transform == page_data->transform); - priv = GET_PRIV (page_data->mallard); + priv = yelp_mallard_document_get_instance_private (page_data->mallard); if (priv->state == MALLARD_STATE_STOP) { mallard_page_data_cancel (page_data); @@ -819,7 +820,7 @@ transform_finished (YelpTransform *transform, YELP_IS_MALLARD_DOCUMENT (page_data->mallard)); g_assert (transform == page_data->transform); - priv = GET_PRIV (page_data->mallard); + priv = yelp_mallard_document_get_instance_private (page_data->mallard); if (priv->state == MALLARD_STATE_STOP) { mallard_page_data_cancel (page_data); @@ -844,7 +845,7 @@ transform_error (YelpTransform *transform, YELP_IS_MALLARD_DOCUMENT (page_data->mallard)); g_assert (transform == page_data->transform); - priv = GET_PRIV (page_data->mallard); + priv = yelp_mallard_document_get_instance_private (page_data->mallard); if (priv->state == MALLARD_STATE_STOP) { mallard_page_data_cancel (page_data); @@ -990,7 +991,7 @@ mallard_index_threaded (YelpMallardDocument *mallard) GHashTable *ids; gchar *doc_uri; YelpUri *document_uri; - YelpMallardDocumentPrivate *priv = GET_PRIV (mallard); + YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (mallard); document_uri = yelp_document_get_uri (YELP_DOCUMENT (mallard)); doc_uri = yelp_uri_get_document_uri (document_uri); @@ -1125,7 +1126,7 @@ mallard_index (YelpDocument *document) if (done) return; - priv = GET_PRIV (document); + priv = yelp_mallard_document_get_instance_private (YELP_MALLARD_DOCUMENT (document)); g_object_ref (document); priv->index = g_thread_new ("mallard-index", (GThreadFunc)(GCallback) mallard_index_threaded, @@ -1143,7 +1144,7 @@ mallard_monitor_changed (GFileMonitor *monitor, gchar **ids; gint i; xmlNodePtr cur; - YelpMallardDocumentPrivate *priv = GET_PRIV (mallard); + YelpMallardDocumentPrivate *priv = yelp_mallard_document_get_instance_private (mallard); /* Exiting the thinking thread would require a fair amount of retooling. For now, we'll just fail to auto-reload if that's still happening. diff --git a/libyelp/yelp-man-document.c b/libyelp/yelp-man-document.c index a18248ca..dba8a1d3 100644 --- a/libyelp/yelp-man-document.c +++ b/libyelp/yelp-man-document.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2007-2010 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2007-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -61,6 +61,8 @@ struct _YelpManDocumentPrivate { guint error; }; +G_DEFINE_TYPE_WITH_PRIVATE (YelpManDocument, yelp_man_document, YELP_TYPE_DOCUMENT) + static void yelp_man_document_finalize (GObject *object); /* YelpDocument */ @@ -88,9 +90,6 @@ static void man_document_process (YelpManDocument static void man_document_disconnect (YelpManDocument *man); -G_DEFINE_TYPE (YelpManDocument, yelp_man_document, YELP_TYPE_DOCUMENT) -#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_MAN_DOCUMENT, YelpManDocumentPrivate)) - static void yelp_man_document_class_init (YelpManDocumentClass *klass) { @@ -100,14 +99,12 @@ yelp_man_document_class_init (YelpManDocumentClass *klass) object_class->finalize = yelp_man_document_finalize; document_class->request_page = man_request_page; - - g_type_class_add_private (klass, sizeof (YelpManDocumentPrivate)); } static void yelp_man_document_init (YelpManDocument *man) { - YelpManDocumentPrivate *priv = GET_PRIV (man); + YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man); priv->state = MAN_STATE_BLANK; g_mutex_init (&priv->mutex); @@ -116,7 +113,8 @@ yelp_man_document_init (YelpManDocument *man) static void yelp_man_document_finalize (GObject *object) { - YelpManDocumentPrivate *priv = GET_PRIV (object); + YelpManDocumentPrivate *priv = + yelp_man_document_get_instance_private (YELP_MAN_DOCUMENT (object)); if (priv->xmldoc) xmlFreeDoc (priv->xmldoc); @@ -151,7 +149,8 @@ man_request_page (YelpDocument *document, gpointer user_data, GDestroyNotify notify) { - YelpManDocumentPrivate *priv = GET_PRIV (document); + YelpManDocumentPrivate *priv = + yelp_man_document_get_instance_private (YELP_MAN_DOCUMENT (document)); gchar *docuri, *fulluri; GError *error; gboolean handled; @@ -222,7 +221,7 @@ transform_chunk_ready (YelpTransform *transform, gchar *chunk_id, YelpManDocument *man) { - YelpManDocumentPrivate *priv = GET_PRIV (man); + YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man); gchar *content; g_assert (transform == priv->transform); @@ -252,7 +251,7 @@ static void transform_finished (YelpTransform *transform, YelpManDocument *man) { - YelpManDocumentPrivate *priv = GET_PRIV (man); + YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man); gchar *docuri; GError *error; @@ -287,7 +286,7 @@ static void transform_error (YelpTransform *transform, YelpManDocument *man) { - YelpManDocumentPrivate *priv = GET_PRIV (man); + YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man); GError *error; g_assert (transform == priv->transform); @@ -308,7 +307,7 @@ static void transform_finalized (YelpManDocument *man, gpointer transform) { - YelpManDocumentPrivate *priv = GET_PRIV (man); + YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man); if (priv->xmldoc) xmlFreeDoc (priv->xmldoc); @@ -322,7 +321,7 @@ transform_finalized (YelpManDocument *man, static void man_document_process (YelpManDocument *man) { - YelpManDocumentPrivate *priv = GET_PRIV (man); + YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man); GFile *file = NULL; gchar *filepath = NULL; GError *error; @@ -397,7 +396,7 @@ man_document_process (YelpManDocument *man) static void man_document_disconnect (YelpManDocument *man) { - YelpManDocumentPrivate *priv = GET_PRIV (man); + YelpManDocumentPrivate *priv = yelp_man_document_get_instance_private (man); if (priv->chunk_ready) { g_signal_handler_disconnect (priv->transform, priv->chunk_ready); priv->chunk_ready = 0; diff --git a/libyelp/yelp-man-parser.c b/libyelp/yelp-man-parser.c index 302ccb31..91522b79 100644 --- a/libyelp/yelp-man-parser.c +++ b/libyelp/yelp-man-parser.c @@ -1266,7 +1266,7 @@ unicode_strstrip (gchar *str) } start = skip_whitespace (str); - g_memmove (str, start, end - start); + memmove (str, start, end - start); *(str + (end - start)) = '\0'; } diff --git a/libyelp/yelp-search-entry.c b/libyelp/yelp-search-entry.c index 2b5a8196..0284a3f4 100644 --- a/libyelp/yelp-search-entry.c +++ b/libyelp/yelp-search-entry.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2009-2014 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2009-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -123,8 +123,7 @@ static GHashTable *completions; static guint search_entry_signals[LAST_SIGNAL] = {0,}; -G_DEFINE_TYPE (YelpSearchEntry, yelp_search_entry, GTK_TYPE_SEARCH_ENTRY) -#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE((object), YELP_TYPE_SEARCH_ENTRY, YelpSearchEntryPrivate)) +G_DEFINE_TYPE_WITH_PRIVATE (YelpSearchEntry, yelp_search_entry, GTK_TYPE_SEARCH_ENTRY) static void yelp_search_entry_class_init (YelpSearchEntryClass *klass) @@ -193,9 +192,6 @@ yelp_search_entry_class_init (YelpSearchEntryClass *klass) G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); - g_type_class_add_private ((GObjectClass *) klass, - sizeof (YelpSearchEntryPrivate)); - completions = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref); } @@ -207,7 +203,8 @@ yelp_search_entry_init (YelpSearchEntry *entry) static void search_entry_constructed (GObject *object) { - YelpSearchEntryPrivate *priv = GET_PRIV (object); + YelpSearchEntryPrivate *priv = + yelp_search_entry_get_instance_private (YELP_SEARCH_ENTRY (object)); g_signal_connect (object, "activate", G_CALLBACK (entry_activate_cb), object); @@ -218,7 +215,8 @@ search_entry_constructed (GObject *object) static void search_entry_dispose (GObject *object) { - YelpSearchEntryPrivate *priv = GET_PRIV (object); + YelpSearchEntryPrivate *priv = + yelp_search_entry_get_instance_private (YELP_SEARCH_ENTRY (object)); if (priv->view) { g_object_unref (priv->view); @@ -236,7 +234,8 @@ search_entry_dispose (GObject *object) static void search_entry_finalize (GObject *object) { - YelpSearchEntryPrivate *priv = GET_PRIV (object); + YelpSearchEntryPrivate *priv = + yelp_search_entry_get_instance_private (YELP_SEARCH_ENTRY (object)); g_free (priv->completion_uri); @@ -249,7 +248,8 @@ search_entry_get_property (GObject *object, GValue *value, GParamSpec *pspec) { - YelpSearchEntryPrivate *priv = GET_PRIV (object); + YelpSearchEntryPrivate *priv = + yelp_search_entry_get_instance_private (YELP_SEARCH_ENTRY (object)); switch (prop_id) { case PROP_VIEW: @@ -270,7 +270,8 @@ search_entry_set_property (GObject *object, const GValue *value, GParamSpec *pspec) { - YelpSearchEntryPrivate *priv = GET_PRIV (object); + YelpSearchEntryPrivate *priv = + yelp_search_entry_get_instance_private (YELP_SEARCH_ENTRY (object)); switch (prop_id) { case PROP_VIEW: @@ -289,7 +290,7 @@ static void search_entry_search_activated (YelpSearchEntry *entry) { YelpUri *base, *uri; - YelpSearchEntryPrivate *priv = GET_PRIV (entry); + YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry); g_object_get (priv->view, "yelp-uri", &base, NULL); if (base == NULL) @@ -306,7 +307,7 @@ search_entry_bookmark_clicked (YelpSearchEntry *entry) { YelpUri *uri; gchar *doc_uri, *page_id; - YelpSearchEntryPrivate *priv = GET_PRIV (entry); + YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry); g_object_get (priv->view, "yelp-uri", &uri, @@ -337,7 +338,7 @@ static void search_entry_set_completion (YelpSearchEntry *entry, GtkTreeModel *model) { - YelpSearchEntryPrivate *priv = GET_PRIV (entry); + YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry); GList *cells; GtkCellRenderer *icon_cell, *bookmark_cell; @@ -401,7 +402,7 @@ cell_set_completion_bookmark_icon (GtkCellLayout *layout, GtkTreeIter *iter, YelpSearchEntry *entry) { - YelpSearchEntryPrivate *priv = GET_PRIV (entry); + YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry); if (priv->completion_uri) { gchar *page_id = NULL; @@ -555,7 +556,7 @@ entry_match_selected (GtkEntryCompletion *completion, YelpUri *base, *uri; gchar *page, *xref; gint flags; - YelpSearchEntryPrivate *priv = GET_PRIV (entry); + YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry); gtk_tree_model_get (model, iter, COMPLETION_COL_FLAGS, &flags, -1); if (flags & COMPLETION_FLAG_ACTIVATE_SEARCH) { @@ -590,7 +591,7 @@ view_loaded (YelpView *view, YelpUri *uri; gchar *doc_uri; GtkTreeModel *completion; - YelpSearchEntryPrivate *priv = GET_PRIV (entry); + YelpSearchEntryPrivate *priv = yelp_search_entry_get_instance_private (entry); YelpDocument *document = yelp_view_get_document (view); g_object_get (view, "yelp-uri", &uri, NULL); diff --git a/libyelp/yelp-settings.c b/libyelp/yelp-settings.c index 05bbfb31..38cb40f3 100644 --- a/libyelp/yelp-settings.c +++ b/libyelp/yelp-settings.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2004-2009 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2004-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -29,7 +29,7 @@ #include "yelp-settings.h" -struct _YelpSettingsPriv { +struct _YelpSettingsPrivate { GMutex mutex; gchar colors[YELP_SETTINGS_NUM_COLORS][8]; @@ -73,8 +73,7 @@ enum { static const gchar *icon_names[YELP_SETTINGS_NUM_ICONS]; -G_DEFINE_TYPE (YelpSettings, yelp_settings, G_TYPE_OBJECT) -#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_SETTINGS, YelpSettingsPriv)) +G_DEFINE_TYPE_WITH_PRIVATE (YelpSettings, yelp_settings, G_TYPE_OBJECT) static void yelp_settings_constructed (GObject *object); static void yelp_settings_finalize (GObject *object); @@ -210,8 +209,6 @@ yelp_settings_class_init (YelpSettingsClass *klass) 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); - - g_type_class_add_private (klass, sizeof (YelpSettingsPriv)); } static void @@ -219,7 +216,7 @@ yelp_settings_init (YelpSettings *settings) { gint i; - settings->priv = GET_PRIV (settings); + settings->priv = yelp_settings_get_instance_private (settings); g_mutex_init (&settings->priv->mutex); settings->priv->icon_size = 24; diff --git a/libyelp/yelp-settings.h b/libyelp/yelp-settings.h index 447cf4ec..84ced04f 100644 --- a/libyelp/yelp-settings.h +++ b/libyelp/yelp-settings.h @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2004-2009 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2004-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -32,13 +32,13 @@ G_BEGIN_DECLS #define YELP_IS_SETTINGS_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), YELP_TYPE_SETTINGS)) #define YELP_SETTINGS_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), YELP_TYPE_SETTINGS, YelpSettingsClass)) -typedef struct _YelpSettings YelpSettings; -typedef struct _YelpSettingsClass YelpSettingsClass; -typedef struct _YelpSettingsPriv YelpSettingsPriv; +typedef struct _YelpSettings YelpSettings; +typedef struct _YelpSettingsClass YelpSettingsClass; +typedef struct _YelpSettingsPrivate YelpSettingsPrivate; struct _YelpSettings { - GObject parent; - YelpSettingsPriv *priv; + GObject parent; + YelpSettingsPrivate *priv; }; struct _YelpSettingsClass { diff --git a/libyelp/yelp-simple-document.c b/libyelp/yelp-simple-document.c index 595efa83..735e1828 100644 --- a/libyelp/yelp-simple-document.c +++ b/libyelp/yelp-simple-document.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2003-2009 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2003-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -39,7 +39,7 @@ struct _Request { gint idle_funcs; }; -struct _YelpSimpleDocumentPriv { +struct _YelpSimpleDocumentPrivate { GFile *file; GInputStream *stream; gchar *page_id; @@ -56,8 +56,7 @@ struct _YelpSimpleDocumentPriv { #define BUFFER_SIZE 4096 -G_DEFINE_TYPE (YelpSimpleDocument, yelp_simple_document, YELP_TYPE_DOCUMENT) -#define GET_PRIV(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_SIMPLE_DOCUMENT, YelpSimpleDocumentPriv)) +G_DEFINE_TYPE_WITH_PRIVATE (YelpSimpleDocument, yelp_simple_document, YELP_TYPE_DOCUMENT) static void yelp_simple_document_dispose (GObject *object); static void yelp_simple_document_finalize (GObject *object); @@ -107,14 +106,12 @@ yelp_simple_document_class_init (YelpSimpleDocumentClass *klass) document_class->read_contents = document_read_contents; document_class->finish_read = document_finish_read; document_class->get_mime_type = document_get_mime_type; - - g_type_class_add_private (klass, sizeof (YelpSimpleDocumentPriv)); } static void yelp_simple_document_init (YelpSimpleDocument *document) { - document->priv = GET_PRIV (document); + document->priv = yelp_simple_document_get_instance_private (document); document->priv->file = NULL; document->priv->stream = NULL; diff --git a/libyelp/yelp-simple-document.h b/libyelp/yelp-simple-document.h index 4ef78f66..de306f80 100644 --- a/libyelp/yelp-simple-document.h +++ b/libyelp/yelp-simple-document.h @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2003-2009 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2003-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -36,13 +36,13 @@ G_BEGIN_DECLS #define YELP_IS_SIMPLE_DOCUMENT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), YELP_TYPE_SIMPLE_DOCUMENT)) #define YELP_SIMPLE_DOCUMENT_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), YELP_TYPE_SIMPLE_DOCUMENT, YelpSimpleDocumentClass)) -typedef struct _YelpSimpleDocument YelpSimpleDocument; -typedef struct _YelpSimpleDocumentClass YelpSimpleDocumentClass; -typedef struct _YelpSimpleDocumentPriv YelpSimpleDocumentPriv; +typedef struct _YelpSimpleDocument YelpSimpleDocument; +typedef struct _YelpSimpleDocumentClass YelpSimpleDocumentClass; +typedef struct _YelpSimpleDocumentPrivate YelpSimpleDocumentPrivate; struct _YelpSimpleDocument { YelpDocument parent; - YelpSimpleDocumentPriv *priv; + YelpSimpleDocumentPrivate *priv; }; struct _YelpSimpleDocumentClass { diff --git a/libyelp/yelp-sqlite-storage.c b/libyelp/yelp-sqlite-storage.c index c872f729..42853fbe 100644 --- a/libyelp/yelp-sqlite-storage.c +++ b/libyelp/yelp-sqlite-storage.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2011 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2011-2020 Shaun McCance <shaunm@gnome.org> * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -66,13 +66,14 @@ enum { G_DEFINE_TYPE_WITH_CODE (YelpSqliteStorage, yelp_sqlite_storage, G_TYPE_OBJECT, G_IMPLEMENT_INTERFACE (YELP_TYPE_STORAGE, - yelp_sqlite_storage_iface_init)) -#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_SQLITE_STORAGE, YelpSqliteStoragePrivate)) + yelp_sqlite_storage_iface_init) + G_ADD_PRIVATE (YelpSqliteStorage) ) static void yelp_sqlite_storage_finalize (GObject *object) { - YelpSqliteStoragePrivate *priv = GET_PRIV (object); + YelpSqliteStoragePrivate *priv = + yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (object)); if (priv->filename) g_free (priv->filename); @@ -88,7 +89,7 @@ yelp_sqlite_storage_finalize (GObject *object) static void yelp_sqlite_storage_init (YelpSqliteStorage *storage) { - YelpSqliteStoragePrivate *priv = GET_PRIV (storage); + YelpSqliteStoragePrivate *priv = yelp_sqlite_storage_get_instance_private (storage); g_mutex_init (&priv->mutex); } @@ -97,7 +98,8 @@ yelp_sqlite_storage_constructed (GObject *object) { int status; sqlite3_stmt *stmt = NULL; - YelpSqliteStoragePrivate *priv = GET_PRIV (object); + YelpSqliteStoragePrivate *priv = + yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (object)); if (priv->filename != NULL) status = sqlite3_open (priv->filename, &(priv->db)); @@ -137,8 +139,6 @@ yelp_sqlite_storage_class_init (YelpSqliteStorageClass *klass) object_class->get_property = yelp_sqlite_storage_get_property; object_class->set_property = yelp_sqlite_storage_set_property; - g_type_class_add_private (klass, sizeof (YelpSqliteStoragePrivate)); - g_object_class_install_property (object_class, PROP_FILENAME, g_param_spec_string ("filename", @@ -176,7 +176,8 @@ yelp_sqlite_storage_get_property (GObject *object, GValue *value, GParamSpec *pspec) { - YelpSqliteStoragePrivate *priv = GET_PRIV (object); + YelpSqliteStoragePrivate *priv = + yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (object)); switch (prop_id) { case PROP_FILENAME: @@ -194,7 +195,8 @@ yelp_sqlite_storage_set_property (GObject *object, const GValue *value, GParamSpec *pspec) { - YelpSqliteStoragePrivate *priv = GET_PRIV (object); + YelpSqliteStoragePrivate *priv = + yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (object)); switch (prop_id) { case PROP_FILENAME: @@ -218,7 +220,8 @@ yelp_sqlite_storage_update (YelpStorage *storage, const gchar *text) { sqlite3_stmt *stmt = NULL; - YelpSqliteStoragePrivate *priv = GET_PRIV (storage); + YelpSqliteStoragePrivate *priv = + yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (storage)); g_mutex_lock (&priv->mutex); @@ -256,7 +259,9 @@ yelp_sqlite_storage_search (YelpStorage *storage, sqlite3_stmt *stmt = NULL; GVariantBuilder builder; GVariant *ret; - YelpSqliteStoragePrivate *priv = GET_PRIV (storage); + YelpSqliteStoragePrivate *priv = + yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (storage)); + g_mutex_lock (&priv->mutex); @@ -290,7 +295,8 @@ yelp_sqlite_storage_get_root_title (YelpStorage *storage, { gchar *ret = NULL; sqlite3_stmt *stmt = NULL; - YelpSqliteStoragePrivate *priv = GET_PRIV (storage); + YelpSqliteStoragePrivate *priv = + yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (storage)); g_mutex_lock (&priv->mutex); @@ -313,7 +319,8 @@ yelp_sqlite_storage_set_root_title (YelpStorage *storage, const gchar *title) { sqlite3_stmt *stmt = NULL; - YelpSqliteStoragePrivate *priv = GET_PRIV (storage); + YelpSqliteStoragePrivate *priv = + yelp_sqlite_storage_get_instance_private (YELP_SQLITE_STORAGE (storage)); g_mutex_lock (&priv->mutex); diff --git a/libyelp/yelp-transform.c b/libyelp/yelp-transform.c index 54f56116..0107db9a 100644 --- a/libyelp/yelp-transform.c +++ b/libyelp/yelp-transform.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2003-2009 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2003-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -85,9 +85,6 @@ enum { }; static gint signals[LAST_SIGNAL] = { 0 }; -G_DEFINE_TYPE (YelpTransform, yelp_transform, G_TYPE_OBJECT) -#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_TRANSFORM, YelpTransformPrivate)) - typedef struct _YelpTransformPrivate YelpTransformPrivate; struct _YelpTransformPrivate { xmlDocPtr input; @@ -112,12 +109,14 @@ struct _YelpTransformPrivate { GError *error; }; +G_DEFINE_TYPE_WITH_PRIVATE (YelpTransform, yelp_transform, G_TYPE_OBJECT) + /******************************************************************************/ static void yelp_transform_init (YelpTransform *transform) { - YelpTransformPrivate *priv = GET_PRIV (transform); + YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform); priv->queue = g_async_queue_new_full (g_free); priv->chunks = g_hash_table_new_full (g_str_hash, g_str_equal, @@ -156,8 +155,6 @@ yelp_transform_class_init (YelpTransformClass *klass) g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); - g_type_class_add_private (klass, sizeof (YelpTransformPrivate)); - g_object_class_install_property (object_class, PROP_STYLESHEET, g_param_spec_string ("stylesheet", @@ -172,7 +169,8 @@ yelp_transform_class_init (YelpTransformClass *klass) static void yelp_transform_dispose (GObject *object) { - YelpTransformPrivate *priv = GET_PRIV (object); + YelpTransformPrivate *priv = + yelp_transform_get_instance_private (YELP_TRANSFORM (object)); debug_print (DB_FUNCTION, "entering\n"); @@ -214,7 +212,8 @@ yelp_transform_dispose (GObject *object) static void yelp_transform_finalize (GObject *object) { - YelpTransformPrivate *priv = GET_PRIV (object); + YelpTransformPrivate *priv = + yelp_transform_get_instance_private (YELP_TRANSFORM (object)); GHashTableIter iter; gpointer chunk; @@ -240,7 +239,8 @@ yelp_transform_get_property (GObject *object, GValue *value, GParamSpec *pspec) { - YelpTransformPrivate *priv = GET_PRIV (object); + YelpTransformPrivate *priv = + yelp_transform_get_instance_private (YELP_TRANSFORM (object)); switch (prop_id) { @@ -259,7 +259,8 @@ yelp_transform_set_property (GObject *object, const GValue *value, GParamSpec *pspec) { - YelpTransformPrivate *priv = GET_PRIV (object); + YelpTransformPrivate *priv = + yelp_transform_get_instance_private (YELP_TRANSFORM (object)); switch (prop_id) { @@ -288,7 +289,7 @@ yelp_transform_start (YelpTransform *transform, xmlDocPtr auxiliary, const gchar * const *params) { - YelpTransformPrivate *priv = GET_PRIV (transform); + YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform); priv->input = document; priv->aux = auxiliary; @@ -310,7 +311,7 @@ gchar * yelp_transform_take_chunk (YelpTransform *transform, const gchar *chunk_id) { - YelpTransformPrivate *priv = GET_PRIV (transform); + YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform); gchar *buf; g_mutex_lock (&priv->mutex); @@ -328,7 +329,7 @@ yelp_transform_take_chunk (YelpTransform *transform, void yelp_transform_cancel (YelpTransform *transform) { - YelpTransformPrivate *priv = GET_PRIV (transform); + YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform); g_mutex_lock (&priv->mutex); if (priv->running) { priv->cancelled = TRUE; @@ -341,7 +342,7 @@ yelp_transform_cancel (YelpTransform *transform) GError * yelp_transform_get_error (YelpTransform *transform) { - YelpTransformPrivate *priv = GET_PRIV (transform); + YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform); GError *ret = NULL; g_mutex_lock (&priv->mutex); @@ -357,7 +358,7 @@ yelp_transform_get_error (YelpTransform *transform) static void transform_run (YelpTransform *transform) { - YelpTransformPrivate *priv = GET_PRIV (transform); + YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform); debug_print (DB_FUNCTION, "entering\n"); @@ -424,7 +425,7 @@ transform_run (YelpTransform *transform) static gboolean transform_chunk (YelpTransform *transform) { - YelpTransformPrivate *priv = GET_PRIV (transform); + YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform); gchar *chunk_id; debug_print (DB_FUNCTION, "entering\n"); @@ -446,7 +447,7 @@ transform_chunk (YelpTransform *transform) static gboolean transform_error (YelpTransform *transform) { - YelpTransformPrivate *priv = GET_PRIV (transform); + YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform); debug_print (DB_FUNCTION, "entering\n"); @@ -463,7 +464,7 @@ transform_error (YelpTransform *transform) static gboolean transform_final (YelpTransform *transform) { - YelpTransformPrivate *priv = GET_PRIV (transform); + YelpTransformPrivate *priv = yelp_transform_get_instance_private (transform); debug_print (DB_FUNCTION, "entering\n"); @@ -506,7 +507,7 @@ xslt_yelp_document (xsltTransformContextPtr ctxt, return; transform = YELP_TRANSFORM (ctxt->_private); - priv = GET_PRIV (transform); + priv = yelp_transform_get_instance_private (transform); page_id = xsltEvalAttrValueTemplate (ctxt, inst, (const xmlChar *) "href", @@ -590,7 +591,7 @@ xslt_yelp_aux (xmlXPathParserContextPtr ctxt, int nargs) tctxt = xsltXPathGetTransformContext (ctxt); transform = YELP_TRANSFORM (tctxt->_private); - priv = GET_PRIV (transform); + priv = yelp_transform_get_instance_private (transform); priv->aux_xslt = xsltNewDocument (tctxt, priv->aux); diff --git a/libyelp/yelp-uri.c b/libyelp/yelp-uri.c index 123983cb..ffc49cc9 100644 --- a/libyelp/yelp-uri.c +++ b/libyelp/yelp-uri.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2009 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2009-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -61,9 +61,6 @@ static void resolve_gfile (YelpUri *uri, static gboolean is_man_path (const gchar *uri, const gchar *encoding); -G_DEFINE_TYPE (YelpUri, yelp_uri, G_TYPE_OBJECT) -#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_URI, YelpUriPrivate)) - typedef struct _YelpUriPrivate YelpUriPrivate; struct _YelpUriPrivate { GThread *resolver; @@ -92,6 +89,8 @@ enum { }; static guint uri_signals[LAST_SIGNAL] = {0,}; +G_DEFINE_TYPE_WITH_PRIVATE (YelpUri, yelp_uri, G_TYPE_OBJECT) + /******************************************************************************/ static const gchar *mancats[] = { @@ -135,14 +134,12 @@ yelp_uri_class_init (YelpUriClass *klass) 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); - - g_type_class_add_private (klass, sizeof (YelpUriPrivate)); } static void yelp_uri_init (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); priv->query = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); @@ -152,7 +149,7 @@ yelp_uri_init (YelpUri *uri) static void yelp_uri_dispose (GObject *object) { - YelpUriPrivate *priv = GET_PRIV (object); + YelpUriPrivate *priv = yelp_uri_get_instance_private (YELP_URI (object)); if (priv->gfile) { g_object_unref (priv->gfile); @@ -175,7 +172,7 @@ yelp_uri_dispose (GObject *object) static void yelp_uri_finalize (GObject *object) { - YelpUriPrivate *priv = GET_PRIV (object); + YelpUriPrivate *priv = yelp_uri_get_instance_private (YELP_URI (object)); g_free (priv->docuri); g_free (priv->fulluri); @@ -203,7 +200,7 @@ yelp_uri_new_relative (YelpUri *base, const gchar *arg) uri = (YelpUri *) g_object_new (YELP_TYPE_URI, NULL); - priv = GET_PRIV (uri); + priv = yelp_uri_get_instance_private (uri); priv->doctype = YELP_URI_DOCUMENT_TYPE_UNRESOLVED; if (base) priv->res_base = g_object_ref (base); @@ -222,7 +219,7 @@ yelp_uri_new_search (YelpUri *base, uri = (YelpUri *) g_object_new (YELP_TYPE_URI, NULL); - priv = GET_PRIV (uri); + priv = yelp_uri_get_instance_private (uri); priv->doctype = YELP_URI_DOCUMENT_TYPE_UNRESOLVED; if (base) priv->res_base = g_object_ref (base); @@ -238,7 +235,7 @@ yelp_uri_new_search (YelpUri *base, void yelp_uri_resolve (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); if (priv->res_base && !yelp_uri_is_resolved (priv->res_base)) { g_signal_connect_swapped (priv->res_base, "resolved", @@ -254,7 +251,7 @@ yelp_uri_resolve (YelpUri *uri) void yelp_uri_resolve_sync (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); if (priv->doctype != YELP_URI_DOCUMENT_TYPE_UNRESOLVED) return; @@ -293,7 +290,7 @@ yelp_uri_resolve_sync (YelpUri *uri) static void resolve_start (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); if (priv->resolver == NULL) { g_object_ref (uri); @@ -306,7 +303,7 @@ resolve_start (YelpUri *uri) static void resolve_sync (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); if (g_str_has_prefix (priv->res_arg, "ghelp:") || g_str_has_prefix (priv->res_arg, "gnome-help:")) { @@ -333,7 +330,7 @@ resolve_sync (YelpUri *uri) priv->tmptype = YELP_URI_DOCUMENT_TYPE_ERROR; return; } - base_priv = GET_PRIV (priv->res_base); + base_priv = yelp_uri_get_instance_private (priv->res_base); switch (base_priv->doctype) { case YELP_URI_DOCUMENT_TYPE_UNRESOLVED: break; @@ -391,7 +388,7 @@ resolve_async (YelpUri *uri) static gboolean resolve_final (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); priv->resolver = NULL; @@ -420,21 +417,21 @@ resolve_final (YelpUri *uri) gboolean yelp_uri_is_resolved (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); return priv->doctype != YELP_URI_DOCUMENT_TYPE_UNRESOLVED; } YelpUriDocumentType yelp_uri_get_document_type (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); return priv->doctype; } gchar * yelp_uri_get_document_uri (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED) return NULL; @@ -452,7 +449,7 @@ yelp_uri_get_document_uri (YelpUri *uri) gchar * yelp_uri_get_canonical_uri (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED) return NULL; return g_strdup (priv->fulluri); @@ -461,7 +458,7 @@ yelp_uri_get_canonical_uri (YelpUri *uri) GFile * yelp_uri_get_file (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED) return NULL; return priv->gfile ? g_object_ref (priv->gfile) : NULL; @@ -470,7 +467,7 @@ yelp_uri_get_file (YelpUri *uri) gchar ** yelp_uri_get_search_path (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED) return NULL; return g_strdupv (priv->search_path); @@ -479,7 +476,7 @@ yelp_uri_get_search_path (YelpUri *uri) gchar * yelp_uri_get_page_id (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED) return NULL; return g_strdup (priv->page_id); @@ -488,7 +485,7 @@ yelp_uri_get_page_id (YelpUri *uri) gchar * yelp_uri_get_frag_id (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); if (priv->doctype == YELP_URI_DOCUMENT_TYPE_UNRESOLVED) return NULL; return g_strdup (priv->frag_id); @@ -498,7 +495,7 @@ gchar * yelp_uri_get_query (YelpUri *uri, const gchar *key) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); const gchar *ret = g_hash_table_lookup (priv->query, key); if (ret) return g_strdup (ret); @@ -512,7 +509,7 @@ gchar * yelp_uri_locate_file_uri (YelpUri *uri, const gchar *filename) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); GFile *gfile; gchar *fullpath; gchar *returi = NULL; @@ -546,7 +543,7 @@ yelp_uri_locate_file_uri (YelpUri *uri, static void resolve_file_uri (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); gchar *uristr; const gchar *hash = strchr (priv->res_arg, '#'); @@ -566,7 +563,7 @@ static void resolve_file_path (YelpUri *uri) { YelpUriPrivate *base_priv = NULL; - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); gchar *path; const gchar *hash; @@ -578,7 +575,7 @@ resolve_file_path (YelpUri *uri) } if (priv->res_base) - base_priv = GET_PRIV (priv->res_base); + base_priv = yelp_uri_get_instance_private (priv->res_base); hash = strchr (priv->res_arg, '#'); if (hash) { @@ -632,7 +629,7 @@ resolve_data_dirs (YelpUri *ret, const gchar * const *langs = g_get_language_names (); /* The strings are still owned by GLib; we just own the array. */ gchar **datadirs; - YelpUriPrivate *priv = GET_PRIV (ret); + YelpUriPrivate *priv = yelp_uri_get_instance_private (ret); gchar *filename = NULL; gchar **searchpath = NULL; gint searchi, searchmax; @@ -727,7 +724,7 @@ resolve_data_dirs (YelpUri *ret, static void build_ghelp_fulluri (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); g_assert (priv->tmptype != YELP_URI_DOCUMENT_TYPE_UNRESOLVED); g_assert (priv->docuri != NULL); @@ -746,7 +743,7 @@ resolve_ghelp_uri (YelpUri *uri) /* ghelp:/path/to/file * ghelp:document[/file][?page][#frag] */ - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); gchar *document, *slash, *query, *hash; gchar *colon, *c; /* do not free */ @@ -849,7 +846,7 @@ resolve_help_uri (YelpUri *uri) { /* help:document[/page][?query][#frag] */ - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); gchar *document, *slash, *query, *hash; gchar *colon, *c; /* do not free */ @@ -937,7 +934,7 @@ resolve_help_uri (YelpUri *uri) static void resolve_help_list_uri (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); priv->docuri = g_strdup ("help-list:"); priv->fulluri = g_strdup (priv->res_arg); priv->page_id = g_strdup ("index"); @@ -999,7 +996,7 @@ find_man_path (gchar* name, gchar* section) static void build_man_uris (YelpUri *uri, const char *name, const char *section) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); g_assert (priv->tmptype == YELP_URI_DOCUMENT_TYPE_MAN); priv->docuri = g_strdup ("man:"); @@ -1016,7 +1013,7 @@ build_man_uris (YelpUri *uri, const char *name, const char *section) static void resolve_man_uri (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); /* man:/path/to/file * man:name(section) * man:name.section @@ -1104,7 +1101,7 @@ resolve_man_uri (YelpUri *uri) static void build_info_uris (YelpUri *uri, const char *name, const char *section) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); g_assert (priv->tmptype == YELP_URI_DOCUMENT_TYPE_INFO); priv->docuri = g_strconcat ("info:", name, NULL); @@ -1119,7 +1116,7 @@ build_info_uris (YelpUri *uri, const char *name, const char *section) static void resolve_info_uri (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); /* info:/path/to/file * info:name#node * info:name @@ -1252,9 +1249,9 @@ resolve_info_uri (YelpUri *uri) static void resolve_xref_uri (YelpUri *uri) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); const gchar *arg = priv->res_arg + 5; - YelpUriPrivate *base_priv = GET_PRIV (priv->res_base); + YelpUriPrivate *base_priv = yelp_uri_get_instance_private (priv->res_base); priv->tmptype = base_priv->doctype; priv->gfile = g_object_ref (base_priv->gfile); @@ -1324,7 +1321,7 @@ resolve_xref_uri (YelpUri *uri) static void resolve_page_and_frag (YelpUri *uri, const gchar *arg) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); gchar *hash; if (!arg || arg[0] == '\0') @@ -1344,7 +1341,7 @@ resolve_page_and_frag (YelpUri *uri, const gchar *arg) static void resolve_gfile (YelpUri *uri, const gchar *query, const gchar *hash) { - YelpUriPrivate *priv = GET_PRIV (uri); + YelpUriPrivate *priv = yelp_uri_get_instance_private (uri); GFileInfo *info; GError *error = NULL; diff --git a/libyelp/yelp-view.c b/libyelp/yelp-view.c index f95fa1a1..1aff9bcf 100644 --- a/libyelp/yelp-view.c +++ b/libyelp/yelp-view.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2009 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2009-2020 Shaun McCance <shaunm@gnome.org> * Copyright (C) 2014 Igalia S.L. * * This program is free software; you can redistribute it and/or @@ -141,9 +141,6 @@ enum { }; static gint signals[LAST_SIGNAL] = { 0 }; -G_DEFINE_TYPE (YelpView, yelp_view, WEBKIT_TYPE_WEB_VIEW) -#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_VIEW, YelpViewPrivate)) - static WebKitSettings * yelp_view_get_global_settings (void) { @@ -243,6 +240,8 @@ enum { TARGET_URI_LIST }; +G_DEFINE_TYPE_WITH_PRIVATE (YelpView, yelp_view, WEBKIT_TYPE_WEB_VIEW) + static void yelp_view_init (YelpView *view) { @@ -299,7 +298,7 @@ yelp_view_init (YelpView *view) } }; - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); priv->cancellable = NULL; @@ -360,7 +359,7 @@ static void yelp_view_constructed (GObject *object) { YelpView *view = YELP_VIEW (object); - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); YelpSettings *settings = yelp_settings_get_default (); G_OBJECT_CLASS (yelp_view_parent_class)->constructed (object); @@ -380,7 +379,7 @@ yelp_view_constructed (GObject *object) static void yelp_view_dispose (GObject *object) { - YelpViewPrivate *priv = GET_PRIV (object); + YelpViewPrivate *priv = yelp_view_get_instance_private (YELP_VIEW (object)); view_clear_load (YELP_VIEW (object)); @@ -431,7 +430,7 @@ yelp_view_dispose (GObject *object) static void yelp_view_finalize (GObject *object) { - YelpViewPrivate *priv = GET_PRIV (object); + YelpViewPrivate *priv = yelp_view_get_instance_private (YELP_VIEW (object)); g_free (priv->popup_link_uri); g_free (priv->popup_link_text); @@ -500,8 +499,6 @@ yelp_view_class_init (YelpViewClass *klass) g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); - g_type_class_add_private (klass, sizeof (YelpViewPrivate)); - g_object_class_install_property (object_class, PROP_URI, g_param_spec_object ("yelp-uri", @@ -573,7 +570,7 @@ yelp_view_get_property (GObject *object, GValue *value, GParamSpec *pspec) { - YelpViewPrivate *priv = GET_PRIV (object); + YelpViewPrivate *priv = yelp_view_get_instance_private (YELP_VIEW (object)); switch (prop_id) { @@ -614,7 +611,7 @@ yelp_view_set_property (GObject *object, GParamSpec *pspec) { YelpUri *uri; - YelpViewPrivate *priv = GET_PRIV (object); + YelpViewPrivate *priv = yelp_view_get_instance_private (YELP_VIEW (object)); switch (prop_id) { @@ -655,7 +652,7 @@ void yelp_view_load_uri (YelpView *view, YelpUri *uri) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); g_object_set (view, "state", YELP_VIEW_STATE_LOADING, NULL); @@ -672,7 +669,7 @@ yelp_view_load_document (YelpView *view, YelpDocument *document) { GParamSpec *spec; - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); g_return_if_fail (yelp_uri_is_resolved (uri)); @@ -695,7 +692,7 @@ yelp_view_load_document (YelpView *view, YelpDocument * yelp_view_get_document (YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); return priv->document; } @@ -703,7 +700,7 @@ void yelp_view_register_actions (YelpView *view, GActionMap *map) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); g_action_map_add_action (map, G_ACTION (priv->print_action)); g_action_map_add_action (map, G_ACTION (priv->back_action)); g_action_map_add_action (map, G_ACTION (priv->forward_action)); @@ -717,7 +714,7 @@ static void yelp_view_resolve_uri (YelpView *view, YelpUri *uri) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); if (yelp_uri_is_resolved (uri)) { uri_resolved (uri, view); @@ -880,7 +877,7 @@ yelp_view_add_link_action (YelpView *view, gpointer data) { YelpActionEntry *entry; - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); entry = g_new0 (YelpActionEntry, 1); entry->action = g_object_ref (action); @@ -893,7 +890,7 @@ yelp_view_add_link_action (YelpView *view, YelpUri * yelp_view_get_active_link_uri (YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); YelpUri *uri; uri = yelp_uri_new_relative (priv->uri, priv->popup_link_uri); @@ -904,7 +901,7 @@ yelp_view_get_active_link_uri (YelpView *view) gchar * yelp_view_get_active_link_text (YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); return g_strdup (priv->popup_link_text); } @@ -992,7 +989,7 @@ view_install_installed (GDBusConnection *connection, } else if (info->uri) { gchar *struri, *docuri; - YelpViewPrivate *priv = GET_PRIV (info->view); + YelpViewPrivate *priv = yelp_view_get_instance_private (info->view); docuri = yelp_uri_get_document_uri (priv->uri); if (g_str_equal (docuri, info->uri)) { struri = yelp_uri_get_canonical_uri (priv->uri); @@ -1015,7 +1012,7 @@ view_install_uri (YelpView *view, GVariantBuilder *strv; YelpInstallInfo *info; guint32 xid = 0; - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); GtkWidget *gtkwin; GdkWindow *gdkwin; /* do not free */ @@ -1129,7 +1126,7 @@ static void popup_open_link (GtkAction *action, YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); YelpUri *uri; uri = yelp_uri_new_relative (priv->uri, priv->popup_link_uri); @@ -1148,7 +1145,7 @@ static void popup_open_link_new (GtkAction *action, YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); YelpUri *uri; uri = yelp_uri_new_relative (priv->uri, priv->popup_link_uri); @@ -1167,7 +1164,7 @@ static void popup_copy_link (GtkAction *action, YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); gtk_clipboard_set_text (gtk_widget_get_clipboard (GTK_WIDGET (view), GDK_SELECTION_CLIPBOARD), priv->popup_link_uri, -1); @@ -1210,7 +1207,7 @@ popup_save_image (GtkAction *action, GtkWidget *dialog, *window; gchar *basename; gint res; - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); for (window = gtk_widget_get_parent (GTK_WIDGET (view)); window && !GTK_IS_WINDOW (window); @@ -1265,7 +1262,7 @@ popup_send_image (GtkAction *action, GAppInfo *app; GAppLaunchContext *context; GError *error = NULL; - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); command = g_strdup_printf ("%s %s", nautilus_sendto, priv->popup_image_uri); context = (GAppLaunchContext *) gdk_display_get_app_launch_context (gtk_widget_get_display (GTK_WIDGET (view))); @@ -1291,7 +1288,7 @@ static void popup_copy_code (GtkAction *action, YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); GtkClipboard *clipboard; if (!priv->popup_code_text) @@ -1305,7 +1302,7 @@ static void popup_save_code (GtkAction *action, YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); GtkWidget *dialog, *window; gint res; @@ -1390,7 +1387,7 @@ view_populate_context_menu (YelpView *view, WebKitHitTestResult *hit_test_result, gpointer user_data) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); WebKitContextMenuItem *item; GtkAction *action; GVariant *dom_info_variant; @@ -1597,7 +1594,7 @@ view_policy_decision_requested (YelpView *view, WebKitPolicyDecisionType type, gpointer user_data) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); WebKitNavigationAction *action; WebKitURIRequest *request; gchar *fixed_uri; @@ -1639,7 +1636,7 @@ view_load_status_changed (WebKitWebView *view, WebKitLoadEvent load_event, gpointer user_data) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (YELP_VIEW (view)); if (priv->state == YELP_VIEW_STATE_ERROR) return; @@ -1731,7 +1728,7 @@ view_print_action (GAction *action, GVariant *parameter, YelpView *view) GtkWidget *window; WebKitPrintOperation *print_operation; GtkPrintSettings *settings; - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); window = gtk_widget_get_toplevel (GTK_WIDGET (view)); @@ -1762,7 +1759,7 @@ view_history_action (GAction *action, static void view_history_changed (YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); WebKitWebView *web_view = WEBKIT_WEB_VIEW (view); g_simple_action_set_enabled (priv->back_action, webkit_web_view_can_go_back (web_view)); @@ -1774,7 +1771,7 @@ view_navigation_action (GAction *action, GVariant *parameter, YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); gchar *page_id, *new_id, *xref; YelpUri *new_uri; @@ -1803,7 +1800,7 @@ view_navigation_action (GAction *action, static void view_clear_load (YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); if (priv->resolve_uri != NULL) { if (priv->uri_resolved != 0) { @@ -1860,7 +1857,7 @@ fix_docbook_uri (YelpUri *docbook_uri, YelpDocument* document) static void view_load_page (YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); gchar *uri_str, *tmp_uri; g_return_if_fail (priv->cancellable == NULL); @@ -1948,7 +1945,7 @@ static void view_show_error_page (YelpView *view, GError *error) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); YelpSettings *settings = yelp_settings_get_default (); gchar *page, *title = NULL, *title_m, *content_beg, *content_end; gchar *textcolor, *bgcolor, *noteborder, *notebg, *titlecolor, *noteicon, *linkcolor; @@ -2105,7 +2102,7 @@ static void uri_resolved (YelpUri *uri, YelpView *view) { - YelpViewPrivate *priv = GET_PRIV (view); + YelpViewPrivate *priv = yelp_view_get_instance_private (view); YelpUriDocumentType doctype; YelpDocument *document; GError *error = NULL; diff --git a/src/yelp-application.c b/src/yelp-application.c index 18d79029..b284757e 100644 --- a/src/yelp-application.c +++ b/src/yelp-application.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2010 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2010-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -97,11 +97,6 @@ static void bookmarks_changed (GSettings *s static gboolean window_resized (YelpWindow *window, YelpApplication *app); -G_DEFINE_TYPE_WITH_CODE (YelpApplication, yelp_application, GTK_TYPE_APPLICATION, - G_IMPLEMENT_INTERFACE (YELP_TYPE_BOOKMARKS, - yelp_application_iface_init)) -#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_APPLICATION, YelpApplicationPrivate)) - typedef struct _YelpApplicationPrivate YelpApplicationPrivate; struct _YelpApplicationPrivate { GSList *windows; @@ -116,10 +111,15 @@ struct _YelpApplicationPrivate { GHashTable *docsettings; }; +G_DEFINE_TYPE_WITH_CODE (YelpApplication, yelp_application, GTK_TYPE_APPLICATION, + G_IMPLEMENT_INTERFACE (YELP_TYPE_BOOKMARKS, + yelp_application_iface_init) + G_ADD_PRIVATE (YelpApplication) ) + static void yelp_application_init (YelpApplication *app) { - YelpApplicationPrivate *priv = GET_PRIV (app); + YelpApplicationPrivate *priv = yelp_application_get_instance_private (app); priv->docsettings = g_hash_table_new_full (g_str_hash, g_str_equal, (GDestroyNotify) g_free, (GDestroyNotify) g_object_unref); @@ -173,8 +173,6 @@ yelp_application_class_init (YelpApplicationClass *klass) object_class->dispose = yelp_application_dispose; object_class->finalize = yelp_application_finalize; - - g_type_class_add_private (klass, sizeof (YelpApplicationPrivate)); } static void @@ -188,7 +186,7 @@ yelp_application_iface_init (YelpBookmarksInterface *iface) static void yelp_application_dispose (GObject *object) { - YelpApplicationPrivate *priv = GET_PRIV (object); + YelpApplicationPrivate *priv = yelp_application_get_instance_private (YELP_APPLICATION (object)); if (priv->show_cursor_action) { g_object_unref (priv->show_cursor_action); @@ -216,7 +214,7 @@ yelp_application_dispose (GObject *object) static void yelp_application_finalize (GObject *object) { - YelpApplicationPrivate *priv = GET_PRIV (object); + YelpApplicationPrivate *priv = yelp_application_get_instance_private (YELP_APPLICATION (object)); g_hash_table_destroy (priv->windows_by_document); g_hash_table_destroy (priv->docsettings); @@ -263,7 +261,7 @@ static void yelp_application_startup (GApplication *application) { YelpApplication *app = YELP_APPLICATION (application); - YelpApplicationPrivate *priv = GET_PRIV (app); + YelpApplicationPrivate *priv = yelp_application_get_instance_private (app); gchar *keyfile; YelpSettings *settings; @@ -323,7 +321,7 @@ application_adjust_font (GAction *action, GVariant *parameter, YelpApplication *app) { - YelpApplicationPrivate *priv = GET_PRIV (app); + YelpApplicationPrivate *priv = yelp_application_get_instance_private (app); gint adjustment = g_settings_get_int (priv->gsettings, "font-adjustment"); gint adjust = g_str_equal (g_action_get_name (action), "yelp-application-larger-text") ? 1 : -1; @@ -336,7 +334,7 @@ application_adjust_font (GAction *action, static void application_set_font_sensitivity (YelpApplication *app) { - YelpApplicationPrivate *priv = GET_PRIV (app); + YelpApplicationPrivate *priv = yelp_application_get_instance_private (app); YelpSettings *settings = yelp_settings_get_default (); GParamSpec *spec = g_object_class_find_property ((GObjectClass *) YELP_SETTINGS_GET_CLASS (settings), "font-adjustment"); @@ -457,7 +455,7 @@ application_uri_resolved (YelpUri *uri, YelpWindow *window; gchar *doc_uri; GdkWindow *gdk_window; - YelpApplicationPrivate *priv = GET_PRIV (data->app); + YelpApplicationPrivate *priv = yelp_application_get_instance_private (data->app); GFile *gfile; /* We held the application while resolving the URI, so unhold now. */ @@ -545,7 +543,7 @@ application_window_deleted (YelpWindow *window, YelpApplication *app) { gchar *doc_uri; /* owned by windows_by_document */ - YelpApplicationPrivate *priv = GET_PRIV (app); + YelpApplicationPrivate *priv = yelp_application_get_instance_private (app); priv->windows = g_slist_remove (priv->windows, window); doc_uri = g_object_get_data (G_OBJECT (window), "doc_uri"); @@ -558,7 +556,7 @@ application_window_deleted (YelpWindow *window, GSettings * application_get_doc_settings (YelpApplication *app, const gchar *doc_uri) { - YelpApplicationPrivate *priv = GET_PRIV (app); + YelpApplicationPrivate *priv = yelp_application_get_instance_private (app); GSettings *settings = g_hash_table_lookup (priv->docsettings, doc_uri); if (settings == NULL) { gchar *tmp, *key, *settings_path; @@ -756,7 +754,7 @@ static gboolean window_resized (YelpWindow *window, YelpApplication *app) { - YelpApplicationPrivate *priv = GET_PRIV (app); + YelpApplicationPrivate *priv = yelp_application_get_instance_private (app); YelpUri *uri; gchar *doc_uri; GSettings *settings; diff --git a/src/yelp-window.c b/src/yelp-window.c index e5abd635..a648b6ef 100644 --- a/src/yelp-window.c +++ b/src/yelp-window.c @@ -1,6 +1,6 @@ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* - * Copyright (C) 2010 Shaun McCance <shaunm@gnome.org> + * Copyright (C) 2010-2020 Shaun McCance <shaunm@gnome.org> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -151,9 +151,6 @@ enum { static guint signals[LAST_SIGNAL] = { 0 }; -G_DEFINE_TYPE (YelpWindow, yelp_window, GTK_TYPE_APPLICATION_WINDOW) -#define GET_PRIV(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), YELP_TYPE_WINDOW, YelpWindowPrivate)) - typedef struct _YelpWindowPrivate YelpWindowPrivate; struct _YelpWindowPrivate { YelpApplication *application; @@ -188,6 +185,8 @@ struct _YelpWindowPrivate { gboolean use_header; }; +G_DEFINE_TYPE_WITH_PRIVATE (YelpWindow, yelp_window, GTK_TYPE_APPLICATION_WINDOW) + static void yelp_window_init (YelpWindow *window) { @@ -222,14 +221,12 @@ yelp_window_class_init (YelpWindowClass *klass) 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); - - g_type_class_add_private (klass, sizeof (YelpWindowPrivate)); } static void yelp_window_dispose (GObject *object) { - YelpWindowPrivate *priv = GET_PRIV (object); + YelpWindowPrivate *priv = yelp_window_get_instance_private (YELP_WINDOW (object)); if (priv->bookmarks_changed) { g_signal_handler_disconnect (priv->application, priv->bookmarks_changed); @@ -247,7 +244,7 @@ yelp_window_dispose (GObject *object) static void yelp_window_finalize (GObject *object) { - YelpWindowPrivate *priv = GET_PRIV (object); + YelpWindowPrivate *priv = yelp_window_get_instance_private (YELP_WINDOW (object)); g_free (priv->doc_uri); G_OBJECT_CLASS (yelp_window_parent_class)->finalize (object); } @@ -258,7 +255,7 @@ yelp_window_get_property (GObject *object, GValue *value, GParamSpec *pspec) { - YelpWindowPrivate *priv = GET_PRIV (object); + YelpWindowPrivate *priv = yelp_window_get_instance_private (YELP_WINDOW (object)); switch (prop_id) { case PROP_APPLICATION: g_value_set_object (value, priv->application); @@ -275,7 +272,7 @@ yelp_window_set_property (GObject *object, const GValue *value, GParamSpec *pspec) { - YelpWindowPrivate *priv = GET_PRIV (object); + YelpWindowPrivate *priv = yelp_window_get_instance_private (YELP_WINDOW (object)); switch (prop_id) { case PROP_APPLICATION: priv->application = g_value_get_object (value); @@ -295,7 +292,7 @@ window_construct (YelpWindow *window) GtkCssProvider *css; GtkSizeGroup *size_group; GMenu *menu, *section; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); GtkStyleContext *headerbar_context; const GActionEntry entries[] = { @@ -564,7 +561,7 @@ void yelp_window_load_uri (YelpWindow *window, YelpUri *uri) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); yelp_view_load_uri (priv->view, uri); } @@ -573,7 +570,7 @@ YelpUri * yelp_window_get_uri (YelpWindow *window) { YelpUri *uri; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); g_object_get (G_OBJECT (priv->view), "yelp-uri", &uri, NULL); return uri; } @@ -583,7 +580,7 @@ yelp_window_get_geometry (YelpWindow *window, gint *width, gint *height) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); *width = priv->width; *height = priv->height; } @@ -598,7 +595,7 @@ action_new_window (GSimpleAction *action, YelpUri *yuri; gchar *uri = NULL; YelpWindow *window = YELP_WINDOW (userdata); - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); g_object_get (priv->view, "yelp-uri", &yuri, NULL); uri = yelp_uri_get_document_uri (yuri); @@ -622,7 +619,7 @@ action_search (GSimpleAction *action, GVariant *parameter, gpointer userdata) { - YelpWindowPrivate *priv = GET_PRIV (userdata); + YelpWindowPrivate *priv = yelp_window_get_instance_private (userdata); gtk_revealer_set_reveal_child (GTK_REVEALER (priv->find_bar), FALSE); gtk_search_bar_set_search_mode (GTK_SEARCH_BAR (priv->search_bar), TRUE); @@ -634,7 +631,7 @@ action_find (GSimpleAction *action, GVariant *parameter, gpointer userdata) { - YelpWindowPrivate *priv = GET_PRIV (userdata); + YelpWindowPrivate *priv = yelp_window_get_instance_private (userdata); gtk_search_bar_set_search_mode (GTK_SEARCH_BAR (priv->search_bar), FALSE); gtk_revealer_set_reveal_child (GTK_REVEALER (priv->find_bar), TRUE); @@ -646,7 +643,7 @@ action_go_all (GSimpleAction *action, GVariant *parameter, gpointer userdata) { - YelpWindowPrivate *priv = GET_PRIV (userdata); + YelpWindowPrivate *priv = yelp_window_get_instance_private (userdata); yelp_view_load (priv->view, "help-list:"); } @@ -655,7 +652,7 @@ action_ctrll (GSimpleAction *action, GVariant *parameter, gpointer userdata) { - YelpWindowPrivate *priv = GET_PRIV (userdata); + YelpWindowPrivate *priv = yelp_window_get_instance_private (userdata); YelpUri *yuri; gchar *uri = NULL; @@ -723,7 +720,7 @@ window_map_event (YelpWindow *window, GdkEvent *event, gpointer user_data) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); priv->configured = TRUE; return FALSE; } @@ -733,7 +730,7 @@ window_configure_event (YelpWindow *window, GdkEventConfigure *event, gpointer user_data) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); gboolean skip = TRUE; if (priv->width != event->width) { skip = FALSE; @@ -762,7 +759,7 @@ window_configure_event (YelpWindow *window, static gboolean window_resize_signal (YelpWindow *window) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); g_signal_emit (window, signals[RESIZE_EVENT], 0); priv->resize_signal = 0; return FALSE; @@ -773,7 +770,7 @@ window_key_press (YelpWindow *window, GdkEventKey *event, gpointer userdata) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); if (gtk_revealer_get_reveal_child (GTK_REVEALER (priv->find_bar))) return FALSE; @@ -792,7 +789,7 @@ bookmark_activated (GtkListBox *box, { YelpUri *base, *uri; gchar *xref; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); gtk_widget_hide (priv->bookmark_menu); @@ -816,7 +813,7 @@ bookmark_removed (GtkButton *button, YelpUri *uri; gchar *doc_uri; gchar *page_id = NULL; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); g_object_get (priv->view, "yelp-uri", &uri, NULL); doc_uri = yelp_uri_get_document_uri (uri); @@ -845,7 +842,7 @@ bookmark_added (GtkButton *button, { YelpUri *uri; gchar *doc_uri, *page_id, *icon, *title; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); g_object_get (priv->view, "yelp-uri", &uri, @@ -870,7 +867,7 @@ app_bookmarks_changed (YelpApplication *app, { YelpUri *uri; gchar *this_doc_uri; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); g_object_get (priv->view, "yelp-uri", &uri, NULL); this_doc_uri = yelp_uri_get_document_uri (uri); @@ -914,7 +911,7 @@ window_set_bookmarks (YelpWindow *window, GVariant *value; GVariantIter *iter; gchar *page_id, *icon, *title; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); GList *children, *cur; GSList *entries = NULL; @@ -974,7 +971,7 @@ window_set_bookmark_buttons (YelpWindow *window) YelpUri *uri = NULL; gchar *doc_uri = NULL, *page_id = NULL; gboolean bookmarked; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); g_object_get (priv->view, @@ -1005,7 +1002,7 @@ window_search_mode (GtkSearchBar *search_bar, GParamSpec *pspec, YelpWindow *window) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); if (gtk_search_bar_get_search_mode (GTK_SEARCH_BAR (search_bar))) gtk_revealer_set_reveal_child (GTK_REVEALER (priv->find_bar), FALSE); @@ -1016,7 +1013,7 @@ find_entry_key_press (GtkEntry *entry, GdkEventKey *event, YelpWindow *window) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); WebKitFindController *find_controller; find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (priv->view)); @@ -1041,7 +1038,7 @@ find_entry_changed (GtkEntry *entry, YelpWindow *window) { gchar *text; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); WebKitFindController *find_controller; find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (priv->view)); @@ -1059,7 +1056,7 @@ static void find_prev_clicked (GtkButton *button, YelpWindow *window) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); WebKitFindController *find_controller; find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (priv->view)); @@ -1070,7 +1067,7 @@ static void find_next_clicked (GtkButton *button, YelpWindow *window) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); WebKitFindController *find_controller; find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (priv->view)); @@ -1082,7 +1079,7 @@ view_new_window (YelpView *view, YelpUri *uri, YelpWindow *window) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); yelp_application_new_window_uri (priv->application, uri); } @@ -1094,7 +1091,7 @@ view_loaded (YelpView *view, YelpUri *uri; gchar *doc_uri; YelpViewState state; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); g_object_get (view, "yelp-uri", &uri, @@ -1153,7 +1150,7 @@ view_uri_selected (YelpView *view, { YelpUri *uri; gchar *doc_uri; - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); g_object_get (G_OBJECT (view), "yelp-uri", &uri, NULL); if (uri == NULL) @@ -1177,7 +1174,7 @@ view_root_title (YelpView *view, GParamSpec *pspec, YelpWindow *window) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); gchar *root_title, *page_title; g_object_get (view, "root-title", &root_title, "page-title", &page_title, NULL); @@ -1209,7 +1206,7 @@ static void ctrll_entry_activate (GtkEntry *entry, YelpWindow *window) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); YelpUri *uri = yelp_uri_new (gtk_entry_get_text (entry)); yelp_window_load_uri (window, uri); @@ -1223,7 +1220,7 @@ ctrll_entry_key_press (GtkWidget *widget, GdkEventKey *event, YelpWindow *window) { - YelpWindowPrivate *priv = GET_PRIV (window); + YelpWindowPrivate *priv = yelp_window_get_instance_private (window); if (event->keyval == GDK_KEY_Escape) { gtk_header_bar_set_custom_title (GTK_HEADER_BAR (priv->header), NULL); |