diff --git a/source/ubl-settings-logging.c b/source/ubl-settings-logging.c index 171a4eb..f2a6aa2 100644 --- a/source/ubl-settings-logging.c +++ b/source/ubl-settings-logging.c @@ -307,23 +307,34 @@ void on_inspector_update(GtkWidget *self, inspector_window *window){ } -GtkWidget *yon_inspector_add_terminal(inspector_window *window,char *page_name){ +GtkWidget *yon_inspector_add_terminal(inspector_window *window,char *page_name,int mode){ GtkBuilder *builder = gtk_builder_new_from_resource(glade_terminal_path); GtkWidget *box = yon_gtk_builder_get_widget(builder,"TerminalBox"); GtkWidget *terminal = yon_gtk_builder_get_widget(builder,"LoggingTerminal"); + GtkWidget *unfound_label = yon_gtk_builder_get_widget(builder,"UnfoundLabel"); GtkWidget *label = gtk_label_new(page_name); gtk_notebook_append_page(GTK_NOTEBOOK(window->LoggingNotebook),box,label); - GdkRGBA rgba; - rgba.alpha=1; - rgba.red=0.95; - rgba.green=0.95; - rgba.blue=0.95; - vte_terminal_set_color_background(VTE_TERMINAL(terminal),&rgba); - rgba.red=0; - rgba.green=0; - rgba.blue=0; - vte_terminal_set_color_foreground(VTE_TERMINAL(terminal),&rgba); - return terminal; + if (mode){ + GdkRGBA rgba; + rgba.alpha=1; + rgba.red=0.95; + rgba.green=0.95; + rgba.blue=0.95; + vte_terminal_set_color_cursor(VTE_TERMINAL(terminal),&rgba); + vte_terminal_set_color_background(VTE_TERMINAL(terminal),&rgba); + rgba.red=0; + rgba.green=0; + rgba.blue=0; + vte_terminal_set_color_foreground(VTE_TERMINAL(terminal),&rgba); + return terminal; + } else { + gtk_widget_destroy(terminal); + gtk_widget_show(unfound_label); + char *label_text = yon_char_append(page_name,PATH_NOT_FOUND_LABEL); + gtk_label_set_text(GTK_LABEL(unfound_label),label_text); + return NULL; + } + } void on_inspector_open(GtkWidget *self, main_window *widgets){ @@ -364,13 +375,19 @@ void on_inspector_open(GtkWidget *self, main_window *widgets){ if (strcmp(name,"journald")){ window->last_mode=-1; for (int i=0;ijournal_size;i++){ - if (!access(window->journal_paths[i],F_OK)||!window->terminals) - yon_dictionary_add_or_create_if_exists_with_data(window->terminals,window->journal_paths[i],yon_inspector_add_terminal(window,window->journal_paths[i])); + if (!access(window->journal_paths[i],F_OK)){ + yon_dictionary_add_or_create_if_exists_with_data(window->terminals,window->journal_paths[i],yon_inspector_add_terminal(window,window->journal_paths[i],1)); + } + else{ + GtkWidget *terminal = yon_inspector_add_terminal(window,window->journal_paths[i],0); + if (terminal) + yon_dictionary_add_or_create_if_exists_with_data(window->terminals,window->journal_paths[i],terminal); + } } gtk_widget_hide(window->JournalActionsBox); } else { window->last_mode=0; - yon_dictionary_add_or_create_if_exists_with_data(window->terminals,"Journald",yon_inspector_add_terminal(window,"Journald")); + yon_dictionary_add_or_create_if_exists_with_data(window->terminals,"Journald",yon_inspector_add_terminal(window,"Journald",1)); } on_inspector_update(window->UpdateButton,window); @@ -2365,6 +2382,9 @@ main_window *setup_window(){ } } } else { + if (access(custom_logs_saving_file_path,F_OK)){ + yon_file_create_full_path(custom_logs_saving_file_path,0777); + } FILE *fl = fopen(custom_logs_saving_file_path,"w"); fclose(fl); } @@ -2424,7 +2444,7 @@ int main(int argc, char *argv[], char **envp){ { NULL, 0, NULL, 0 } }; for (int i=0;i + + 100 + 1 + 10 + True False - + True - True - natural - natural - UTF-8 - 0 - True - False + False + vertical + + + True + True + natural + adjustment3 + natural + off + underline + UTF-8 + True + 0 + True + False + + + True + True + 0 + + + + + False + Label + 0.019999999552965164 + + + + + + + False + True + 1 + + True @@ -28,6 +65,7 @@ True False vertical + adjustment3 False @@ -36,9 +74,4 @@ - - 100 - 1 - 10 - diff --git a/ubl-settings-logging.pot b/ubl-settings-logging.pot index 21106d4..6f16734 100644 --- a/ubl-settings-logging.pot +++ b/ubl-settings-logging.pot @@ -755,6 +755,10 @@ msgstr "" msgid "Value:" msgstr "" +#: source/ubl-strings.h:202 +msgid ": no such file(s)" +msgstr "" + msgid "System event log rotation service" msgstr "" diff --git a/ubl-settings-logging_ru.po b/ubl-settings-logging_ru.po index 5a22a2e..b4a5675 100644 --- a/ubl-settings-logging_ru.po +++ b/ubl-settings-logging_ru.po @@ -769,6 +769,10 @@ msgstr "Исполнение" msgid "Value:" msgstr "Значение:" +#: source/ubl-strings.h:202 +msgid ": no such file(s)" +msgstr ": файл(ы) не найден(ы)" + msgid "System event log rotation service" msgstr "Служба ротации системных журналов событий"