X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fhomebank;a=blobdiff_plain;f=src%2Fui-assist-start.c;h=154f68963fef5f753cffdb30f8467479ef5e2a2d;hp=d76cb31ffc3a096f61060405d36281222f7da973;hb=236cb5e47660876f46488ea8f76ecd5bebfa1fac;hpb=b84403141a4c3a32a594800eb3fcabdc856461f8 diff --git a/src/ui-assist-start.c b/src/ui-assist-start.c index d76cb31..154f689 100644 --- a/src/ui-assist-start.c +++ b/src/ui-assist-start.c @@ -1,5 +1,5 @@ /* HomeBank -- Free, easy, personal accounting for everyone. - * Copyright (C) 1995-2017 Maxime DOYEN + * Copyright (C) 1995-2019 Maxime DOYEN * * This file is part of HomeBank. * @@ -20,7 +20,7 @@ #include "homebank.h" #include "ui-assist-start.h" -#include "dsp_mainwindow.h" +#include "dsp-mainwindow.h" #include "ui-currency.h" @@ -35,7 +35,7 @@ /* our global datas */ extern struct HomeBank *GLOBALS; -extern gchar *CYA_ACC_TYPE[]; +extern HbKvData CYA_ACC_TYPE[]; /* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = */ @@ -47,6 +47,9 @@ struct assist_start_data *data = user_data; Account *item; gdouble value; + DB( g_print("\n[ui-start] apply\n") ); + + /* set owner */ gchar *owner = (gchar *)gtk_entry_get_text(GTK_ENTRY(data->ST_owner)); if (owner && *owner) @@ -81,8 +84,7 @@ gdouble value; } item->kcur = GLOBALS->kcur; - - item->type = gtk_combo_box_get_active(GTK_COMBO_BOX(data->CY_type)); + item->type = hbtk_combo_box_get_active_id(GTK_COMBO_BOX_TEXT(data->CY_type)); item->number = g_strdup(gtk_entry_get_text(GTK_ENTRY(data->ST_number))); @@ -98,6 +100,8 @@ gdouble value; GLOBALS->changes_count++; //our global list has changed, so update the treeview + //todo: #1693998 crappy to do this here + account_compute_balances (); ui_mainwindow_update(GLOBALS->mainwindow, GINT_TO_POINTER(UF_TITLE+UF_SENSITIVE+UF_BALANCE+UF_REFRESHALL)); } @@ -107,6 +111,9 @@ on_assistant_close_cancel (GtkWidget *widget, gpointer user_data) { struct assist_start_data *data = user_data; + DB( g_print("\n[ui-start] close/cancel\n") ); + + //data = g_object_get_data(G_OBJECT(gtk_widget_get_ancestor(widget, GTK_TYPE_WINDOW)), "inst_data"); gtk_widget_destroy (data->window); @@ -123,6 +130,9 @@ struct assist_start_data *data = user_data; gint current_page, n_pages; gchar *title; + DB( g_print("\n[ui-start] prepare\n") ); + + current_page = gtk_assistant_get_current_page (GTK_ASSISTANT (widget)); n_pages = gtk_assistant_get_n_pages (GTK_ASSISTANT (widget)); @@ -194,20 +204,22 @@ on_entry_changed (GtkWidget *widget, gpointer data) static void ui_start_assistant_property_change_action(GtkWidget *widget, gpointer user_data) { struct assist_start_data *data; -Currency4217 *curfmt; +struct curSelectContext selectCtx; DB( g_print("\n[ui-start] property_change_action\n") ); data = g_object_get_data(G_OBJECT(gtk_widget_get_ancestor(widget, GTK_TYPE_WINDOW)), "inst_data"); data->curfmt = NULL; - - curfmt = ui_cur_select_dialog_new(GTK_WINDOW(data->window), CUR_SELECT_MODE_BASE); - if( curfmt != NULL ) + ui_cur_select_dialog_new(GTK_WINDOW(data->window), CUR_SELECT_MODE_BASE, &selectCtx); + if( selectCtx.cur_4217 != NULL ) { + Currency4217 *curfmt; gchar label[128]; gchar *name; + curfmt = selectCtx.cur_4217; + DB( g_printf("- user selected: '%s' '%s'\n", curfmt->curr_iso_code, curfmt->name) ); data->curfmt = curfmt; @@ -226,6 +238,9 @@ ui_start_assistant_property_fill (GtkWidget *assistant, struct assist_start_data Currency *cur; gchar label[128]; + DB( g_print("\n[ui-start] property_fill\n") ); + + gtk_entry_set_text(GTK_ENTRY(data->ST_owner), g_get_real_name ()); cur = da_cur_get (GLOBALS->kcur); @@ -357,7 +372,7 @@ gint row; gtk_box_pack_start (GTK_BOX (box), table, TRUE, TRUE, 0); row = 0; - label = make_label_group(_("Informations")); + label = make_label_group(_("Information")); gtk_grid_attach (GTK_GRID (table), label, 0, row, 3, 1); row++; @@ -375,7 +390,8 @@ gint row; row++; label = make_label_widget(_("_Type:")); gtk_grid_attach (GTK_GRID (table), label, 1, row, 1, 1); - widget = make_cycle(label, CYA_ACC_TYPE); + //widget = make_cycle(label, CYA_ACC_TYPE); + widget = hbtk_combo_box_new_with_data(label, CYA_ACC_TYPE); data->CY_type = widget; gtk_widget_set_hexpand(widget, TRUE); gtk_grid_attach (GTK_GRID (table), widget, 2, row, 1, 1); @@ -443,6 +459,9 @@ ui_start_assistant (void) struct assist_start_data *data; GtkWidget *assistant, *page; + DB( g_print("\n[ui-start] new\n") ); + + data = g_malloc0(sizeof(struct assist_start_data)); if(!data) return NULL;