Skip to content

Commit

Permalink
Start of fix dialog-find-account
Browse files Browse the repository at this point in the history
  • Loading branch information
Bob-IT committed Apr 7, 2024
1 parent aef2b73 commit 56a56eb
Show file tree
Hide file tree
Showing 2 changed files with 113 additions and 215 deletions.
41 changes: 22 additions & 19 deletions gnucash/gnome/dialog-find-account.c
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,7 @@ gnc_find_account_dialog_window_delete_event_cb (GtkWidget *widget,
{
FindAccountDialog *facc_dialog = user_data;
// this cb allows the window size to be saved on closing with the X
gnc_save_window_size (GNC_PREFS_GROUP,
GTK_WINDOW(facc_dialog->window));
gnc_save_window_size (GNC_PREFS_GROUP, GTK_WINDOW(widget));
return FALSE;
}

Expand All @@ -100,7 +99,7 @@ gnc_find_account_dialog_window_destroy_cb (GtkWidget *object, gpointer user_data

if (facc_dialog->window)
{
//FIXME gtk4 gtk_window_destroy (GTK_WINDOW(facc_dialog->window));
gtk_window_destroy (GTK_WINDOW(facc_dialog->window));
facc_dialog->window = NULL;
}
g_free (facc_dialog);
Expand Down Expand Up @@ -229,7 +228,7 @@ get_account_info (FindAccountDialog *facc_dialog, gboolean use_saved_filter)
GtkTreeModel *model;

/* Get the state of the root radio button */
radio_root = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(facc_dialog->radio_root));
radio_root = gtk_check_button_get_active (GTK_CHECK_BUTTON(facc_dialog->radio_root));

/* Get list of Accounts */
if ((facc_dialog->account == NULL) || (radio_root == TRUE))
Expand Down Expand Up @@ -354,14 +353,12 @@ gnc_find_account_dialog_create (GtkWidget *parent, FindAccountDialog *facc_dialo
GtkWidget *window;
GtkBuilder *builder;
GtkTreeSelection *selection;

GtkTreeViewColumn *tree_column;
GtkCellRenderer *cr;
GtkWidget *button;

ENTER(" ");
builder = gtk_builder_new();
gtk_builder_set_current_object (builder, G_OBJECT(facc_dialog));
gnc_builder_add_from_file (builder, "dialog-find-account.glade", "list-store");
gnc_builder_add_from_file (builder, "dialog-find-account.glade", "find_account_window");

Expand All @@ -382,31 +379,35 @@ gnc_find_account_dialog_create (GtkWidget *parent, FindAccountDialog *facc_dialo
facc_dialog->radio_root = GTK_WIDGET(gtk_builder_get_object (builder, "radio-root"));
facc_dialog->radio_subroot = GTK_WIDGET(gtk_builder_get_object (builder, "radio-subroot"));

g_signal_connect (facc_dialog->radio_root, "toggled",
g_signal_connect (G_OBJECT(facc_dialog->radio_root), "toggled",
G_CALLBACK(list_type_selected_cb), (gpointer)facc_dialog);

facc_dialog->filter_text_entry = GTK_WIDGET(gtk_builder_get_object (builder, "filter-text-entry"));
facc_dialog->sub_label = GTK_WIDGET(gtk_builder_get_object (builder, "sub-label"));
facc_dialog->radio_frame = GTK_WIDGET(gtk_builder_get_object (builder, "frame-radio"));
facc_dialog->filter_button = GTK_WIDGET(gtk_builder_get_object (builder, "filter-button"));
g_signal_connect (facc_dialog->filter_button, "clicked",
g_signal_connect (G_OBJECT(facc_dialog->filter_button), "clicked",
G_CALLBACK(filter_button_cb), (gpointer)facc_dialog);
g_signal_connect (facc_dialog->filter_text_entry, "activate",
g_signal_connect (G_OBJECT(facc_dialog->filter_text_entry), "activate",
G_CALLBACK(filter_active_cb), (gpointer)facc_dialog);

button = GTK_WIDGET(gtk_builder_get_object (builder, "jumpto_button"));
g_signal_connect(button, "clicked", G_CALLBACK(gnc_find_account_dialog_jump_button_cb), facc_dialog);
g_signal_connect (G_OBJECT(button), "clicked",
G_CALLBACK(gnc_find_account_dialog_jump_button_cb), facc_dialog);
button = GTK_WIDGET(gtk_builder_get_object (builder, "check_button"));
g_signal_connect(button, "clicked", G_CALLBACK(gnc_find_account_dialog_check_button_cb), facc_dialog);
g_signal_connect (G_OBJECT(button), "toggled",
G_CALLBACK(gnc_find_account_dialog_check_button_cb), facc_dialog);
button = GTK_WIDGET(gtk_builder_get_object (builder, "close_button"));
g_signal_connect(button, "clicked", G_CALLBACK(gnc_find_account_dialog_close_button_cb), facc_dialog);
g_signal_connect (G_OBJECT(button), "clicked",
G_CALLBACK(gnc_find_account_dialog_close_button_cb), facc_dialog);

facc_dialog->view = GTK_WIDGET(gtk_builder_get_object (builder, "treeview"));
g_signal_connect (facc_dialog->view, "row-activated",
G_CALLBACK(row_double_clicked), (gpointer)facc_dialog);
g_signal_connect (G_OBJECT(facc_dialog->view), "row-activated",
G_CALLBACK(row_double_clicked), (gpointer)facc_dialog);

// Set grid lines option to preference
gtk_tree_view_set_grid_lines (GTK_TREE_VIEW(facc_dialog->view), gnc_tree_view_get_grid_lines_pref ());
gtk_tree_view_set_grid_lines (GTK_TREE_VIEW(facc_dialog->view),
gnc_tree_view_get_grid_lines_pref ());

selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(facc_dialog->view));
gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE);
Expand Down Expand Up @@ -467,10 +468,10 @@ gnc_find_account_dialog_create (GtkWidget *parent, FindAccountDialog *facc_dialo
gtk_tree_view_column_set_attributes (tree_column, cr, "icon-name", TAX, NULL);
gtk_cell_renderer_set_alignment (cr, 0.5, 0.5);

g_signal_connect (facc_dialog->window, "destroy",
g_signal_connect (G_OBJECT(facc_dialog->window), "destroy",
G_CALLBACK(gnc_find_account_dialog_window_destroy_cb), facc_dialog);

g_signal_connect (facc_dialog->window, "delete-event",
g_signal_connect (G_OBJECT(facc_dialog->window), "close-request",
G_CALLBACK(gnc_find_account_dialog_window_delete_event_cb), facc_dialog);

GtkEventController *event_controller = gtk_event_controller_key_new ();
Expand All @@ -480,12 +481,13 @@ gnc_find_account_dialog_create (GtkWidget *parent, FindAccountDialog *facc_dialo
G_CALLBACK(gnc_find_account_dialog_window_key_press_cb), facc_dialog);

//FIXME gtk4 gtk_builder_connect_signals_full (builder, gnc_builder_connect_full_func, facc_dialog);
//not sure about this, something to do with GtkBuilderScope and templates

g_object_unref (G_OBJECT(builder));

gnc_restore_window_size (GNC_PREFS_GROUP, GTK_WINDOW(facc_dialog->window), GTK_WINDOW(parent));

//FIXME gtk4 gtk_widget_show_all (GTK_WIDGET(facc_dialog->window));
gtk_widget_set_visible (GTK_WIDGET(facc_dialog->window), TRUE);

if (facc_dialog->account != NULL)
{
Expand Down Expand Up @@ -524,7 +526,8 @@ close_handler (gpointer user_data)
ENTER(" ");
gnc_save_window_size (GNC_PREFS_GROUP,
GTK_WINDOW(facc_dialog->window));
//FIXME gtk4 gtk_window_destroy (GTK_WINDOW(facc_dialog->window));

gtk_window_destroy (GTK_WINDOW(facc_dialog->window));
LEAVE(" ");
}

Expand Down
Loading

0 comments on commit 56a56eb

Please sign in to comment.