diff options
author | Shaun McCance <shaunm@gnome.org> | 2020-03-09 19:37:19 -0400 |
---|---|---|
committer | Shaun McCance <shaunm@gnome.org> | 2020-03-09 19:37:19 -0400 |
commit | e6e3f2547abb0993d08e50688b163eea5b230096 (patch) | |
tree | 3d236a149e584f997a5605732c1818e763c8098b /libyelp/yelp-uri.c | |
parent | 3bf412214bf80a586406d5a75226ada38a877985 (diff) | |
download | yelp-e6e3f2547abb0993d08e50688b163eea5b230096.tar.gz |
Remove deprecated method of doing private structs on gobjects
Diffstat (limited to 'libyelp/yelp-uri.c')
-rw-r--r-- | libyelp/yelp-uri.c | 83 |
1 files changed, 40 insertions, 43 deletions
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; |