gnucash stable: [dialog-commodities.cpp] convert to c++
Christopher Lam
clam at code.gnucash.org
Sun Sep 29 23:09:43 EDT 2024
Updated via https://github.com/Gnucash/gnucash/commit/18bb96f0 (commit)
from https://github.com/Gnucash/gnucash/commit/4b0c3506 (commit)
commit 18bb96f01cd96b4a50a4f02ea3e060f11ffc6611
Author: Christopher Lam <christopher.lck at gmail.com>
Date: Sat Sep 28 23:15:10 2024 +0800
[dialog-commodities.cpp] convert to c++
diff --git a/gnucash/gnome/CMakeLists.txt b/gnucash/gnome/CMakeLists.txt
index b1eaed4a91..115a886bb2 100644
--- a/gnucash/gnome/CMakeLists.txt
+++ b/gnucash/gnome/CMakeLists.txt
@@ -76,7 +76,7 @@ set (gnc_gnome_SOURCES
dialog-doclink.c
dialog-billterms.c
dialog-choose-owner.c
- dialog-commodities.c
+ dialog-commodities.cpp
dialog-customer.c
dialog-custom-report.c
dialog-date-close.c
diff --git a/gnucash/gnome/dialog-commodities.c b/gnucash/gnome/dialog-commodities.cpp
similarity index 95%
rename from gnucash/gnome/dialog-commodities.c
rename to gnucash/gnome/dialog-commodities.cpp
index ec0437d09f..548491b1c5 100644
--- a/gnucash/gnome/dialog-commodities.c
+++ b/gnucash/gnome/dialog-commodities.cpp
@@ -65,11 +65,15 @@ typedef struct
void gnc_commodities_window_destroy_cb (GtkWidget *object, CommoditiesDialog *cd);
+
+extern "C" {
void gnc_commodities_dialog_add_clicked (GtkWidget *widget, gpointer data);
void gnc_commodities_dialog_edit_clicked (GtkWidget *widget, gpointer data);
void gnc_commodities_dialog_remove_clicked (GtkWidget *widget, gpointer data);
void gnc_commodities_dialog_close_clicked (GtkWidget *widget, gpointer data);
void gnc_commodities_show_currencies_toggled (GtkToggleButton *toggle, CommoditiesDialog *cd);
+}
+
gboolean gnc_commodities_window_key_press_cb (GtkWidget *widget,
GdkEventKey *event,
gpointer data);
@@ -93,7 +97,7 @@ gnc_commodities_window_delete_event_cb (GtkWidget *widget,
GdkEvent *event,
gpointer data)
{
- CommoditiesDialog *cd = data;
+ auto cd = static_cast<CommoditiesDialog*>(data);
// this cb allows the window size to be saved on closing with the X
gnc_save_window_size (GNC_PREFS_GROUP,
GTK_WINDOW(cd->window));
@@ -103,7 +107,7 @@ gnc_commodities_window_delete_event_cb (GtkWidget *widget,
void
gnc_commodities_dialog_edit_clicked (GtkWidget *widget, gpointer data)
{
- CommoditiesDialog *cd = data;
+ auto cd = static_cast<CommoditiesDialog*>(data);
gnc_commodity *commodity;
commodity = gnc_tree_view_commodity_get_selected_commodity (cd->commodity_tree);
@@ -147,7 +151,7 @@ row_activated_cb (GtkTreeView *view, GtkTreePath *path,
void
gnc_commodities_dialog_remove_clicked (GtkWidget *widget, gpointer data)
{
- CommoditiesDialog *cd = data;
+ auto cd = static_cast<CommoditiesDialog*>(data);
GNCPriceDB *pdb;
GList *node;
GList *prices;
@@ -167,7 +171,7 @@ gnc_commodities_dialog_remove_clicked (GtkWidget *widget, gpointer data)
for (node = accounts; node; node = node->next)
{
- Account *account = node->data;
+ Account *account = GNC_ACCOUNT(node->data);
if (commodity == xaccAccountGetCommodity (account))
{
@@ -226,7 +230,7 @@ gnc_commodities_dialog_remove_clicked (GtkWidget *widget, gpointer data)
ct = gnc_commodity_table_get_table (cd->book);
for (node = prices; node; node = node->next)
- gnc_pricedb_remove_price(pdb, node->data);
+ gnc_pricedb_remove_price(pdb, GNC_PRICE(node->data));
gnc_commodity_table_remove (ct, commodity);
gnc_commodity_destroy (commodity);
@@ -243,7 +247,7 @@ gnc_commodities_dialog_remove_clicked (GtkWidget *widget, gpointer data)
void
gnc_commodities_dialog_add_clicked (GtkWidget *widget, gpointer data)
{
- CommoditiesDialog *cd = data;
+ auto cd = static_cast<CommoditiesDialog*>(data);
gnc_commodity *commodity;
gnc_commodity *ret_commodity;
const char *name_space;
@@ -261,7 +265,7 @@ gnc_commodities_dialog_add_clicked (GtkWidget *widget, gpointer data)
void
gnc_commodities_dialog_close_clicked (GtkWidget *widget, gpointer data)
{
- CommoditiesDialog *cd = data;
+ auto cd = static_cast<CommoditiesDialog*>(data);
gnc_close_gui_component_by_data (DIALOG_COMMODITIES_CM_CLASS, cd);
}
@@ -291,7 +295,7 @@ static gboolean
gnc_commodities_dialog_filter_ns_func (gnc_commodity_namespace *name_space,
gpointer data)
{
- CommoditiesDialog *cd = data;
+ auto cd = static_cast<CommoditiesDialog*>(data);
const gchar *name;
GList *list;
@@ -315,7 +319,7 @@ static gboolean
gnc_commodities_dialog_filter_cm_func (gnc_commodity *commodity,
gpointer data)
{
- CommoditiesDialog *cd = data;
+ auto cd = static_cast<CommoditiesDialog*>(data);
if (cd->show_currencies)
return TRUE;
@@ -394,7 +398,7 @@ gnc_commodities_dialog_create (GtkWidget * parent, CommoditiesDialog *cd)
static void
close_handler (gpointer user_data)
{
- CommoditiesDialog *cd = user_data;
+ auto cd = static_cast<CommoditiesDialog*>(user_data);
gnc_save_window_size (GNC_PREFS_GROUP, GTK_WINDOW(cd->window));
@@ -406,7 +410,7 @@ close_handler (gpointer user_data)
static void
refresh_handler (GHashTable *changes, gpointer user_data)
{
- CommoditiesDialog *cd = user_data;
+ auto cd = static_cast<CommoditiesDialog*>(user_data);
g_return_if_fail(cd != NULL);
@@ -417,7 +421,7 @@ static gboolean
show_handler (const char *klass, gint component_id,
gpointer user_data, gpointer iter_data)
{
- CommoditiesDialog *cd = user_data;
+ auto cd = static_cast<CommoditiesDialog*>(user_data);
if (!cd)
return(FALSE);
@@ -429,7 +433,7 @@ gboolean
gnc_commodities_window_key_press_cb (GtkWidget *widget, GdkEventKey *event,
gpointer data)
{
- CommoditiesDialog *cd = data;
+ auto cd = static_cast<CommoditiesDialog*>(data);
if (event->keyval == GDK_KEY_Escape)
{
@@ -450,14 +454,13 @@ gnc_commodities_window_key_press_cb (GtkWidget *widget, GdkEventKey *event,
void
gnc_commodities_dialog (GtkWidget * parent)
{
- CommoditiesDialog *cd;
gint component_id;
if (gnc_forall_gui_components (DIALOG_COMMODITIES_CM_CLASS,
show_handler, NULL))
return;
- cd = g_new0 (CommoditiesDialog, 1);
+ auto cd = static_cast<CommoditiesDialog*>(g_new0 (CommoditiesDialog, 1));
gnc_commodities_dialog_create (parent, cd);
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 3ce4eb2bf7..0e69772a51 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -63,7 +63,7 @@ gnucash/gnome/business-options-gnome.cpp
gnucash/gnome/business-urls.c
gnucash/gnome/dialog-billterms.c
gnucash/gnome/dialog-choose-owner.c
-gnucash/gnome/dialog-commodities.c
+gnucash/gnome/dialog-commodities.cpp
gnucash/gnome/dialog-customer.c
gnucash/gnome/dialog-custom-report.c
gnucash/gnome/dialog-date-close.c
Summary of changes:
gnucash/gnome/CMakeLists.txt | 2 +-
...dialog-commodities.c => dialog-commodities.cpp} | 33 ++++++++++++----------
po/POTFILES.in | 2 +-
3 files changed, 20 insertions(+), 17 deletions(-)
rename gnucash/gnome/{dialog-commodities.c => dialog-commodities.cpp} (95%)
More information about the gnucash-changes
mailing list