From e4f711b310af33acad768ace4b58e6837f956f4f Mon Sep 17 00:00:00 2001 From: Markus Koch Date: Sat, 14 Jul 2018 17:41:29 +0200 Subject: [PATCH] Add button to open the workspace directory to the settings window --- glade/mainWindow.glade | 13 +++++++++++++ src/mainwindow.c | 15 +++++++++++++++ src/mainwindow.h | 1 + 3 files changed, 29 insertions(+) diff --git a/glade/mainWindow.glade b/glade/mainWindow.glade index 4ae3a65..ba68f0c 100644 --- a/glade/mainWindow.glade +++ b/glade/mainWindow.glade @@ -640,6 +640,19 @@ 0 + + + Open Workspace in File Browser + True + True + True + + + False + True + 1 + + diff --git a/src/mainwindow.c b/src/mainwindow.c index 0b91ac1..9804442 100644 --- a/src/mainwindow.c +++ b/src/mainwindow.c @@ -527,6 +527,13 @@ static void mainWindow_settings_buttonCustomNewFileDateFormat_clicked(GtkComboBo } } +static void mainWindow_settings_buttonOpenWorkspaceFolder_clicked(GtkComboBox *widget, gpointer user_data) +{ + struct mainWindow *mainWindow = (struct mainWindow *)user_data; + + mainWindow_openExternalEditor(mainWindow->currentWorkspaceUrl); +} + const gchar *newDateFormats[] = {"%d.%m.%Y %H:%M", "%Y-%m-%d %H:%M", NULL}; @@ -605,6 +612,11 @@ static void mainWindow_configure_settings_dialog(struct mainWindow *mainWindow) (GCallback) mainWindow_settings_buttonCustomNewFileDateFormat_clicked, mainWindow); + g_signal_connect(mainWindow->settingsDialog.buttonOpenWorkspaceFolder, + "clicked", + (GCallback) mainWindow_settings_buttonOpenWorkspaceFolder_clicked, + mainWindow); + g_signal_connect(mainWindow->settingsDialog.settingsDialog, "delete-event", (GCallback) mainWindow_settings_delete_event, @@ -664,6 +676,7 @@ struct mainWindow *mainWindow_new() mainWindow->settingsDialog.stackNewDateFormat = GTK_WIDGET(gtk_builder_get_object(builder, "stackNewDateFormat")); mainWindow->settingsDialog.entryNewDateFormat = GTK_WIDGET(gtk_builder_get_object(builder, "entryNewDateFormat")); mainWindow->settingsDialog.buttonCustomNewFileDateFormat = GTK_WIDGET(gtk_builder_get_object(builder, "buttonCustomNewFileDateFormat")); + mainWindow->settingsDialog.buttonOpenWorkspaceFolder = GTK_WIDGET(gtk_builder_get_object(builder, "buttonOpenWorkspaceFolder")); mainWindow->filterSettings.time_start = 0; mainWindow->filterSettings.time_end = -1; @@ -711,6 +724,8 @@ void mainWindow_set_meta_information(struct mainWindow *mainWindow, mainWindow->time_latest = time_latest; mainWindow->filterSettings.hide_all = hide_all; gtk_widget_set_sensitive(mainWindow->mainPane, !hide_all); + gtk_widget_set_sensitive(mainWindow->settingsDialog.buttonOpenWorkspaceFolder, + !hide_all); mainWindow_clearSearch(NULL, mainWindow); } diff --git a/src/mainwindow.h b/src/mainwindow.h index 1b1dfe2..6c46d29 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -93,6 +93,7 @@ struct mainWindow { GtkWidget *stackNewDateFormat; GtkWidget *comboNewDateFormat; GtkWidget *buttonCustomNewFileDateFormat; + GtkWidget *buttonOpenWorkspaceFolder; GtkWidget *entryNewDateFormat; } settingsDialog; };