From d42a0ffc2e124ec5076642840c94642f88362018 Mon Sep 17 00:00:00 2001 From: Markus Koch Date: Sat, 4 Feb 2017 18:31:05 +0100 Subject: [PATCH] Added Title/Summary header --- glade/mainWindow.glade | 80 ++++++++++++++++++++++++++++++++++++------ src/mainwindow.c | 20 +++++++++-- src/mainwindow.h | 1 + 3 files changed, 87 insertions(+), 14 deletions(-) diff --git a/glade/mainWindow.glade b/glade/mainWindow.glade index b25a968..10bdfe0 100644 --- a/glade/mainWindow.glade +++ b/glade/mainWindow.glade @@ -208,22 +208,80 @@ - + True - True - in + False + vertical - + + True + False + 4 + 4 + 2 + 2 + + + True + False + Please select an entry in the list above. + True + word-char + + + + + + False + True + 0 + + + + + + + + False + True + 0 + + + + + True + False + + + False + True + 1 + + + + True True - False - word-char - 4 - 4 - 4 - 4 - entryTextBuffer + in + + + True + True + False + word-char + 4 + 4 + 4 + 4 + entryTextBuffer + + + + True + True + 2 + diff --git a/src/mainwindow.c b/src/mainwindow.c index dfd8a5d..0ab6c0c 100644 --- a/src/mainwindow.c +++ b/src/mainwindow.c @@ -243,6 +243,7 @@ struct mainWindow *mainWindow_new() mainWindow->checkSearchTitle = GTK_WIDGET(gtk_builder_get_object(builder, "checkSearchTitle")); mainWindow->checkSearchTags = GTK_WIDGET(gtk_builder_get_object(builder, "checkSearchTags")); mainWindow->checkSearchText = GTK_WIDGET(gtk_builder_get_object(builder, "checkSearchText")); + mainWindow->labelSummary = GTK_WIDGET(gtk_builder_get_object(builder, "labelSummary")); mainWindow->entryListView = GTK_TREE_VIEW(gtk_builder_get_object(builder, "entryListView")); mainWindow->entryListSelection = GTK_TREE_SELECTION(gtk_builder_get_object(builder, "entryListSelection")); mainWindow->textBuffer = GTK_TEXT_BUFFER(gtk_builder_get_object(builder, "entryTextBuffer")); @@ -345,14 +346,27 @@ void mainWindow_entrySelected(GtkWidget *widget, gpointer user_data) GtkTreeSelection *selection; GtkTreeModel *model; GtkTreeIter iter; + gchar *text; + gchar *title; + gchar *summary; gchar *temp; selection = gtk_tree_view_get_selection(mainWindow->entryListView); if (gtk_tree_selection_get_selected(selection, &model, &iter)) { - gtk_tree_model_get(model, &iter, COL_TEXT, &temp, -1); - gtk_text_buffer_set_text(mainWindow->textBuffer, temp, g_utf8_strlen(temp, -1)); - fflush(stdout); + gtk_tree_model_get(model, &iter, COL_TEXT, &text, -1); + gtk_text_buffer_set_text(mainWindow->textBuffer, text, g_utf8_strlen(text, -1)); + g_free(text); + + gtk_tree_model_get(model, &iter, COL_SUMMARY, &summary, -1); + gtk_tree_model_get(model, &iter, COL_TITLE, &title, -1); + temp = g_strdup_printf("%s: %s", title, summary); + gtk_label_set_markup(GTK_LABEL(mainWindow->labelSummary), temp); + g_free(title); + g_free(summary); g_free(temp); + } else { + gtk_text_buffer_set_text(mainWindow->textBuffer, "", 0); + gtk_label_set_text(GTK_LABEL(mainWindow->labelSummary), ""); } } diff --git a/src/mainwindow.h b/src/mainwindow.h index d172e84..de0bba3 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -17,6 +17,7 @@ struct mainWindow { GtkWidget *checkSearchTitle; GtkWidget *checkSearchTags; GtkWidget *checkSearchText; + GtkWidget *labelSummary; GtkTreeView *entryListView; GtkTreeSelection *entryListSelection; GtkTextBuffer *textBuffer;