gnucash stable: Multiple changes pushed
John Ralls
jralls at code.gnucash.org
Sun Jul 16 12:47:12 EDT 2023
Updated via https://github.com/Gnucash/gnucash/commit/bf7803c0 (commit)
via https://github.com/Gnucash/gnucash/commit/697daad0 (commit)
via https://github.com/Gnucash/gnucash/commit/1307e0ef (commit)
via https://github.com/Gnucash/gnucash/commit/7fa32db2 (commit)
via https://github.com/Gnucash/gnucash/commit/f321cbc2 (commit)
via https://github.com/Gnucash/gnucash/commit/254edac2 (commit)
via https://github.com/Gnucash/gnucash/commit/e094036d (commit)
from https://github.com/Gnucash/gnucash/commit/9dd4530d (commit)
commit bf7803c054eb5ffd53f0f1adb40c0971769e2a1e
Merge: 9dd4530dc2 697daad0bb
Author: John Ralls <jralls at ceridwen.us>
Date: Sun Jul 16 09:44:50 2023 -0700
Merge Richard Cohen's 'declare-type-search-param' into stable.
commit 697daad0bb3c974ee210680a371397ef52d444ba
Author: Richard Cohen <richard at daijobu.co.uk>
Date: Mon Jun 26 11:39:15 2023 +0100
Refactor: remove unnecessary *Private structs
diff --git a/gnucash/gnome-utils/search-param.c b/gnucash/gnome-utils/search-param.c
index 8678783a48..75fabaa21a 100644
--- a/gnucash/gnome-utils/search-param.c
+++ b/gnucash/gnome-utils/search-param.c
@@ -54,15 +54,10 @@ struct _GNCSearchParamPrivate
#define GNC_SEARCH_PARAM_GET_PRIVATE(o) \
((GNCSearchParamPrivate*)gnc_search_param_get_instance_private ((GNCSearchParam*)o))
-typedef struct _GNCSearchParamSimplePrivate GNCSearchParamSimplePrivate;
-
struct _GNCSearchParamSimple
{
GNCSearchParam search_param;
-};
-struct _GNCSearchParamSimplePrivate
-{
GSList * converters;
GSList * param_path;
@@ -70,27 +65,16 @@ struct _GNCSearchParamSimplePrivate
gpointer lookup_arg;
};
-#define GNC_SEARCH_PARAM_SIMPLE_GET_PRIVATE(o) \
- ((GNCSearchParamSimplePrivate*)gnc_search_param_simple_get_instance_private ((GNCSearchParamSimple*)o))
-
-typedef struct _GNCSearchParamCompoundPrivate GNCSearchParamCompoundPrivate;
-
struct _GNCSearchParamCompound
{
GNCSearchParam search_param;
-};
-struct _GNCSearchParamCompoundPrivate
-{
GList * sub_search;
/* This defines the type of subsearch, either AND or OR */
GNCSearchParamKind kind;
};
-#define GNC_SEARCH_PARAM_COMPOUND_GET_PRIVATE(o) \
- ((GNCSearchParamCompoundPrivate*)gnc_search_param_compound_get_instance_private ((GNCSearchParamCompound*)o))
-
enum
{
LAST_SIGNAL
@@ -128,7 +112,7 @@ gnc_search_param_finalize (GObject *obj)
/* subclass for simple searches of a single element */
-G_DEFINE_TYPE_WITH_PRIVATE(GNCSearchParamSimple, gnc_search_param_simple, GNC_TYPE_SEARCH_PARAM)
+G_DEFINE_TYPE(GNCSearchParamSimple, gnc_search_param_simple, GNC_TYPE_SEARCH_PARAM)
static void
gnc_search_param_simple_class_init (GNCSearchParamSimpleClass *klass)
@@ -147,25 +131,23 @@ static void
gnc_search_param_simple_finalize (GObject *obj)
{
GNCSearchParamSimple *o;
- GNCSearchParamSimplePrivate *priv;
g_return_if_fail (obj != NULL);
g_return_if_fail (GNC_IS_SEARCH_PARAM_SIMPLE(obj));
o = GNC_SEARCH_PARAM_SIMPLE(obj);
- priv = GNC_SEARCH_PARAM_SIMPLE_GET_PRIVATE(o);
- g_slist_free (priv->param_path);
- priv->param_path = NULL;
- g_slist_free (priv->converters);
- priv->converters = NULL;
+ g_slist_free (o->param_path);
+ o->param_path = NULL;
+ g_slist_free (o->converters);
+ o->converters = NULL;
G_OBJECT_CLASS(gnc_search_param_simple_parent_class)->finalize (obj);
}
/* Subclass for compound searches consisting of AND/OR of several elements */
-G_DEFINE_TYPE_WITH_PRIVATE(GNCSearchParamCompound, gnc_search_param_compound, GNC_TYPE_SEARCH_PARAM)
+G_DEFINE_TYPE(GNCSearchParamCompound, gnc_search_param_compound, GNC_TYPE_SEARCH_PARAM)
static void
gnc_search_param_compound_class_init (GNCSearchParamCompoundClass *klass)
@@ -184,16 +166,14 @@ static void
gnc_search_param_compound_finalize (GObject *obj)
{
GNCSearchParamCompound *o;
- GNCSearchParamCompoundPrivate *priv;
g_return_if_fail (obj != NULL);
g_return_if_fail (GNC_IS_SEARCH_PARAM_COMPOUND(obj));
o = GNC_SEARCH_PARAM_COMPOUND(obj);
- priv = GNC_SEARCH_PARAM_COMPOUND_GET_PRIVATE(o);
- g_list_free (priv->sub_search);
- priv->sub_search = NULL;
+ g_list_free (o->sub_search);
+ o->sub_search = NULL;
G_OBJECT_CLASS (gnc_search_param_compound_parent_class)->finalize (obj);
}
@@ -233,19 +213,17 @@ gnc_search_param_set_param_path (GNCSearchParamSimple *param,
QofIdTypeConst search_type,
GSList *param_path)
{
- GNCSearchParamSimplePrivate *priv;
GNCSearchParamPrivate *priv_base;
QofIdTypeConst type = NULL;
GSList *converters = NULL;
g_return_if_fail (GNC_IS_SEARCH_PARAM_SIMPLE(param));
- priv = GNC_SEARCH_PARAM_SIMPLE_GET_PRIVATE(param);
- if (priv->param_path)
+ if (param->param_path)
{
- g_slist_free (priv->param_path);
+ g_slist_free (param->param_path);
}
- priv->param_path = g_slist_copy (param_path);
+ param->param_path = g_slist_copy (param_path);
/* Compute the parameter type */
for (; param_path; param_path = param_path->next)
@@ -270,11 +248,11 @@ gnc_search_param_set_param_path (GNCSearchParamSimple *param,
priv_base->type = type;
/* Save the converters */
- if (priv->converters)
+ if (param->converters)
{
- g_slist_free (priv->converters);
+ g_slist_free (param->converters);
}
- priv->converters = g_slist_reverse (converters);
+ param->converters = g_slist_reverse (converters);
}
void
@@ -294,34 +272,25 @@ gnc_search_param_override_param_type (GNCSearchParamSimple *param,
GList *
gnc_search_param_get_search (GNCSearchParamCompound *param)
{
- GNCSearchParamCompoundPrivate *priv;
-
g_return_val_if_fail (GNC_IS_SEARCH_PARAM_COMPOUND(param), NULL);
- priv = GNC_SEARCH_PARAM_COMPOUND_GET_PRIVATE(param);
- return priv->sub_search;
+ return param->sub_search;
}
GSList *
gnc_search_param_get_param_path (GNCSearchParamSimple *param)
{
- GNCSearchParamSimplePrivate *priv;
-
g_return_val_if_fail (GNC_IS_SEARCH_PARAM_SIMPLE(param), NULL);
- priv = GNC_SEARCH_PARAM_SIMPLE_GET_PRIVATE(param);
- return g_slist_copy (priv->param_path);
+ return g_slist_copy (param->param_path);
}
GSList *
gnc_search_param_get_converters (GNCSearchParamSimple *param)
{
- GNCSearchParamSimplePrivate *priv;
-
g_return_val_if_fail (GNC_IS_SEARCH_PARAM_SIMPLE(param), NULL);
- priv = GNC_SEARCH_PARAM_SIMPLE_GET_PRIVATE(param);
- return priv->converters;
+ return param->converters;
}
QofIdTypeConst
@@ -338,15 +307,12 @@ gnc_search_param_get_param_type (GNCSearchParam *param)
GNCSearchParamKind
gnc_search_param_get_kind (GNCSearchParam *param)
{
- GNCSearchParamCompoundPrivate *priv;
-
if (GNC_IS_SEARCH_PARAM_SIMPLE(param))
return SEARCH_PARAM_ELEM;
g_return_val_if_fail (GNC_IS_SEARCH_PARAM_COMPOUND(param), SEARCH_PARAM_ELEM);
- priv = GNC_SEARCH_PARAM_COMPOUND_GET_PRIVATE(param);
- return priv->kind;
+ return GNC_SEARCH_PARAM_COMPOUND (param)->kind;
}
const char*
@@ -528,7 +494,6 @@ gnc_search_param_prepend_compound (GList *list, char const *title,
QofIdTypeConst type = NULL;
GNCSearchParamCompound *param;
GNCSearchParamPrivate *basepriv;
- GNCSearchParamCompoundPrivate *priv;
g_return_val_if_fail (title, list);
g_return_val_if_fail (param_list, list);
@@ -550,11 +515,10 @@ gnc_search_param_prepend_compound (GList *list, char const *title,
gnc_search_param_set_title (GNC_SEARCH_PARAM(param), title);
gnc_search_param_set_justify (GNC_SEARCH_PARAM(param), justify);
- priv = GNC_SEARCH_PARAM_COMPOUND_GET_PRIVATE(param);
basepriv = GNC_SEARCH_PARAM_GET_PRIVATE(param);
- priv->sub_search = g_list_copy (param_list);
+ param->sub_search = g_list_copy (param_list);
basepriv->type = type;
- priv->kind = kind;
+ param->kind = kind;
return g_list_prepend (list, param);
}
@@ -565,30 +529,23 @@ gnc_search_param_set_param_fcn (GNCSearchParamSimple *param,
GNCSearchParamFcn fcn,
gpointer arg)
{
- GNCSearchParamSimplePrivate *priv;
-
g_return_if_fail (param);
g_return_if_fail (param_type && *param_type);
g_return_if_fail (fcn);
g_return_if_fail (GNC_IS_SEARCH_PARAM_SIMPLE(param));
- priv = GNC_SEARCH_PARAM_SIMPLE_GET_PRIVATE(param);
- priv->lookup_fcn = fcn;
- priv->lookup_arg = arg;
+ param->lookup_fcn = fcn;
+ param->lookup_arg = arg;
gnc_search_param_override_param_type (param, param_type);
}
gboolean
gnc_search_param_has_param_fcn (GNCSearchParamSimple *param)
{
- GNCSearchParamSimplePrivate *priv;
-
g_return_val_if_fail (param, FALSE);
g_return_val_if_fail (GNC_IS_SEARCH_PARAM_SIMPLE(param), FALSE);
- priv = GNC_SEARCH_PARAM_SIMPLE_GET_PRIVATE(param);
-
- if (priv->lookup_fcn)
+ if (param->lookup_fcn)
return TRUE;
return FALSE;
@@ -598,15 +555,12 @@ gnc_search_param_has_param_fcn (GNCSearchParamSimple *param)
gpointer
gnc_search_param_compute_value (GNCSearchParamSimple *param, gpointer object)
{
- GNCSearchParamSimplePrivate *priv;
-
g_return_val_if_fail (param, NULL);
g_return_val_if_fail (GNC_IS_SEARCH_PARAM_SIMPLE(param), NULL);
- priv = GNC_SEARCH_PARAM_SIMPLE_GET_PRIVATE(param);
- if (priv->lookup_fcn)
+ if (param->lookup_fcn)
{
- return ((priv->lookup_fcn)(object, priv->lookup_arg));
+ return ((param->lookup_fcn)(object, param->lookup_arg));
}
else
{
commit 1307e0ef75b948a814ae412b754680a48fd278d8
Author: Richard Cohen <richard at daijobu.co.uk>
Date: Mon Jun 26 11:30:08 2023 +0100
Refactor: hide implementations (move from .h -> .c)
diff --git a/gnucash/gnome-utils/search-param.c b/gnucash/gnome-utils/search-param.c
index 2d85291c52..8678783a48 100644
--- a/gnucash/gnome-utils/search-param.c
+++ b/gnucash/gnome-utils/search-param.c
@@ -56,6 +56,11 @@ struct _GNCSearchParamPrivate
typedef struct _GNCSearchParamSimplePrivate GNCSearchParamSimplePrivate;
+struct _GNCSearchParamSimple
+{
+ GNCSearchParam search_param;
+};
+
struct _GNCSearchParamSimplePrivate
{
GSList * converters;
@@ -70,6 +75,11 @@ struct _GNCSearchParamSimplePrivate
typedef struct _GNCSearchParamCompoundPrivate GNCSearchParamCompoundPrivate;
+struct _GNCSearchParamCompound
+{
+ GNCSearchParam search_param;
+};
+
struct _GNCSearchParamCompoundPrivate
{
GList * sub_search;
diff --git a/gnucash/gnome-utils/search-param.h b/gnucash/gnome-utils/search-param.h
index 204363b952..423b09da31 100644
--- a/gnucash/gnome-utils/search-param.h
+++ b/gnucash/gnome-utils/search-param.h
@@ -39,19 +39,9 @@ struct _GNCSearchParamClass
#define GNC_TYPE_SEARCH_PARAM_SIMPLE (gnc_search_param_simple_get_type ())
G_DECLARE_FINAL_TYPE (GNCSearchParamSimple, gnc_search_param_simple, GNC, SEARCH_PARAM_SIMPLE, GNCSearchParam)
-struct _GNCSearchParamSimple
-{
- GNCSearchParam search_param;
-};
-
#define GNC_TYPE_SEARCH_PARAM_COMPOUND (gnc_search_param_compound_get_type ())
G_DECLARE_FINAL_TYPE (GNCSearchParamCompound, gnc_search_param_compound, GNC, SEARCH_PARAM_COMPOUND, GNCSearchParam)
-struct _GNCSearchParamCompound
-{
- GNCSearchParam search_param;
-};
-
typedef enum
{
SEARCH_PARAM_ELEM = 0,
commit 7fa32db2a7ca640bde22285da3b35681d77cf84a
Author: Richard Cohen <richard at daijobu.co.uk>
Date: Mon Jun 26 10:45:02 2023 +0100
Refactor: DECLARE_FINAL GNCSearchParamCompound < GNCSearchParam
diff --git a/gnucash/gnome-utils/search-param.h b/gnucash/gnome-utils/search-param.h
index 9c8c9e57f1..204363b952 100644
--- a/gnucash/gnome-utils/search-param.h
+++ b/gnucash/gnome-utils/search-param.h
@@ -45,29 +45,13 @@ struct _GNCSearchParamSimple
};
#define GNC_TYPE_SEARCH_PARAM_COMPOUND (gnc_search_param_compound_get_type ())
-#define GNC_SEARCH_PARAM_COMPOUND(o) \
- (G_TYPE_CHECK_INSTANCE_CAST ((o), GNC_TYPE_SEARCH_PARAM_COMPOUND, GNCSearchParamCompound))
-#define GNCSEARCH_PARAM_COMPOUND_CLASS(k) \
- (G_TYPE_CHECK_CLASS_CAST ((k), GNC_TYPE_SEARCH_PARAM_COMPOUND, GNCSearchParamCompoundClass)
-#define GNC_IS_SEARCH_PARAM_COMPOUND(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_SEARCH_PARAM_COMPOUND))
-
-typedef struct _GNCSearchParamCompound GNCSearchParamCompound;
-typedef struct _GNCSearchParamCompoundClass GNCSearchParamCompoundClass;
+G_DECLARE_FINAL_TYPE (GNCSearchParamCompound, gnc_search_param_compound, GNC, SEARCH_PARAM_COMPOUND, GNCSearchParam)
struct _GNCSearchParamCompound
{
GNCSearchParam search_param;
};
-struct _GNCSearchParamCompoundClass
-{
- GNCSearchParamClass search_param_class;
-
- /* virtual methods */
-
- /* signals */
-};
-
typedef enum
{
SEARCH_PARAM_ELEM = 0,
@@ -75,9 +59,6 @@ typedef enum
SEARCH_PARAM_ALL = 2
} GNCSearchParamKind;
-/* These are internal functions */
-GType gnc_search_param_compound_get_type (void);
-
/* Create a new search param */
GNCSearchParamSimple * gnc_search_param_simple_new (void);
GNCSearchParamCompound * gnc_search_param_compound_new (void);
commit f321cbc267fa9391f76789863634c944dfc56173
Author: Richard Cohen <richard at daijobu.co.uk>
Date: Mon Jun 26 10:44:37 2023 +0100
Refactor: DECLARE_FINAL GNCSearchParamSimple < GNCSearchParam
diff --git a/gnucash/gnome-utils/search-param.h b/gnucash/gnome-utils/search-param.h
index 93e548d47f..9c8c9e57f1 100644
--- a/gnucash/gnome-utils/search-param.h
+++ b/gnucash/gnome-utils/search-param.h
@@ -37,29 +37,13 @@ struct _GNCSearchParamClass
};
#define GNC_TYPE_SEARCH_PARAM_SIMPLE (gnc_search_param_simple_get_type ())
-#define GNC_SEARCH_PARAM_SIMPLE(o) \
- (G_TYPE_CHECK_INSTANCE_CAST ((o), GNC_TYPE_SEARCH_PARAM_SIMPLE, GNCSearchParamSimple))
-#define GNCSEARCH_PARAM_SIMPLE_CLASS(k) \
- (G_TYPE_CHECK_CLASS_CAST ((k), GNC_TYPE_SEARCH_PARAM_SIMPLE, GNCSearchParamSimpleClass)
-#define GNC_IS_SEARCH_PARAM_SIMPLE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_SEARCH_PARAM_SIMPLE))
-
-typedef struct _GNCSearchParamSimple GNCSearchParamSimple;
-typedef struct _GNCSearchParamSimpleClass GNCSearchParamSimpleClass;
+G_DECLARE_FINAL_TYPE (GNCSearchParamSimple, gnc_search_param_simple, GNC, SEARCH_PARAM_SIMPLE, GNCSearchParam)
struct _GNCSearchParamSimple
{
GNCSearchParam search_param;
};
-struct _GNCSearchParamSimpleClass
-{
- GNCSearchParamClass search_param_class;
-
- /* virtual methods */
-
- /* signals */
-};
-
#define GNC_TYPE_SEARCH_PARAM_COMPOUND (gnc_search_param_compound_get_type ())
#define GNC_SEARCH_PARAM_COMPOUND(o) \
(G_TYPE_CHECK_INSTANCE_CAST ((o), GNC_TYPE_SEARCH_PARAM_COMPOUND, GNCSearchParamCompound))
@@ -92,7 +76,6 @@ typedef enum
} GNCSearchParamKind;
/* These are internal functions */
-GType gnc_search_param_simple_get_type (void);
GType gnc_search_param_compound_get_type (void);
/* Create a new search param */
commit 254edac26bca23f22b93b766f08c4d05997d448c
Author: Richard Cohen <richard at daijobu.co.uk>
Date: Wed Jun 28 11:56:39 2023 +0100
Refactor: DECLARE_DERIVABLE GNCSearchParam < GObject
diff --git a/gnucash/gnome-utils/search-param.c b/gnucash/gnome-utils/search-param.c
index e675d0bf88..2d85291c52 100644
--- a/gnucash/gnome-utils/search-param.c
+++ b/gnucash/gnome-utils/search-param.c
@@ -43,6 +43,11 @@ typedef struct _GNCSearchParamPrivate GNCSearchParamPrivate;
struct _GNCSearchParamPrivate
{
+ const char * title;
+ GtkJustification justify;
+ gboolean passive;
+ gboolean non_resizeable;
+
QofIdTypeConst type;
};
@@ -339,7 +344,8 @@ gnc_search_param_get_title (GNCSearchParam *param)
{
g_return_val_if_fail (GNC_IS_SEARCH_PARAM(param), NULL);
- return param->title;
+ GNCSearchParamPrivate *priv = GNC_SEARCH_PARAM_GET_PRIVATE(param);
+ return priv->title;
}
void
@@ -347,7 +353,8 @@ gnc_search_param_set_title (GNCSearchParam *param, const char *title)
{
g_return_if_fail (GNC_IS_SEARCH_PARAM(param));
- param->title = title;
+ GNCSearchParamPrivate *priv = GNC_SEARCH_PARAM_GET_PRIVATE(param);
+ priv->title = title;
}
GtkJustification
@@ -355,7 +362,8 @@ gnc_search_param_get_justify (GNCSearchParam *param)
{
g_return_val_if_fail (GNC_IS_SEARCH_PARAM(param), GTK_JUSTIFY_LEFT);
- return param->justify;
+ GNCSearchParamPrivate *priv = GNC_SEARCH_PARAM_GET_PRIVATE(param);
+ return priv->justify;
}
void
@@ -363,7 +371,8 @@ gnc_search_param_set_justify (GNCSearchParam *param, GtkJustification justify)
{
g_return_if_fail (GNC_IS_SEARCH_PARAM(param));
- param->justify = justify;
+ GNCSearchParamPrivate *priv = GNC_SEARCH_PARAM_GET_PRIVATE(param);
+ priv->justify = justify;
}
gboolean
@@ -371,7 +380,8 @@ gnc_search_param_get_passive (GNCSearchParam *param)
{
g_return_val_if_fail (GNC_IS_SEARCH_PARAM(param), FALSE);
- return param->passive;
+ GNCSearchParamPrivate *priv = GNC_SEARCH_PARAM_GET_PRIVATE(param);
+ return priv->passive;
}
void
@@ -379,7 +389,8 @@ gnc_search_param_set_passive (GNCSearchParam *param, gboolean value)
{
g_assert (GNC_IS_SEARCH_PARAM(param));
- param->passive = value;
+ GNCSearchParamPrivate *priv = GNC_SEARCH_PARAM_GET_PRIVATE(param);
+ priv->passive = value;
}
gboolean
@@ -387,7 +398,8 @@ gnc_search_param_get_non_resizeable (GNCSearchParam *param)
{
g_return_val_if_fail (GNC_IS_SEARCH_PARAM(param), FALSE);
- return param->non_resizeable;
+ GNCSearchParamPrivate *priv = GNC_SEARCH_PARAM_GET_PRIVATE(param);
+ return priv->non_resizeable;
}
void
@@ -395,7 +407,8 @@ gnc_search_param_set_non_resizeable (GNCSearchParam *param, gboolean value)
{
g_assert (GNC_IS_SEARCH_PARAM(param));
- param->non_resizeable = value;
+ GNCSearchParamPrivate *priv = GNC_SEARCH_PARAM_GET_PRIVATE(param);
+ priv->non_resizeable = value;
}
gboolean
diff --git a/gnucash/gnome-utils/search-param.h b/gnucash/gnome-utils/search-param.h
index 046c9b3509..93e548d47f 100644
--- a/gnucash/gnome-utils/search-param.h
+++ b/gnucash/gnome-utils/search-param.h
@@ -25,22 +25,7 @@
#define GNC_TYPE_SEARCH_PARAM (gnc_search_param_get_type ())
-#define GNC_SEARCH_PARAM(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GNC_TYPE_SEARCH_PARAM, GNCSearchParam))
-#define GNCSEARCH_PARAM_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), GNC_TYPE_SEARCH_PARAM, GNCSearchParamClass)
-#define GNC_IS_SEARCH_PARAM(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNC_TYPE_SEARCH_PARAM))
-
-typedef struct _GNCSearchParam GNCSearchParam;
-typedef struct _GNCSearchParamClass GNCSearchParamClass;
-
-struct _GNCSearchParam
-{
- GObject gobject;
-
- const char * title;
- GtkJustification justify;
- gboolean passive;
- gboolean non_resizeable;
-};
+G_DECLARE_DERIVABLE_TYPE (GNCSearchParam, gnc_search_param, GNC, SEARCH_PARAM, GObject)
struct _GNCSearchParamClass
{
@@ -107,7 +92,6 @@ typedef enum
} GNCSearchParamKind;
/* These are internal functions */
-GType gnc_search_param_get_type (void);
GType gnc_search_param_simple_get_type (void);
GType gnc_search_param_compound_get_type (void);
commit e094036d9912fdf7f328200895167573b638a700
Author: Richard Cohen <richard at daijobu.co.uk>
Date: Mon Jun 12 19:47:46 2023 +0100
Refactor: define and use api methods for GNCSearchParam
diff --git a/gnucash/gnome-search/dialog-search.c b/gnucash/gnome-search/dialog-search.c
index 3c67c85626..c3ae5261f8 100644
--- a/gnucash/gnome-search/dialog-search.c
+++ b/gnucash/gnome-search/dialog-search.c
@@ -809,7 +809,7 @@ get_comb_box_widget (GNCSearchWindow *sw, struct _crit_data *data)
gtk_list_store_append(store, &iter);
gtk_list_store_set(store, &iter,
- SEARCH_COL_NAME, _(param->title),
+ SEARCH_COL_NAME, _(gnc_search_param_get_title (param)),
SEARCH_COL_POINTER, param,
-1);
@@ -875,16 +875,16 @@ gnc_search_dialog_book_option_changed (gpointer new_val, gpointer user_data)
if (*new_data)
{
- if (strcmp (param->title, N_("Action")) == 0)
+ if (strcmp (gnc_search_param_get_title (param), N_("Action")) == 0)
gnc_search_param_set_title (param, N_("Number/Action"));
- if (strcmp (param->title, N_("Number")) == 0)
+ if (strcmp (gnc_search_param_get_title (param), N_("Number")) == 0)
gnc_search_param_set_title (param, N_("Transaction Number"));
}
else
{
- if (strcmp (param->title, N_("Number/Action")) == 0)
+ if (strcmp (gnc_search_param_get_title (param), N_("Number/Action")) == 0)
gnc_search_param_set_title (param, N_("Action"));
- if (strcmp (param->title, N_("Transaction Number")) == 0)
+ if (strcmp (gnc_search_param_get_title (param), N_("Transaction Number")) == 0)
gnc_search_param_set_title (param, N_("Number"));
}
}
diff --git a/gnucash/gnome-utils/gnc-query-view.c b/gnucash/gnome-utils/gnc-query-view.c
index 1537322e1f..31600932b5 100644
--- a/gnucash/gnome-utils/gnc-query-view.c
+++ b/gnucash/gnome-utils/gnc-query-view.c
@@ -310,15 +310,15 @@ gnc_query_view_init_view (GNCQueryView *qview)
col = gtk_tree_view_column_new ();
/* Set the column title */
- gtk_tree_view_column_set_title (col, (gchar *) ((GNCSearchParam *) param)->title);
+ gtk_tree_view_column_set_title (col, gnc_search_param_get_title (GNC_SEARCH_PARAM (param)));
/* pack tree view column into tree view */
gtk_tree_view_append_column (view, col);
/* Get justification */
- if (((GNCSearchParam *) param)->justify == GTK_JUSTIFY_CENTER)
+ if (gnc_search_param_get_justify (GNC_SEARCH_PARAM (param)) == GTK_JUSTIFY_CENTER)
algn = 0.5;
- else if (((GNCSearchParam *) param)->justify == GTK_JUSTIFY_RIGHT)
+ else if (gnc_search_param_get_justify (GNC_SEARCH_PARAM (param)) == GTK_JUSTIFY_RIGHT)
{
/* GTK_JUSTIFY_RIGHT is only used for monetary values so right align
* the column title and data for both ltr and rtl */
@@ -330,7 +330,7 @@ gnc_query_view_init_view (GNCQueryView *qview)
gtk_tree_view_column_set_alignment (col, algn);
/* Set column resizable */
- if (((GNCSearchParam *) param)->non_resizeable)
+ if (gnc_search_param_get_non_resizeable (GNC_SEARCH_PARAM (param)))
{
gtk_tree_view_column_set_resizable (col, FALSE);
gtk_tree_view_column_set_expand (col, FALSE);
@@ -339,7 +339,7 @@ gnc_query_view_init_view (GNCQueryView *qview)
gtk_tree_view_column_set_resizable (col, TRUE);
/* Set column clickable */
- if (((GNCSearchParam *) param)->passive)
+ if (gnc_search_param_get_passive (GNC_SEARCH_PARAM (param)))
gtk_tree_view_column_set_clickable (col, FALSE);
else
{
diff --git a/gnucash/gnome-utils/search-param.c b/gnucash/gnome-utils/search-param.c
index c5c2fe1a6d..e675d0bf88 100644
--- a/gnucash/gnome-utils/search-param.c
+++ b/gnucash/gnome-utils/search-param.c
@@ -334,6 +334,14 @@ gnc_search_param_get_kind (GNCSearchParam *param)
return priv->kind;
}
+const char*
+gnc_search_param_get_title (GNCSearchParam *param)
+{
+ g_return_val_if_fail (GNC_IS_SEARCH_PARAM(param), NULL);
+
+ return param->title;
+}
+
void
gnc_search_param_set_title (GNCSearchParam *param, const char *title)
{
@@ -342,6 +350,14 @@ gnc_search_param_set_title (GNCSearchParam *param, const char *title)
param->title = title;
}
+GtkJustification
+gnc_search_param_get_justify (GNCSearchParam *param)
+{
+ g_return_val_if_fail (GNC_IS_SEARCH_PARAM(param), GTK_JUSTIFY_LEFT);
+
+ return param->justify;
+}
+
void
gnc_search_param_set_justify (GNCSearchParam *param, GtkJustification justify)
{
@@ -350,6 +366,14 @@ gnc_search_param_set_justify (GNCSearchParam *param, GtkJustification justify)
param->justify = justify;
}
+gboolean
+gnc_search_param_get_passive (GNCSearchParam *param)
+{
+ g_return_val_if_fail (GNC_IS_SEARCH_PARAM(param), FALSE);
+
+ return param->passive;
+}
+
void
gnc_search_param_set_passive (GNCSearchParam *param, gboolean value)
{
@@ -358,6 +382,14 @@ gnc_search_param_set_passive (GNCSearchParam *param, gboolean value)
param->passive = value;
}
+gboolean
+gnc_search_param_get_non_resizeable (GNCSearchParam *param)
+{
+ g_return_val_if_fail (GNC_IS_SEARCH_PARAM(param), FALSE);
+
+ return param->non_resizeable;
+}
+
void
gnc_search_param_set_non_resizeable (GNCSearchParam *param, gboolean value)
{
diff --git a/gnucash/gnome-utils/search-param.h b/gnucash/gnome-utils/search-param.h
index 4dc18e93e6..046c9b3509 100644
--- a/gnucash/gnome-utils/search-param.h
+++ b/gnucash/gnome-utils/search-param.h
@@ -126,13 +126,17 @@ void gnc_search_param_set_param_path (GNCSearchParamSimple *param,
GList * gnc_search_param_get_search (GNCSearchParamCompound *param);
GSList * gnc_search_param_get_param_path (GNCSearchParamSimple *param);
QofIdTypeConst gnc_search_param_get_param_type (GNCSearchParam *param);
+const char *gnc_search_param_get_title (GNCSearchParam *param);
void gnc_search_param_set_title (GNCSearchParam *param,
const char *title);
GNCSearchParamKind gnc_search_param_get_kind (GNCSearchParam *param);
+GtkJustification gnc_search_param_get_justify (GNCSearchParam *param);
void gnc_search_param_set_justify (GNCSearchParam *param,
GtkJustification justify);
+gboolean gnc_search_param_get_passive (GNCSearchParam *param);
void gnc_search_param_set_passive (GNCSearchParam *param,
gboolean value);
+gboolean gnc_search_param_get_non_resizeable (GNCSearchParam *param);
void gnc_search_param_set_non_resizeable (GNCSearchParam *param,
gboolean value);
gboolean gnc_search_param_type_match (GNCSearchParam *a,
diff --git a/gnucash/gnome/dialog-find-transactions.c b/gnucash/gnome/dialog-find-transactions.c
index 88c406b9dd..9e13835cf2 100644
--- a/gnucash/gnome/dialog-find-transactions.c
+++ b/gnucash/gnome/dialog-find-transactions.c
@@ -167,16 +167,16 @@ gnc_ui_find_transactions_dialog_create(GtkWindow *parent, GNCLedgerDisplay * ori
if (num_action)
{
- if (strcmp (param->title, N_("Action")) == 0)
+ if (strcmp (gnc_search_param_get_title (param), N_("Action")) == 0)
gnc_search_param_set_title (param, N_("Number/Action"));
- if (strcmp (param->title, N_("Number")) == 0)
+ if (strcmp (gnc_search_param_get_title (param), N_("Number")) == 0)
gnc_search_param_set_title (param, N_("Transaction Number"));
}
else
{
- if (strcmp (param->title, N_("Number/Action")) == 0)
+ if (strcmp (gnc_search_param_get_title (param), N_("Number/Action")) == 0)
gnc_search_param_set_title (param, N_("Action"));
- if (strcmp (param->title, N_("Transaction Number")) == 0)
+ if (strcmp (gnc_search_param_get_title (param), N_("Transaction Number")) == 0)
gnc_search_param_set_title (param, N_("Number"));
}
}
Summary of changes:
gnucash/gnome-search/dialog-search.c | 10 +-
gnucash/gnome-utils/gnc-query-view.c | 10 +-
gnucash/gnome-utils/search-param.c | 151 ++++++++++++++++---------------
gnucash/gnome-utils/search-param.h | 72 ++-------------
gnucash/gnome/dialog-find-transactions.c | 8 +-
5 files changed, 101 insertions(+), 150 deletions(-)
More information about the gnucash-changes
mailing list