From 950c9c19a1bb72f0293e6a09a713a8b49eb9187b Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Tue, 25 Jul 2023 12:28:14 +0600 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=20=D0=B2=D1=8B=D0=B1=D0=BE=D1=80=20=D0=BF=D0=BE?= =?UTF-8?q?=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1=82=D0=B5=D0=BB=D1=8F=20?= =?UTF-8?q?=D0=B2=20=D0=BE=D0=BA=D0=BD=D0=B5=20=D1=80=D0=B5=D0=B4=D0=B0?= =?UTF-8?q?=D0=BA=D1=82=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/model/model.c | 58 +++---- source/model/philos_utils.h | 2 + source/view_check_user_table.c | 16 +- source/view_check_user_table.h | 2 +- source/view_filters.c | 83 +++++----- source/view_filters.h | 1 + source/view_temp_u_g_p.c | 41 +++-- ubl-settings-diskquota.glade | 294 ++++++++++----------------------- 8 files changed, 190 insertions(+), 307 deletions(-) diff --git a/source/model/model.c b/source/model/model.c index e25aede..5492683 100644 --- a/source/model/model.c +++ b/source/model/model.c @@ -101,15 +101,12 @@ int fill_tree_view_project(config_all* all_config,hotebook* widget , char* str_f gtk_list_store_set(widget->liststore,&iter, 0,fill_tree_view_id(_config->id), 1,format_actors(&_config->actors), - 2,_config->quota, - 3,_config->size_memory, - 4,philos_format_cfg_str_size_memory("", check_null(_config->soft_restriction_size),_config->soft_restriction_size_pow), - 5,philos_format_cfg_str_size_memory("", check_null(_config->severe_limitation_size),_config->severe_limitation_size_pow), - 6,deferring_size, - 7,_config->files, - 8,check_null_to_str(_config->soft_restriction_file), - 9,check_null_to_str(_config->severe_limitation_file), - 10,deferring_file, + 2,philos_format_cfg_str_size_memory("", check_null(_config->soft_restriction_size),_config->soft_restriction_size_pow), + 3,philos_format_cfg_str_size_memory("", check_null(_config->severe_limitation_size),_config->severe_limitation_size_pow), + 4,deferring_size, + 5,check_null_to_str(_config->soft_restriction_file), + 6,check_null_to_str(_config->severe_limitation_file), + 7,deferring_file, -1); } @@ -145,17 +142,15 @@ int fill_tree_view_user_group(config_all* all_config, char* disk, hotebook* widg char* deferring_size = wrapper_str_time(_config->deferring_size); char* deferring_file = wrapper_str_time(_config->deferring_file); gtk_list_store_set(widget->liststore,&iter, - 0,format_actors(&_config->actors), - 1,_config->quota, - 2,_config->size_memory, - 3,philos_format_cfg_str_size_memory("", check_null(_config->soft_restriction_size),_config->soft_restriction_size_pow), - 4,philos_format_cfg_str_size_memory("", check_null(_config->severe_limitation_size),_config->severe_limitation_size_pow), - 5,deferring_size, - 6,_config->files, - 7,check_null_to_str(_config->soft_restriction_file), - 8,check_null_to_str(_config->severe_limitation_file), - 9,deferring_file, - -1); + 0,format_actors(&_config->actors), + 1,_config->UNIX_file, + 2,philos_format_cfg_str_size_memory("", check_null(_config->soft_restriction_size),_config->soft_restriction_size_pow), + 3,philos_format_cfg_str_size_memory("", check_null(_config->severe_limitation_size),_config->severe_limitation_size_pow), + 4,deferring_size, + 5,check_null_to_str(_config->soft_restriction_file), + 6,check_null_to_str(_config->severe_limitation_file), + 7,deferring_file, + -1); } } } @@ -195,13 +190,13 @@ char* quota_type(char* str_quota) { char quota_fill_generate(char* str_quota, config_u_g_p* _config, GtkListStore* list_store, GtkTreeIter* iter) { int index = -1; if (strcmp(str_quota, "usrquota")==0) { - index = 3; + index = 4; } else if (strcmp(str_quota, "grpquota")==0) { - index = 4; + index = 5; } else if (strcmp(str_quota, "prjquota")==0) { - index = 5; + index = 6; } if (index != -1) { gtk_list_store_set(list_store,iter,index,format_actors(&_config->actors), -1); @@ -237,14 +232,15 @@ int fill_tree_view_generate(vector* vec_fill, vector* vec_status_disk, char* str quota_fill_generate(str_fill, _config,liststoreGeneral,&iter); gtk_list_store_set(liststoreGeneral,&iter, 0,pars_status_generate(vec_status_disk,_config->UNIX_file), - 1,quota_type(str_fill), - 2,_config->UNIX_file, - 6,philos_format_cfg_str_size_memory("", check_null(_config->soft_restriction_size),_config->soft_restriction_size_pow), - 7,philos_format_cfg_str_size_memory("", check_null(_config->severe_limitation_size),_config->severe_limitation_size_pow), - 8,deferring_size, - 9,check_null_to_str(_config->soft_restriction_file), - 10,check_null_to_str(_config->severe_limitation_file), - 11,deferring_file, + 1,_config->quota, + 2,quota_type(str_fill), + 3,_config->UNIX_file, + 7,philos_format_cfg_str_size_memory("", check_null(_config->soft_restriction_size),_config->soft_restriction_size_pow), + 8,philos_format_cfg_str_size_memory("", check_null(_config->severe_limitation_size),_config->severe_limitation_size_pow), + 9,deferring_size, + 10,check_null_to_str(_config->soft_restriction_file), + 11,check_null_to_str(_config->severe_limitation_file), + 12,deferring_file, -1); } } diff --git a/source/model/philos_utils.h b/source/model/philos_utils.h index c6769ae..95cb5f9 100644 --- a/source/model/philos_utils.h +++ b/source/model/philos_utils.h @@ -72,6 +72,7 @@ typedef struct { GtkWidget* quotegroupFilesHardLimitSpin; GtkWidget* lblSetNameDevice; GtkWidget* boxProjectAddEditboxProjectId; + GtkWidget* entryUser; } temp_set_window; @@ -98,6 +99,7 @@ typedef struct { GtkWidget* cmbSetStatusDisk; GtkWidget* lblSetNameDevice; GtkWidget* boxSpins; + GtkWidget* entryUser; } hotebook; typedef struct { int weeks; diff --git a/source/view_check_user_table.c b/source/view_check_user_table.c index 8086138..374a895 100644 --- a/source/view_check_user_table.c +++ b/source/view_check_user_table.c @@ -34,9 +34,7 @@ table_u_g *setup_table_u_g(){ char** array_user = philos_list_user(&size); table_u_g_fill_tree_view(array_user, size); } - if (strcmp(table_u_g_set_add_edit, "edit")==0) { - set_actors(_actors); - } + set_actors(_actors); table_u_g_event(); } @@ -95,10 +93,11 @@ void chk_toggled_user_group ( -void get_actors_table(vector* actors) { - if (strcmp(table_u_g_set_add_edit, "edit")==0) { - model_free_vector_string(actors); - } +vector* get_actors_table(vector* actors) { + model_free_vector_string(actors); + vectorFree(actors); + actors = malloc(sizeof(vector)); + vector_init(actors); GtkTreeIter iter; GtkTreeModel *model = GTK_TREE_MODEL(table_widgets->liststoreUsersGroups); int valid = 1; @@ -111,6 +110,7 @@ void get_actors_table(vector* actors) { actors->pfVectorAdd(actors, yon_char_new(user_group)); } } + return actors; } void table_u_g_destroy(GtkWidget *self) { @@ -135,9 +135,7 @@ void set_actors(vector* actors) { GtkTreeModel *model = GTK_TREE_MODEL(table_widgets->liststoreUsersGroups); int valid = 1; for(gtk_tree_model_get_iter_first(GTK_TREE_MODEL(table_widgets->liststoreUsersGroups),&iter);valid==1;valid=gtk_tree_model_iter_next(GTK_TREE_MODEL(table_widgets->liststoreUsersGroups),&iter)){ - int is_active=0; char* user_group; - gtk_tree_model_get(model,&iter,0,&is_active,-1); gtk_tree_model_get(model,&iter,1,&user_group,-1); if (actors->vectorList.total> 0) { for (int i = 0; i < actors->vectorList.total; i++) { diff --git a/source/view_check_user_table.h b/source/view_check_user_table.h index 94cdd93..d684503 100644 --- a/source/view_check_user_table.h +++ b/source/view_check_user_table.h @@ -32,7 +32,7 @@ void table_u_g_set_flag(char* _flag_u_g, char* _table_u_g_set_add_edit); void table_u_g_set_glade_path(char* _glade_path); void table_u_g_show(GtkWidget *self, char* glade_path); void set_vector(vector* _vec_temp); -void get_actors_table(vector* actors); +vector* get_actors_table(vector* actors); void table_u_g_get_actors(vector* actors); void set_actors(vector* actors); table_u_g* get_widget_table_u_g(); diff --git a/source/view_filters.c b/source/view_filters.c index 3668e5f..dc91d25 100644 --- a/source/view_filters.c +++ b/source/view_filters.c @@ -2,11 +2,11 @@ char* flag_filters_u_g_p = NULL; filters_window *filters_widgets = NULL; GtkTreeView* _tree_view = NULL; -const int len_user_group = 10; -const int len_project = 11; -gboolean flag_filters_user[10]; -gboolean flag_filters_group[10]; -gboolean flag_filters_project[11]; +const int len_user_group = 8; +const int len_project = 9; +gboolean flag_filters_user[8]; +gboolean flag_filters_group[8]; +gboolean flag_filters_project[9]; filters_window *filters_setup_window(char* glade_path){ if (filters_widgets == NULL) { filters_widgets = malloc(sizeof(filters_window)); @@ -25,6 +25,7 @@ filters_window *filters_setup_window(char* glade_path){ filters_widgets->chbFilterHardLimitFile = yon_gtk_builder_get_widget(builder,"chbFilterHardLimitFile"); filters_widgets->chbFilterHardLimitFileDelay = yon_gtk_builder_get_widget(builder,"chbFilterHardLimitFileDelay"); filters_widgets->chbProjectName = yon_gtk_builder_get_widget(builder,"chbProjectName"); + filters_widgets->chbFilterDevice = yon_gtk_builder_get_widget(builder,"chbFilterDevice"); if (strcmp(flag_filters_u_g_p, "prjquota")==0) { gtk_button_set_label(GTK_BUTTON(filters_widgets->chbFilterName), _("ID")); } @@ -40,47 +41,41 @@ filters_window *filters_setup_window(char* glade_path){ } gboolean* filters_get_flag_user() { - flag_filters_user[0] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterName)); - flag_filters_user[1] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterQuotas)); - flag_filters_user[2] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSize)); - flag_filters_user[3] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitSize)); - flag_filters_user[4] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSize)); - flag_filters_user[5] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitFile)); - flag_filters_user[6] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterFiles)); - flag_filters_user[7] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile)); - flag_filters_user[8] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSizeDelay)); - flag_filters_user[9] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay)); + flag_filters_group[0] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterName)); + flag_filters_group[1] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterDevice)); + flag_filters_group[2] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitSize)); + flag_filters_group[3] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSize)); + flag_filters_group[4] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitFile)); + flag_filters_group[5] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile)); + flag_filters_group[6] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSizeDelay)); + flag_filters_group[7] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay)); return flag_filters_user; } gboolean* filters_get_flag_group() { flag_filters_group[0] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterName)); - flag_filters_group[1] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterQuotas)); - flag_filters_group[2] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSize)); - flag_filters_group[3] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitSize)); - flag_filters_group[4] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSize)); - flag_filters_group[5] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitFile)); - flag_filters_group[6] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterFiles)); - flag_filters_group[7] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile)); - flag_filters_group[8] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSizeDelay)); - flag_filters_group[9] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay)); + flag_filters_group[1] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterDevice)); + flag_filters_group[2] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitSize)); + flag_filters_group[3] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSize)); + flag_filters_group[4] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitFile)); + flag_filters_group[5] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile)); + flag_filters_group[6] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSizeDelay)); + flag_filters_group[7] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay)); return flag_filters_group; } gboolean* filters_get_flag_project() { flag_filters_project[0] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterName)); - flag_filters_project[1] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterQuotas)); - flag_filters_project[2] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSize)); - flag_filters_project[3] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitSize)); - flag_filters_project[4] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSize)); - flag_filters_project[5] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitFile)); - flag_filters_project[6] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterFiles)); - flag_filters_project[7] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile)); - flag_filters_project[8] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSizeDelay)); - flag_filters_project[9] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay)); - flag_filters_project[10] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbProjectName)); + flag_filters_project[1] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterDevice)); + flag_filters_project[2] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitSize)); + flag_filters_project[3] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSize)); + flag_filters_project[4] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitFile)); + flag_filters_project[5] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile)); + flag_filters_project[6] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSizeDelay)); + flag_filters_project[7] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay)); + flag_filters_project[8] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbProjectName)); return flag_filters_project; } @@ -161,7 +156,7 @@ void filters_init_flag() { flag_filters_group[i] = 1; flag_filters_project[i] = 1; } - flag_filters_project[10] = 1; + flag_filters_project[8] = 1; } void filters_set_flag() { @@ -178,16 +173,14 @@ void filters_set_flag() { } } gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterName),array_flags[0] ); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterQuotas), array_flags[1]); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSize), array_flags[2]); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitSize), array_flags[3]); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSize), array_flags[4]); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitFile), array_flags[5]); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterFiles), array_flags[6]); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile), array_flags[7]); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSizeDelay), array_flags[8]); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay), array_flags[9]); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterDevice), array_flags[1]); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitSize), array_flags[2]); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSize), array_flags[3]); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSoftLimitFile), array_flags[4]); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile), array_flags[5]); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitSizeDelay), array_flags[6]); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay), array_flags[7]); if (strcmp(flag_filters_u_g_p,"prjquota")==0) { - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbProjectName), array_flags[10]); + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbProjectName), array_flags[8]); } } \ No newline at end of file diff --git a/source/view_filters.h b/source/view_filters.h index a58db57..84ca6b8 100644 --- a/source/view_filters.h +++ b/source/view_filters.h @@ -30,6 +30,7 @@ typedef struct { GtkWidget* chbFilterHardLimitFile; GtkWidget* chbFilterHardLimitFileDelay; GtkWidget* chbProjectName; + GtkWidget* chbFilterDevice; char* name; } filters_window; diff --git a/source/view_temp_u_g_p.c b/source/view_temp_u_g_p.c index ed1bba3..f5e46e8 100644 --- a/source/view_temp_u_g_p.c +++ b/source/view_temp_u_g_p.c @@ -8,7 +8,8 @@ vector* vec_temp = NULL; config_all* _all_config_temp = NULL; int table_index = 0; char* disk = NULL; -vector temp_vec_actors; + +vector* temp_vec_actors; void set_disk(char* _disk) { disk = yon_char_new(_disk); @@ -49,7 +50,9 @@ temp_set_window *temp_setup_window_base(char* __glade_path) { } temp_set_window *temp_setup_window_custom(temp_set_window* temp_widgets, GtkBuilder *builder) { - vector_init(&temp_vec_actors); + temp_vec_actors = malloc(sizeof(vector)); + vector_init(temp_vec_actors); + table_u_g_get_actors(temp_vec_actors); temp_widgets->lblSetUGP = yon_gtk_builder_get_widget(builder, "lblSetUGP"); temp_widgets->btnOpenUserGroup = yon_gtk_builder_get_widget(builder, "btnOpenUserGroup"); temp_widgets->btnReviewProject = yon_gtk_builder_get_widget(builder, "btnReviewProject"); @@ -79,6 +82,7 @@ temp_set_window *temp_setup_window_custom(temp_set_window* temp_widgets, GtkBuil temp_widgets->lblCatalogProjectEdit = yon_gtk_builder_get_widget(builder, "lblCatalogProjectEdit"); temp_widgets->lblProjectIdValueEdit = yon_gtk_builder_get_widget(builder, "lblProjectIdValueEdit"); temp_widgets->boxTempDevice = yon_gtk_builder_get_widget(builder, "boxTempDevice"); + temp_widgets->entryUser = yon_gtk_builder_get_widget(builder,"entryUser"); table_u_g_set_flag(flag_temp_u_g_p,set_add_edit); table_u_g_set_glade_path(_glade_path); if (strcmp(flag_temp_u_g_p,"prjquota")==0) { @@ -86,6 +90,7 @@ temp_set_window *temp_setup_window_custom(temp_set_window* temp_widgets, GtkBuil gtk_widget_hide(temp_widgets->lblSetUGPData); gtk_widget_hide(temp_widgets->btnOpenUserGroup); gtk_widget_hide(temp_widgets->boxTempDevice); + gtk_widget_hide(temp_widgets->entryUser); if (strcmp(set_add_edit, "add")==0) { gtk_widget_hide(temp_widgets->lblCatalogProjectEdit); gtk_widget_hide(temp_widgets->lblProjectIdValueEdit); @@ -107,6 +112,7 @@ temp_set_window *temp_setup_window_custom(temp_set_window* temp_widgets, GtkBuil gtk_label_set_label(GTK_LABEL(temp_widgets->lblSetUGP), yon_char_unite(_("Users"),":",NULL)); } else if (strcmp(flag_temp_u_g_p, "grpquota")==0) { + gtk_widget_hide(temp_widgets->entryUser); gtk_label_set_label(GTK_LABEL(temp_widgets->lblOpenUserGroup), _("Groups")); gtk_label_set_label(GTK_LABEL(temp_widgets->lblSetUGP), yon_char_unite(_("Groups"),":",NULL)); @@ -122,12 +128,15 @@ temp_set_window *temp_setup_window_custom(temp_set_window* temp_widgets, GtkBuil gtk_widget_hide(temp_widgets->boxProject); gtk_widget_hide(temp_widgets->boxProjectAddEdit); gtk_widget_hide(temp_widgets->btnOpenUserGroup); + gtk_widget_hide(temp_widgets->entryUser); gtk_label_set_label(GTK_LABEL(temp_widgets->lblHeadQuotasEditWindow), _("Settings disk quotas - Editing")); } } } + + void set_temp_menu(char* _flag_temp_u_g_p, char* _set_add_edit) { flag_temp_u_g_p = _flag_temp_u_g_p; set_add_edit = _set_add_edit; @@ -157,6 +166,11 @@ void temp_localization(temp_set_window* temp_widgets) { void temp_init_windows() { } +void wrapper_table_u_g_show() { + table_u_g_get_actors(temp_vec_actors); + table_u_g_show(NULL, _glade_path); +} + void temp_event(temp_set_window* temp_widgets) { g_signal_connect(G_OBJECT(temp_widgets->btnTempCancel),"clicked",G_CALLBACK(temp_destroy),temp_widgets->Window); g_signal_connect(G_OBJECT(temp_widgets->Window), "destroy", G_CALLBACK(temp_destroy), temp_widgets->Window); @@ -180,9 +194,10 @@ void temp_event(temp_set_window* temp_widgets) { g_signal_connect(G_OBJECT(temp_widgets->entryProjectName), "changed", G_CALLBACK(block_btn_save), NULL); } else { - g_signal_connect(G_OBJECT(temp_widgets->btnOpenUserGroup),"clicked",G_CALLBACK(table_u_g_show),_glade_path); + g_signal_connect(G_OBJECT(temp_widgets->btnOpenUserGroup),"clicked",G_CALLBACK(wrapper_table_u_g_show),NULL); } } + void temp_on_destroy_subwindow(GtkWidget *self) { if (self) { if (strcmp(set_add_edit, "add")==0) { @@ -193,7 +208,9 @@ void temp_on_destroy_subwindow(GtkWidget *self) { } gtk_widget_destroy(gtk_widget_get_toplevel(self)); temp_widgets = NULL; - model_free_vector_string(&temp_vec_actors); + model_free_vector_string(temp_vec_actors); + vectorFree(temp_vec_actors); + temp_vec_actors = NULL; } } void event_toggled_all() { @@ -233,7 +250,9 @@ void wrapper_show_file_manager() { void temp_destroy(GtkWidget *self) { if (self) { gtk_widget_destroy(gtk_widget_get_toplevel(self)); - model_free_vector_string(&temp_vec_actors); + model_free_vector_string(temp_vec_actors); + vectorFree(temp_vec_actors); + temp_vec_actors = NULL; temp_widgets = NULL; } @@ -378,8 +397,8 @@ void get_add_gui_data_base(config_all* all_config) { config_u_g_p* _config = malloc(sizeof(config_u_g_p)); model_null_str_writing(_config); get_temp_gui_data_base(_config); - if (temp_vec_actors.vectorList.total != 0) { - _config->actors.pfVectorCopy(&_config->actors, &temp_vec_actors); + if (temp_vec_actors->vectorList.total != 0) { + _config->actors.pfVectorCopy(&_config->actors, temp_vec_actors); } @@ -390,7 +409,8 @@ void get_add_gui_data_base(config_all* all_config) { void save(GtkWidget *self) { if (strcmp(set_add_edit, "add")==0) { - get_actors_table(&temp_vec_actors); + temp_vec_actors = get_actors_table(temp_vec_actors); + gtk_entry_set_text(GTK_ENTRY(temp_widgets->entryUser), format_actors(temp_vec_actors)); table_u_g_on_hide_subwindow(self); block_btn_save(); } @@ -398,6 +418,7 @@ void save(GtkWidget *self) { // get_actors_table(_actors); table_u_g_on_hide_subwindow(self); block_btn_save(); + } } @@ -455,7 +476,7 @@ int wrapper_check_save() { return 0; } else { - if (strcmp(set_add_edit, "add")==0 && temp_vec_actors.vectorList.total != 0) { + if (strcmp(set_add_edit, "add")==0 && temp_vec_actors->vectorList.total != 0) { if (check_save()) { return 1; } @@ -517,7 +538,7 @@ config_u_g_p* get_temp_gui_data_base(config_u_g_p* _config) { } gboolean active = active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(temp_widgets->chbAuto)); if (active) { - + _config->id = -1; } else { char* id = (char*)gtk_entry_get_text(GTK_ENTRY(temp_widgets->entryProjectId)); diff --git a/ubl-settings-diskquota.glade b/ubl-settings-diskquota.glade index 6acca20..8196588 100644 --- a/ubl-settings-diskquota.glade +++ b/ubl-settings-diskquota.glade @@ -352,6 +352,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + False start @@ -486,6 +487,24 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 0 + + + True + True + 5 + 5 + 5 + 5 + 5 + 5 + entrycompletion4 + + + True + True + 1 + + True @@ -498,41 +517,17 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 5 5 - + True False - center - - - True - False - edit-find-symbolic - - - False - True - 0 - - - - - True - False - User-Group - - - False - True - 1 - - + avatar-default-symbolic - True + False True - 1 + 2 @@ -550,7 +545,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. False True - 2 + 3 @@ -1400,6 +1395,13 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + + + + + + both @@ -1409,6 +1411,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + @@ -1669,10 +1672,6 @@ translated and supported by community. - - - - @@ -1695,10 +1694,6 @@ translated and supported by community. - - - - @@ -1719,10 +1714,6 @@ translated and supported by community. - - - - @@ -2164,6 +2155,17 @@ translated and supported by community. + + + Quotas + + + + 1 + + + + autosize @@ -2174,7 +2176,7 @@ translated and supported by community. word - 1 + 2 @@ -2190,7 +2192,7 @@ Project word - 2 + 3 @@ -2205,7 +2207,7 @@ Project word - 3 + 4 @@ -2220,7 +2222,7 @@ Project word - 4 + 5 @@ -2235,7 +2237,7 @@ Project word - 5 + 6 @@ -2252,7 +2254,7 @@ restriction word - 6 + 7 @@ -2269,7 +2271,7 @@ limit word - 7 + 8 @@ -2288,7 +2290,7 @@ limit word - 8 + 9 @@ -2305,7 +2307,7 @@ restriction word - 9 + 10 @@ -2322,7 +2324,7 @@ limit word - 10 + 11 @@ -2341,7 +2343,7 @@ limit word - 11 + 12 @@ -2990,34 +2992,16 @@ limit - autosize - Quotas + Device True - - word - + 1 - - - autosize - Size - True - - - word - - - 2 - - - - autosize @@ -3030,7 +3014,7 @@ restriction word - 3 + 2 @@ -3047,7 +3031,7 @@ limit word - 4 + 3 @@ -3066,22 +3050,7 @@ limit word - 5 - - - - - - - autosize - Files - True - - - word - - - 6 + 4 @@ -3098,7 +3067,7 @@ restriction word - 7 + 5 @@ -3115,7 +3084,7 @@ limit word - 8 + 6 @@ -3134,7 +3103,7 @@ limit word - 9 + 7 @@ -3956,34 +3925,16 @@ limit - autosize - Quotas + Device True - - word - + 1 - - - autosize - Size - True - - - word - - - 2 - - - - autosize @@ -3996,7 +3947,7 @@ restriction word - 3 + 2 @@ -4013,7 +3964,7 @@ limit word - 4 + 3 @@ -4032,22 +3983,7 @@ limit word - 5 - - - - - - - autosize - Files - True - - - word - - - 6 + 4 @@ -4064,7 +4000,7 @@ restriction word - 7 + 5 @@ -4081,7 +4017,7 @@ limit word - 8 + 6 @@ -4100,7 +4036,7 @@ limit word - 9 + 7 @@ -4856,13 +4792,10 @@ limit - autosize - Project Name + Device True - - word - + 1 @@ -4872,7 +4805,7 @@ limit autosize - Quotas + Project Name True @@ -4884,21 +4817,6 @@ limit - - - autosize - Size - True - - - word - - - 3 - - - - autosize @@ -4911,7 +4829,7 @@ restriction word - 4 + 3 @@ -4928,7 +4846,7 @@ limit word - 5 + 4 @@ -4947,22 +4865,7 @@ limit word - 6 - - - - - - - autosize - Files - True - - - word - - - 7 + 5 @@ -4979,7 +4882,7 @@ restriction word - 8 + 6 @@ -4996,7 +4899,7 @@ limit word - 9 + 7 @@ -5015,7 +4918,7 @@ limit word - 10 + 8 @@ -5518,12 +5421,11 @@ limit - - Project Name + + Device True True False - start True @@ -5533,8 +5435,8 @@ limit - - Quotas + + Project Name True True False @@ -5547,21 +5449,6 @@ limit 2 - - - Size - True - True - False - start - True - - - False - True - 3 - - Soft limit (volume) @@ -5653,21 +5540,6 @@ limit 8 - - - Files - True - True - False - start - True - - - False - True - 9 - - Soft limit (files)