Various fixes

pull/46/head
parent 85f3d43cbe
commit ed8b85e83a

@ -624,7 +624,11 @@ void on_logrotate_save(GtkWidget *self, dictionary *dict){
paths = yon_char_unite(paths,strcmp(paths,"") ? "," : "", cur_path,NULL); paths = yon_char_unite(paths,strcmp(paths,"") ? "," : "", cur_path,NULL);
} }
if(!window->paths) if(!window->paths)
if (matched==path_amount) return; if (matched==path_amount) {
yon_ubl_status_highlight_incorrect(gtk_widget_get_parent(window->LogPathsTree));
yon_ubl_status_box_spawn(GTK_CONTAINER(window->StatusBox),REPEATED_PATHS_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
return;
}
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->RotationPeriodCheck))){ if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->RotationPeriodCheck))){
int active = gtk_combo_box_get_active(GTK_COMBO_BOX(window->RotationPeriodMainCombo)); int active = gtk_combo_box_get_active(GTK_COMBO_BOX(window->RotationPeriodMainCombo));
switch (active){ switch (active){
@ -636,7 +640,7 @@ void on_logrotate_save(GtkWidget *self, dictionary *dict){
int weekday = gtk_combo_box_get_active(GTK_COMBO_BOX(window->RotationPeriodAdditionalCombo)); int weekday = gtk_combo_box_get_active(GTK_COMBO_BOX(window->RotationPeriodAdditionalCombo));
weekday++; weekday++;
if (weekday==7) weekday=0; if (weekday==7) weekday=0;
period = yon_char_unite(period,", ",yon_char_from_int(weekday),NULL); period = yon_char_unite(period," ",yon_char_from_int(weekday),NULL);
break; break;
case 3: period = "monthly"; case 3: period = "monthly";
break; break;
@ -776,22 +780,22 @@ void on_logrotate_save(GtkWidget *self, dictionary *dict){
if (!yon_char_is_empty(before_once)) { if (!yon_char_is_empty(before_once)) {
before_once = yon_char_replace(before_once,"\"","=--"); before_once = yon_char_replace(before_once,"\"","=--");
before_once = yon_char_replace(before_once,"=--","\\\""); before_once = yon_char_replace(before_once,"=--","\\\"");
firstaction = yon_char_append("firstaction ",before_once); firstaction = yon_char_append("firstaction,",before_once);
} }
if (!yon_char_is_empty(after_once)) { if (!yon_char_is_empty(after_once)) {
after_once = yon_char_replace(after_once,"\"","=--"); after_once = yon_char_replace(after_once,"\"","=--");
after_once = yon_char_replace(after_once,"=--","\\\""); after_once = yon_char_replace(after_once,"=--","\\\"");
lastaction = yon_char_append("lastaction ",after_once); lastaction = yon_char_append("lastaction,",after_once);
} }
if (!yon_char_is_empty(before)) { if (!yon_char_is_empty(before)) {
before = yon_char_replace(before,"\"","=--"); before = yon_char_replace(before,"\"","=--");
before = yon_char_replace(before,"=--","\\\""); before = yon_char_replace(before,"=--","\\\"");
prerotate = yon_char_append("prerotate ",before); prerotate = yon_char_append("prerotate,",before);
} }
if (!yon_char_is_empty(after)) { if (!yon_char_is_empty(after)) {
after = yon_char_replace(after,"\"","=--"); after = yon_char_replace(after,"\"","=--");
after = yon_char_replace(after,"=--","\\\""); after = yon_char_replace(after,"=--","\\\"");
postrotate = yon_char_append("postrotate ",after); postrotate = yon_char_append("postrotate,",after);
} }
if (!yon_char_is_empty(firstaction)||!yon_char_is_empty(after_once)||!yon_char_is_empty(before)||!yon_char_is_empty(after)) if (!yon_char_is_empty(firstaction)||!yon_char_is_empty(after_once)||!yon_char_is_empty(before)||!yon_char_is_empty(after))
endscript = yon_char_append("endscript ",endwork); endscript = yon_char_append("endscript ",endwork);
@ -883,6 +887,7 @@ logrotate_configure_window *yon_logrotate_window_new(char *paths, logrotate_wind
window->CommandBeforeEntry=yon_gtk_builder_get_widget(builder,"CommandBeforeEntry"); window->CommandBeforeEntry=yon_gtk_builder_get_widget(builder,"CommandBeforeEntry");
window->CommandAfterEntry=yon_gtk_builder_get_widget(builder,"CommandAfterEntry"); window->CommandAfterEntry=yon_gtk_builder_get_widget(builder,"CommandAfterEntry");
window->EndworkCommandEntry=yon_gtk_builder_get_widget(builder,"EndworkCommandEntry"); window->EndworkCommandEntry=yon_gtk_builder_get_widget(builder,"EndworkCommandEntry");
window->StatusBox=yon_gtk_builder_get_widget(builder,"StatusBox");
gtk_window_set_title(GTK_WINDOW(window->MainWindow),TITLE_LABEL); gtk_window_set_title(GTK_WINDOW(window->MainWindow),TITLE_LABEL);
if (dialog) if (dialog)
gtk_window_set_transient_for(GTK_WINDOW(window->MainWindow),GTK_WINDOW(dialog->Window)); gtk_window_set_transient_for(GTK_WINDOW(window->MainWindow),GTK_WINDOW(dialog->Window));
@ -953,6 +958,8 @@ logrotate_configure_window *yon_logrotate_window_new(char *paths, logrotate_wind
g_signal_connect(G_OBJECT(window->EmailCombo),"changed",G_CALLBACK(on_combo_activate_first),window->EmailEntry); g_signal_connect(G_OBJECT(window->EmailCombo),"changed",G_CALLBACK(on_combo_activate_first),window->EmailEntry);
g_signal_connect(G_OBJECT(window->EmailCombo),"changed",G_CALLBACK(on_combo_activate_first),window->EmailContentsCombo); g_signal_connect(G_OBJECT(window->EmailCombo),"changed",G_CALLBACK(on_combo_activate_first),window->EmailContentsCombo);
g_signal_connect(G_OBJECT(window->RotationPeriodMainCombo),"changed",G_CALLBACK(on_combo_activate_second),window->RotationPeriodAdditionalCombo);
g_signal_connect(G_OBJECT(window->FileAmountButton),"clicked",G_CALLBACK(on_filechooser_open),window); g_signal_connect(G_OBJECT(window->FileAmountButton),"clicked",G_CALLBACK(on_filechooser_open),window);
g_signal_connect(G_OBJECT(window->CreateLogButton),"clicked",G_CALLBACK(on_rules_open),window->CreateLogEntry); g_signal_connect(G_OBJECT(window->CreateLogButton),"clicked",G_CALLBACK(on_rules_open),window->CreateLogEntry);
@ -986,10 +993,13 @@ logrotate_configure_window *yon_logrotate_window_new(char *paths, logrotate_wind
} else if (!strcmp(parsed[i],"daily")){ } else if (!strcmp(parsed[i],"daily")){
gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationPeriodMainCombo),1); gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationPeriodMainCombo),1);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->RotationPeriodCheck),1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->RotationPeriodCheck),1);
}else if (!strcmp(parsed[i],"weekly")){ }else if (strstr(parsed[i],"weekly")){
gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationPeriodMainCombo),2); gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationPeriodMainCombo),2);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->RotationPeriodCheck),1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->RotationPeriodCheck),1);
gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationPeriodAdditionalCombo),atoi(parsed[i+1])); int dayofweek = atoi(strstr(parsed[i]," ")+1);
if (dayofweek==0) dayofweek=7;
dayofweek--;
gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationPeriodAdditionalCombo),dayofweek);
}else if (!strcmp(parsed[i],"monthly")){ }else if (!strcmp(parsed[i],"monthly")){
gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationPeriodMainCombo),3); gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationPeriodMainCombo),3);
}else if (!strcmp(parsed[i],"yearly")){ }else if (!strcmp(parsed[i],"yearly")){
@ -1039,7 +1049,7 @@ logrotate_configure_window *yon_logrotate_window_new(char *paths, logrotate_wind
// //
}else if (strstr(parsed[i],"size")){ }else if (strstr(parsed[i],"size")){
int sizemod = yon_size_get_int_from_letter(parsed[i][strlen(parsed[i])-1]); int sizemod = yon_size_get_int_from_letter(parsed[i][strlen(parsed[i])-1]);
gtk_spin_button_set_value(GTK_SPIN_BUTTON(window->JournalMaxSizeSpin),atol(parsed[i])); gtk_spin_button_set_value(GTK_SPIN_BUTTON(window->JournalMaxSizeSpin),atol(strstr(parsed[i], " ")+1));
gtk_combo_box_set_active(GTK_COMBO_BOX(window->JournalMaxSizeCombo),sizemod); gtk_combo_box_set_active(GTK_COMBO_BOX(window->JournalMaxSizeCombo),sizemod);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->JournalMaxSizeCheck),1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->JournalMaxSizeCheck),1);
}else if (!strcmp(parsed[i],"copytruncate")){ }else if (!strcmp(parsed[i],"copytruncate")){
@ -1111,6 +1121,7 @@ logrotate_configure_window *yon_logrotate_window_new(char *paths, logrotate_wind
void on_logrotate_add(GtkWidget *self, logrotate_window *dialog){ void on_logrotate_add(GtkWidget *self, logrotate_window *dialog){
logrotate_configure_window *window = yon_logrotate_window_new(NULL,NULL); logrotate_configure_window *window = yon_logrotate_window_new(NULL,NULL);
gtk_tree_selection_unselect_all(gtk_tree_view_get_selection(GTK_TREE_VIEW(dialog->MainTree))); gtk_tree_selection_unselect_all(gtk_tree_view_get_selection(GTK_TREE_VIEW(dialog->MainTree)));
gtk_window_set_transient_for(GTK_WINDOW(window->MainWindow),GTK_WINDOW(dialog->Window));
gtk_widget_show(window->MainWindow); gtk_widget_show(window->MainWindow);
gtk_widget_set_sensitive(window->LogNameEntry,1); gtk_widget_set_sensitive(window->LogNameEntry,1);
gtk_widget_set_sensitive(window->LogDescriptionEntry,1); gtk_widget_set_sensitive(window->LogDescriptionEntry,1);
@ -1134,7 +1145,7 @@ void on_logrotate_edit(GtkWidget *self, logrotate_window *window){
logrotate_configure_window *dialog = yon_logrotate_window_new(paths,window); logrotate_configure_window *dialog = yon_logrotate_window_new(paths,window);
gtk_widget_show(dialog->MainWindow); gtk_widget_show(dialog->MainWindow);
gtk_tree_model_get(model,&iter,0,&name,1,&paths,2,&description,-1); gtk_tree_model_get(model,&iter,0,&name,1,&paths,2,&description,-1);
gtk_entry_set_text(GTK_ENTRY(dialog->LogNameEntry),name); gtk_entry_set_text(GTK_ENTRY(dialog->LogNameEntry),name ? name : "");
gtk_entry_set_text(GTK_ENTRY(dialog->LogDescriptionEntry),description ? description : ""); gtk_entry_set_text(GTK_ENTRY(dialog->LogDescriptionEntry),description ? description : "");
gtk_widget_set_can_focus(dialog->LogNameEntry,0); gtk_widget_set_can_focus(dialog->LogNameEntry,0);
// gtk_widget_set_can_focus(dialog->LogDescriptionEntry,0); // gtk_widget_set_can_focus(dialog->LogDescriptionEntry,0);
@ -1229,7 +1240,7 @@ void on_logrotate_tab_selection_changed(GtkWidget *self, logrotate_window *windo
gtk_widget_set_sensitive(window->RemoveButton,1); gtk_widget_set_sensitive(window->RemoveButton,1);
gtk_widget_set_sensitive(window->ConfigureButton,1); gtk_widget_set_sensitive(window->ConfigureButton,1);
} else { } else {
gtk_widget_set_sensitive(window->AddButton,0); gtk_widget_set_sensitive(window->AddButton,1);
gtk_widget_set_sensitive(window->RemoveButton,0); gtk_widget_set_sensitive(window->RemoveButton,0);
gtk_widget_set_sensitive(window->ConfigureButton,0); gtk_widget_set_sensitive(window->ConfigureButton,0);
} }
@ -1691,7 +1702,8 @@ void on_log_edit(GtkWidget *self,main_window *widgets){
char *paths; char *paths;
int size; int size;
char *description; char *description;
gtk_tree_model_get(model,&iter,0,&name,1,&paths,2,&description,-1); int protect;
gtk_tree_model_get(model,&iter,0,&name,1,&paths,2,&description,4,&protect,-1);
gtk_entry_set_text(GTK_ENTRY(window->NameEntry),name); gtk_entry_set_text(GTK_ENTRY(window->NameEntry),name);
gtk_entry_set_has_frame(GTK_ENTRY(window->NameEntry),0); gtk_entry_set_has_frame(GTK_ENTRY(window->NameEntry),0);
gtk_widget_set_sensitive(window->NameEntry,0); gtk_widget_set_sensitive(window->NameEntry,0);
@ -1702,6 +1714,10 @@ void on_log_edit(GtkWidget *self,main_window *widgets){
gtk_widget_hide(window->LogrotateButton); gtk_widget_hide(window->LogrotateButton);
gtk_widget_hide(window->MetalogButton); gtk_widget_hide(window->MetalogButton);
gtk_widget_hide(window->SyslogButton); gtk_widget_hide(window->SyslogButton);
gtk_widget_show(window->StatisticsFrame);
int sz;
config_str logsize = yon_config_load(journald_size_command,&sz);
gtk_label_set_text(GTK_LABEL(window->LogSizeLabel),logsize[0]);
g_signal_connect(G_OBJECT(window->JournaldButton),"clicked", G_CALLBACK(on_journald_open),widgets); g_signal_connect(G_OBJECT(window->JournaldButton),"clicked", G_CALLBACK(on_journald_open),widgets);
} else { } else {
gtk_widget_hide(window->JournaldButton); gtk_widget_hide(window->JournaldButton);
@ -1716,6 +1732,7 @@ void on_log_edit(GtkWidget *self,main_window *widgets){
gtk_entry_set_text(GTK_ENTRY(window->LogDescriptionEntry),description ? description : ""); gtk_entry_set_text(GTK_ENTRY(window->LogDescriptionEntry),description ? description : "");
config_str paths_parsed = yon_char_parse(paths,&size,"\n"); config_str paths_parsed = yon_char_parse(paths,&size,"\n");
GtkWidget *last=NULL; GtkWidget *last=NULL;
int protected=0;
for (int i=0;i<size;i++){ for (int i=0;i<size;i++){
GtkBuilder *builder = gtk_builder_new_from_resource(glade_add_path_path); GtkBuilder *builder = gtk_builder_new_from_resource(glade_add_path_path);
GtkWidget *box = yon_gtk_builder_get_widget(builder,"PathBox"); GtkWidget *box = yon_gtk_builder_get_widget(builder,"PathBox");
@ -1723,12 +1740,21 @@ void on_log_edit(GtkWidget *self,main_window *widgets){
GtkWidget *AppendButton = yon_gtk_builder_get_widget(builder,"AppendButton"); GtkWidget *AppendButton = yon_gtk_builder_get_widget(builder,"AppendButton");
GtkWidget *SearchButton = yon_gtk_builder_get_widget(builder,"SearchButton"); GtkWidget *SearchButton = yon_gtk_builder_get_widget(builder,"SearchButton");
GtkWidget *RemoveButton = yon_gtk_builder_get_widget(builder,"RemoveButton"); GtkWidget *RemoveButton = yon_gtk_builder_get_widget(builder,"RemoveButton");
if (protected<protect){
gtk_widget_set_sensitive(RemoveButton,0);
protected++;
}
if (!strcmp(name,"journald")) {
gtk_widget_hide(AppendButton);
gtk_widget_hide(RemoveButton);
}
gtk_widget_set_sensitive(entry,0); gtk_widget_set_sensitive(entry,0);
gtk_widget_set_sensitive(SearchButton,0); gtk_widget_set_sensitive(SearchButton,0);
gtk_entry_set_text(GTK_ENTRY(entry),paths_parsed[i]); gtk_entry_set_text(GTK_ENTRY(entry),paths_parsed[i]);
gtk_box_pack_start(GTK_BOX(window->LogPathsBox),box,0,0,5); gtk_box_pack_start(GTK_BOX(window->LogPathsBox),box,0,0,5);
last = AppendButton; last = AppendButton;
} }
if (strcmp(name,"journald"))
gtk_widget_show(last); gtk_widget_show(last);
g_signal_connect(G_OBJECT(last),"clicked",G_CALLBACK(on_log_path_append),window); g_signal_connect(G_OBJECT(last),"clicked",G_CALLBACK(on_log_path_append),window);
gtk_widget_set_sensitive(window->LogTypeCombo,0); gtk_widget_set_sensitive(window->LogTypeCombo,0);
@ -1765,8 +1791,13 @@ void on_main_window_tree_selection_changed(GtkWidget *self,main_window *widgets)
GtkTreeModel *model = GTK_TREE_MODEL(widgets->list); GtkTreeModel *model = GTK_TREE_MODEL(widgets->list);
GtkTreeIter iter; GtkTreeIter iter;
if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->MainTree)),&model,&iter)){ if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->MainTree)),&model,&iter)){
gboolean is_standard;
gtk_tree_model_get(model,&iter,3,&is_standard,-1);
gtk_widget_set_sensitive(widgets->AddButton,1); gtk_widget_set_sensitive(widgets->AddButton,1);
gtk_widget_set_sensitive(widgets->RemoveButton,1); if (!is_standard)
gtk_widget_set_sensitive(widgets->RemoveButton,1);
else
gtk_widget_set_sensitive(widgets->RemoveButton,0);
gtk_widget_set_sensitive(widgets->InspectButton,1); gtk_widget_set_sensitive(widgets->InspectButton,1);
gtk_widget_set_sensitive(widgets->ConfigureButton,1); gtk_widget_set_sensitive(widgets->ConfigureButton,1);
} else { } else {
@ -1957,11 +1988,13 @@ main_window *setup_window(){
config_str journals = yon_file_open(journals_list_path,&size); config_str journals = yon_file_open(journals_list_path,&size);
for (int i=1;i<size;i++){ for (int i=1;i<size;i++){
int log_size; int log_size;
int psize;
journals[i]=yon_char_divide_search(journals[i],"\n",-1); journals[i]=yon_char_divide_search(journals[i],"\n",-1);
config_str log = yon_char_parse(journals[i],&log_size,";"); config_str log = yon_char_parse(journals[i],&log_size,";");
log[1] = yon_char_replace(log[1],",","\n"); log[1] = yon_char_replace(log[1],",","\n");
gtk_list_store_append(widgets->list,&iter); gtk_list_store_append(widgets->list,&iter);
gtk_list_store_set(widgets->list,&iter,0,log[0],1,log[1],2,_(log[2]),3,-1,4,-1,5,-1,6,-1,7,-1,-1); free(yon_char_parse(log[1],&psize,"\n"));
gtk_list_store_set(widgets->list,&iter,0,log[0],1,log[1],2,_(log[2]),3,1,4,psize,-1);
} }
config_str services = yon_file_open(services_list_path,&service_size); config_str services = yon_file_open(services_list_path,&service_size);
for (int i=1;i<service_size;i++){ for (int i=1;i<service_size;i++){

@ -269,6 +269,8 @@ typedef struct {
typedef struct { typedef struct {
GtkWidget *MainWindow; GtkWidget *MainWindow;
GtkWidget *StatusBox;
GtkWidget *CancelButton; GtkWidget *CancelButton;
GtkWidget *SaveButton; GtkWidget *SaveButton;
GtkWidget *LogNameEntry; GtkWidget *LogNameEntry;

@ -174,6 +174,7 @@
#define FRIDAY_LABEL _("Friday") #define FRIDAY_LABEL _("Friday")
#define SATURDAY_LABEL _("Saturday") #define SATURDAY_LABEL _("Saturday")
#define SUNDAY_LABEL _("Sunday*") #define SUNDAY_LABEL _("Sunday*")
#define REPEATED_PATHS_LABEL _("Same record already exists")
//ubl-settings-logging-logrotate-table.glade //ubl-settings-logging-logrotate-table.glade
#define SYSTEM_CONFIGURATION_LABEL _("System configuration") #define SYSTEM_CONFIGURATION_LABEL _("System configuration")

@ -1861,6 +1861,7 @@ void yon_terminal_integrated_start(GtkWidget *terminal, char* command, void *end
param->containing_type = val_type; param->containing_type = val_type;
yon_dictionary_add_or_create_if_exists_with_data(__yon_main_window_config.custom_parameters,param->parameter_name,param); yon_dictionary_add_or_create_if_exists_with_data(__yon_main_window_config.custom_parameters,param->parameter_name,param);
dictionary *dict=NULL; dictionary *dict=NULL;
if (__yon_main_window_config.deleted_parameters)
for_dictionaries(dict,__yon_main_window_config.deleted_parameters){ for_dictionaries(dict,__yon_main_window_config.deleted_parameters){
if (strcmp(dict->key,param->parameter_name)) if (strcmp(dict->key,param->parameter_name))
yon_dictionary_rip(dict); yon_dictionary_rip(dict);
@ -2081,6 +2082,81 @@ void yon_ubl_status_box_render(char *text, BACKGROUND_IMAGE_TYPE type){
_yon_ubl_status_box_render(text,type); _yon_ubl_status_box_render(text,type);
} }
void _yon_ubl_status_highlight_incorrect(GtkWidget *widget){
gtk_style_context_add_class(gtk_widget_get_style_context(widget),"errorBox");
sleep(5);
gtk_style_context_remove_class(gtk_widget_get_style_context(widget),"errorBox");
}
void yon_ubl_status_highlight_incorrect(GtkWidget *widget){
GThread *thread = g_thread_new(NULL,(GThreadFunc)_yon_ubl_status_highlight_incorrect,widget);
}
struct temp_statusbox {
int times;
GtkWidget *revealer;
};
void _yon_ubl_status_box_timed_remove(struct temp_statusbox *statusstruct){
sleep(statusstruct->times);
if (statusstruct->revealer){
gtk_revealer_set_reveal_child(GTK_REVEALER(statusstruct->revealer),0);
sleep(1);
gtk_widget_destroy(statusstruct->revealer);
}
}
void yon_ubl_status_box_spawn(GtkContainer *container,char *display_text, int timeout,BACKGROUND_IMAGE_TYPE type){
GtkWidget *box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL,5);
GtkWidget *revealer = gtk_revealer_new();
GtkWidget *label = gtk_label_new("");
GtkWidget *icon = gtk_image_new();
gtk_container_add(GTK_CONTAINER(revealer),box);
gtk_box_pack_start(GTK_BOX(box),icon,0,0,5);
gtk_box_pack_start(GTK_BOX(box),label,0,0,5);
gtk_container_add(container,revealer);
gtk_widget_show_all(revealer);
gtk_revealer_set_reveal_child(GTK_REVEALER(revealer),1);
gtk_widget_set_margin_bottom(label,9);
gtk_widget_set_margin_top(label,9);
gtk_label_set_xalign(GTK_LABEL(label),0.0);
PangoAttrList *attributes = pango_attr_list_new();
PangoAttribute *boldAttr = pango_attr_weight_new(PANGO_WEIGHT_BOLD);
pango_attr_list_insert(attributes, boldAttr);
gtk_label_set_attributes(GTK_LABEL(label),attributes);
GdkRGBA textColor;
gdk_rgba_parse(&textColor, "#4d4d4d4d4d4d");
PangoAttribute *colorAttr = pango_attr_foreground_new(
(int)(textColor.red * 65535),
(int)(textColor.green * 65535),
(int)(textColor.blue * 65535)
);
pango_attr_list_insert(attributes, colorAttr);
GtkIconTheme *ictheme = gtk_icon_theme_get_default();
if (type == BACKGROUND_IMAGE_SUCCESS_TYPE||! type)
{
gtk_style_context_remove_class(gtk_widget_get_style_context(box), "boxInfoMessError");
gtk_style_context_add_class(gtk_widget_get_style_context(box), "boxInfoMessOK");
gtk_image_set_from_pixbuf(GTK_IMAGE(icon), gtk_icon_theme_load_icon_for_scale(ictheme, "com.ublinux.ubl-settings-logging.checked", 25, 1, GTK_ICON_LOOKUP_FORCE_SIZE, NULL));
}
else if (type == BACKGROUND_IMAGE_FAIL_TYPE)
{
gtk_style_context_remove_class(gtk_widget_get_style_context(box), "boxInfoMessOK");
gtk_style_context_add_class(gtk_widget_get_style_context(box), "boxInfoMessError");
gtk_image_set_from_pixbuf(GTK_IMAGE(icon), gtk_icon_theme_load_icon_for_scale(ictheme, "com.ublinux.ubl-settings-logging.warning", 25, 1, GTK_ICON_LOOKUP_FORCE_SIZE, NULL));
}
if (display_text)
gtk_label_set_text(GTK_LABEL(label),display_text);
struct temp_statusbox *statusstruct = malloc(sizeof(struct temp_statusbox));
statusstruct->revealer = revealer;
statusstruct->times = timeout;
GThread *thread = g_thread_new(NULL,(GThreadFunc)_yon_ubl_status_box_timed_remove,statusstruct);
}
/**yon_ubl_setup_sockets(GtkWidget *main_window, GtkWidget *left_window, GtkWidget *right_window, int socket_main_id, int socket_left_id, int socket_right_id) /**yon_ubl_setup_sockets(GtkWidget *main_window, GtkWidget *left_window, GtkWidget *right_window, int socket_main_id, int socket_left_id, int socket_right_id)
* [EN] * [EN]
* Set up plugs for using with GtkSockets insine ubl-settings-manager. * Set up plugs for using with GtkSockets insine ubl-settings-manager.

@ -352,6 +352,10 @@ int yon_ubl_status_box_setup(GtkWidget *icon, GtkWidget *box, GtkWidget *label);
*/ */
void yon_ubl_status_box_render(char *text, BACKGROUND_IMAGE_TYPE type); void yon_ubl_status_box_render(char *text, BACKGROUND_IMAGE_TYPE type);
void yon_ubl_status_highlight_incorrect(GtkWidget *widget);
void yon_ubl_status_box_spawn(GtkContainer *container,char *display_text, int timeout,BACKGROUND_IMAGE_TYPE type);
#ifdef __cplusplus #ifdef __cplusplus
/**yon_ubl_header_setup(overlay, head, image, imag_path) /**yon_ubl_header_setup(overlay, head, image, imag_path)

@ -50,7 +50,6 @@
</object> </object>
<object class="GtkDialog" id="MainWindow"> <object class="GtkDialog" id="MainWindow">
<property name="width-request">450</property> <property name="width-request">450</property>
<property name="height-request">550</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="modal">True</property> <property name="modal">True</property>
<property name="icon-name">com.ublinux.ubl-settings-logging</property> <property name="icon-name">com.ublinux.ubl-settings-logging</property>
@ -186,6 +185,7 @@
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="hscrollbar-policy">never</property> <property name="hscrollbar-policy">never</property>
<property name="shadow-type">in</property> <property name="shadow-type">in</property>
<property name="min-content-height">150</property>
<child> <child>
<object class="GtkViewport"> <object class="GtkViewport">
<property name="visible">True</property> <property name="visible">True</property>

@ -84,6 +84,7 @@
<property name="height-request">600</property> <property name="height-request">600</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="modal">True</property> <property name="modal">True</property>
<property name="icon-name">com.ublinux.ubl-settings-logging</property>
<child> <child>
<object class="GtkBox"> <object class="GtkBox">
<property name="visible">True</property> <property name="visible">True</property>

@ -88,7 +88,6 @@
<child> <child>
<object class="GtkButton" id="AddButton"> <object class="GtkButton" id="AddButton">
<property name="visible">True</property> <property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="receives-default">True</property> <property name="receives-default">True</property>
<property name="image">image5</property> <property name="image">image5</property>

File diff suppressed because it is too large Load Diff

@ -114,4 +114,9 @@ background:transparent;
} }
.instant { .instant {
transition: 0ms; transition: 0ms;
}
.errorBox {
border-width: 2px;
border-color: #ea9999;
border-style:solid;
} }

@ -463,15 +463,9 @@ translated and supported by community.</property>
<column type="gchararray"/> <column type="gchararray"/>
<!-- column-name Description --> <!-- column-name Description -->
<column type="gchararray"/> <column type="gchararray"/>
<!-- column-name FileAmount --> <!-- column-name IsStandard -->
<column type="glong"/> <column type="gboolean"/>
<!-- column-name FileMaxSize --> <!-- column-name StandardPathsAmount -->
<column type="glong"/>
<!-- column-name RotationPeriod -->
<column type="guint"/>
<!-- column-name JournalMaxSize -->
<column type="glong"/>
<!-- column-name JournalGatheringPeriod -->
<column type="gint"/> <column type="gint"/>
</columns> </columns>
<data> <data>
@ -479,11 +473,8 @@ translated and supported by community.</property>
<col id="0">journald</col> <col id="0">journald</col>
<col id="1">/var/log/journal/</col> <col id="1">/var/log/journal/</col>
<col id="2" translatable="yes">System event log</col> <col id="2" translatable="yes">System event log</col>
<col id="3">0</col> <col id="3">False</col>
<col id="4">0</col> <col id="4">0</col>
<col id="5">0</col>
<col id="6">0</col>
<col id="7">0</col>
</row> </row>
</data> </data>
</object> </object>

Loading…
Cancel
Save