diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c index 94c7fd1..86541e8 100644 --- a/source/ubl-settings-manager.c +++ b/source/ubl-settings-manager.c @@ -962,6 +962,7 @@ int setup_config(){ FILE *file; GError *err=NULL; main_config.sections=yon_dictionary_create_empty(); + main_config.lock_settings=0; GKeyFile *configfile = g_key_file_new(); char *pth=malloc(7+strlen(UserConfigPath)+strlen(getlogin())); sprintf(pth,"%s%s%s","/home/",getlogin(),UserConfigPath); @@ -1573,7 +1574,9 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them curWidgets->MenuItemDocumentation=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"MenuItemDocumentation"))); curWidgets->MenuItemAboutSystem=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,yon_char_get_augumented(theme_id,"MenuItemAboutSystem"))); curWidgets->SettingsSections=NULL; - + if (main_config.lock_settings==1){ + gtk_widget_set_sensitive(curWidgets->MenuItemSettings,0); + } gtk_style_context_add_class(gtk_widget_get_style_context(curWidgets->icvpack),"iconview"); curWidgets->socket=GTK_WIDGET(create_socket(curWidgets)); if (curWidgets->ButtonBackToMain!=NULL) @@ -1592,7 +1595,7 @@ dictionary *yon_theme_new(dictionary **widgetss, GtkBuilder *builder, char *them if (curWidgets->ButtonBackToMain!=NULL) g_signal_connect(G_OBJECT(curWidgets->ButtonBackToMain), "clicked", G_CALLBACK(on_backToSettingsButton_clicked), curWidgets); curWidgets->LabelTitle=GTK_WIDGET(gtk_builder_get_object(curWidgets->builder,"LabelTitle")); - gtk_window_set_title(GTK_WINDOW(curWidgets->window),_("UBLinux Settings Manager")); + gtk_window_set_title(GTK_WINDOW(curWidgets->window),_("UBLinux Settings Manager")); // Standard for all themes @@ -1674,6 +1677,15 @@ int main(int argc, char *argv[]){ printf("Ошибка загрузки конфига!\n"); return -1; } + static struct option long_options[] = { + {"lock-settings", 0, 0, 'l'}, + }; + int socket_find; + int option_index=0; + for (int i=0;i #include +#include #define GladePath "/usr/share/ubl-settings-manager/ui/ubl-settings-manager.glade" @@ -79,6 +80,7 @@ typedef struct { char *lastUser; int changed; int fullscreen; + int lock_settings; } config; typedef struct {