parent
a054be64e2
commit
2ab0555220
Before Width: | Height: | Size: 210 KiB After Width: | Height: | Size: 218 KiB |
@ -0,0 +1,118 @@
|
||||
#include "controler.h"
|
||||
|
||||
struct model_cfg_u_g_p* cfg_user = NULL;
|
||||
struct model_cfg_u_g_p* cfg_group = NULL;
|
||||
struct model_cfg_u_g_p* cfg_project = NULL;
|
||||
struct model_cfg_general* cfg_general = NULL;
|
||||
struct struct_gui* cfg_gui = NULL;
|
||||
|
||||
|
||||
void load_system_cfg() {
|
||||
cfg_gui->flag_load = 0;
|
||||
template_load_cfg(CMD_LOAD_SYSTEM);
|
||||
yon_ubl_status_box_render(LOCAL_LOAD_SUCCESS, BACKGROUND_IMAGE_SUCCESS_TYPE);
|
||||
}
|
||||
|
||||
void load_global_cfg() {
|
||||
cfg_gui->flag_load = 1;
|
||||
template_load_cfg(CMD_LOAD_GLOBAL);
|
||||
yon_ubl_status_box_render(GLOBAL_LOAD_SUCCESS,BACKGROUND_IMAGE_SUCCESS_TYPE);
|
||||
}
|
||||
|
||||
|
||||
|
||||
int main(int argc, char *argv[]){
|
||||
local=setlocale(LC_ALL, "");
|
||||
textdomain (LocaleName);
|
||||
config_init();
|
||||
int option_index=0;
|
||||
int show_help=0;
|
||||
int debug_mode=0;
|
||||
{
|
||||
struct option long_options[] = {
|
||||
{"help", 0, 0, 'h'},
|
||||
{"version", 0, 0, 'V'},
|
||||
{"lock-help", 0,0, 1},
|
||||
{"lock-save", 0,0, 2},
|
||||
{"lock-save-local", 0,0, 3},
|
||||
{"lock-save-global", 0,0, 4},
|
||||
{"lock-load-global", 0,0, 5},
|
||||
{"socket-id", 1, 0, 's'},
|
||||
{"socket-ext-id", 1,0, 'e'},
|
||||
{"socket-trd-id", 1,0, 't'},
|
||||
{"debug", 0,0, 'd'},
|
||||
{ NULL, 0, NULL, 0 }
|
||||
};
|
||||
for (int i=0;i<argc;i++){
|
||||
int argument=getopt_long(argc,argv,"hVvs:e:t:d",long_options,&option_index);
|
||||
switch(argument){
|
||||
case 'h':
|
||||
show_help=1;
|
||||
break;
|
||||
case 'v':
|
||||
case 'V':
|
||||
printf("%s\n",VERSION_LABEL);
|
||||
exit(0);
|
||||
break;
|
||||
case 's':
|
||||
if(optarg)
|
||||
main_config.socket_id=atoi(optarg);
|
||||
break;
|
||||
case 'e':
|
||||
if(optarg)
|
||||
main_config.load_socket_id=atoi(optarg);
|
||||
break;
|
||||
case 't':
|
||||
if(optarg)
|
||||
main_config.save_socket_id=atoi(optarg);
|
||||
break;
|
||||
case 1:
|
||||
main_config.lock_help=1;
|
||||
break;
|
||||
case 2:
|
||||
main_config.lock_save_local=1;
|
||||
main_config.lock_save_global=1;
|
||||
break;
|
||||
case 3:
|
||||
main_config.lock_save_local=1;
|
||||
break;
|
||||
case 4:
|
||||
main_config.lock_save_global=1;
|
||||
break;
|
||||
case 5:
|
||||
main_config.lock_load_global=1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (show_help==1&&main_config.lock_help!=1){
|
||||
printf("%s\n",HELP_LABEL);
|
||||
exit(0);
|
||||
}
|
||||
}
|
||||
|
||||
if (getuid()!=0){
|
||||
main_config.lock_load_global=1;
|
||||
main_config.lock_save_global=1;
|
||||
main_config.lock_save_local=1;
|
||||
}
|
||||
gtk_init(&argc,&argv);
|
||||
|
||||
|
||||
main_window *widgets = setup_window();
|
||||
yon_ubl_header_setup_resource(widgets->HeadOverlay,widgets->HeadBox,widgets->HeadImage,banner_path);
|
||||
|
||||
yon_ubl_status_box_setup(widgets->StatusIcon,widgets->StatusBox,widgets->StatusLabel);
|
||||
if (getuid()!=0)
|
||||
yon_ubl_status_box_render(ROOT_WARNING_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
|
||||
else
|
||||
yon_ubl_status_box_render(TITLE_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
|
||||
yon_ubl_setup_sockets(widgets->PlugBox,widgets->LeftBox,widgets->RightBox,main_config.socket_id,main_config.load_socket_id,main_config.save_socket_id);
|
||||
yon_window_config_setup(GTK_WINDOW(widgets->Window));
|
||||
yon_window_config_load(config_path);
|
||||
GtkCssProvider *css=gtk_css_provider_new();
|
||||
gtk_css_provider_load_from_resource(css,CssPath);
|
||||
gtk_style_context_add_provider_for_screen(gdk_screen_get_default(),
|
||||
GTK_STYLE_PROVIDER(css),
|
||||
-1);
|
||||
gtk_main();
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
#include "ubl-settings-diskquota.h"
|
||||
#include "model.h"
|
||||
#include "load.h"
|
||||
#include "ubl-strings.h"
|
||||
|
||||
|
||||
int main(int argc, char *argv[]);
|
@ -0,0 +1,25 @@
|
||||
#include "load.h"
|
||||
|
||||
|
||||
void template_load_cfg(model_cfg_general* config, char* cmd) {
|
||||
clear_array();
|
||||
int size = 0;
|
||||
char** cfg = yon_config_load(cmd, &size);
|
||||
philos_array_string_remove_char(&cfg, "\n", size);
|
||||
for (int index = 0; index < size; index++) {
|
||||
char* str_key_value = yon_char_new(cfg[index]);
|
||||
char* str_key = yon_char_divide_search(str_key_value, "=",-1);
|
||||
if (yon_char_find_count(str_key, "CGROUP_QUOTA") != 0) {
|
||||
if (str_key_value[0] == '\"') {
|
||||
yon_char_divide(str_key_value, 0);
|
||||
size_t length = strlen(str_key_value);
|
||||
str_key_value = yon_char_divide(str_key_value, length-1);
|
||||
}
|
||||
str_split_value(str_key_value, config->size);
|
||||
str_split_key(str_key, config->size);
|
||||
config->size++;
|
||||
}
|
||||
}
|
||||
|
||||
config->flag_set_data = 0;
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
#include "ubl-utils.h"
|
||||
#include "ubl-strings.h"
|
@ -0,0 +1,156 @@
|
||||
#include "model.h"
|
||||
|
||||
|
||||
void model_clear_cfg(model_cfg_u_g_p* config) {
|
||||
philos_free_int_array(config->id, config->size);
|
||||
philos_free_string_array(config->name, config->size);
|
||||
philos_free_string_array(config->quota, config->size);
|
||||
philos_free_string_array(config->quota, config->size);
|
||||
philos_free_string_array(config->size_memory, config->size);
|
||||
philos_free_int_array(config->soft_restriction_size, config->size);
|
||||
philos_free_int_array(config->soft_restriction_file, config->size);
|
||||
philos_free_int_array(config->severe_limitation_size, config->size);
|
||||
philos_free_int_array(config->severe_limitation_file, config->size);
|
||||
philos_free_int_array(config->deferring_size, config->size);
|
||||
philos_free_int_array(config->deferring_file, config->size);
|
||||
philos_free_int_array(config->size_memory_pow, config->size);
|
||||
philos_free_int_array(config->soft_restriction_size_pow, config->size);
|
||||
philos_free_int_array(config->soft_restriction_file_pow, config->size);
|
||||
philos_free_int_array(config->severe_limitation_size_pow, config->size);
|
||||
philos_free_int_array(config->severe_limitation_file_pow, config->size);
|
||||
philos_free_int_array(config->deferring_size_pow, config->size);
|
||||
philos_free_int_array(config->deferring_file_pow, config->size);
|
||||
philos_free_string_array(config->device, config->size);
|
||||
|
||||
config->size = 0;
|
||||
}
|
||||
|
||||
void model_null_cfg(model_cfg_u_g_p* config) {
|
||||
if (config->size == 0) {
|
||||
config->id = NULL;
|
||||
config->name = NULL;
|
||||
config->quota = NULL;
|
||||
config->size_memory = NULL;
|
||||
config->files = NULL;
|
||||
config->soft_restriction_size = NULL;
|
||||
config->soft_restriction_file = NULL;
|
||||
config->severe_limitation_size = NULL;
|
||||
config->severe_limitation_file = NULL;
|
||||
config->deferring_size = NULL;
|
||||
config->deferring_file = NULL;
|
||||
config->size_memory_pow = NULL;
|
||||
config->soft_restriction_size_pow = NULL;
|
||||
config->soft_restriction_file_pow = NULL;
|
||||
config->severe_limitation_size_pow = NULL;
|
||||
config->severe_limitation_file_pow = NULL;
|
||||
config->deferring_size_pow = NULL;
|
||||
config->deferring_file_pow = NULL;
|
||||
config->device = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
void model_clear_general(model_cfg_general* config) {
|
||||
philos_free_int_array(config->flag_status, config->size);
|
||||
|
||||
config->size = 0;
|
||||
}
|
||||
|
||||
void model_null_general(model_cfg_general* config) {
|
||||
if (config->size == 0) {
|
||||
config->flag_status = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
void model_tree_view_add(model_cfg_general* config) {
|
||||
model_null_str_writing(config, config->size);
|
||||
}
|
||||
|
||||
void model_null_str_writing(model_cfg_general* config, int index) {
|
||||
philos_set_size_memory_integer_char("-", config->name, index);
|
||||
philos_set_size_memory_integer_char("-", config->quota, index);
|
||||
philos_set_size_memory_integer_char("-", config->size_memory, index);
|
||||
philos_set_size_memory_integer_char("-", config->files, index);
|
||||
philos_set_size_memory_integer_char("-", config->device, index);
|
||||
philos_set_pow_size_memory("-", config->soft_restriction_size, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->soft_restriction_file, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->severe_limitation_size, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->severe_limitation_file, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->deferring_size, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->deferring_file, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->size_memory_pow, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->soft_restriction_size_pow, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->soft_restriction_file_pow, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->severe_limitation_size_pow, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->severe_limitation_file_pow, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->deferring_size_pow, index, array_size_pow);
|
||||
philos_set_pow_size_memory("-", config->deferring_file_pow, index, array_size_pow);
|
||||
|
||||
}
|
||||
|
||||
|
||||
void model_array_size_memory() {
|
||||
int size_array_size_pow = 0;
|
||||
array_size_pow = yon_char_parsed_append(array_size_pow,&size_array_size_pow, STR_KB);
|
||||
array_size_pow = yon_char_parsed_append(array_size_pow,&size_array_size_pow, STR_MB);
|
||||
array_size_pow = yon_char_parsed_append(array_size_pow,&size_array_size_pow, STR_GB);
|
||||
array_size_pow = yon_char_parsed_append(array_size_pow,&size_array_size_pow, STR_TB);
|
||||
}
|
||||
|
||||
void fill_tree_view_u_g_p(struct_gui* config_gui, model_cfg_general* config, int start, int flag_gui_add) {
|
||||
GtkTreeModel *model = GTK_TREE_MODEL(config_gui->list);
|
||||
if (flag_gui_add == 0) {
|
||||
g_object_ref(config_gui->list);
|
||||
gtk_list_store_clear(config_gui->list);
|
||||
}
|
||||
for (int index = start; index < config->size; index++) {
|
||||
GtkTreeIter iter;
|
||||
gtk_list_store_append(config_gui->list,&iter);
|
||||
if (strcmp(config->type_arr, "project") != 0) {
|
||||
gtk_list_store_set(config_gui->list,&iter,
|
||||
0,config->name[index],
|
||||
1,config->quota[index],
|
||||
2,config->files[index],
|
||||
3,philos_format_cfg_str_size_memory("", config->soft_restriction_size[index],config->soft_restriction_size_pow[index]),
|
||||
4,philos_format_cfg_str_size_memory("", config->soft_restriction_file[index],config->soft_restriction_file_pow[index]),
|
||||
5,philos_format_cfg_str_size_memory("", config->severe_limitation_size[index],config->severe_limitation_size_pow[index]),
|
||||
6,philos_format_cfg_str_size_memory("", config->severe_limitation_file[index], config->severe_limitation_file_pow[index]),
|
||||
7,philos_format_cfg_str_size_memory("", config->deferring_size[index], config->deferring_size_pow[index]),
|
||||
8,philos_format_cfg_str_size_memory("", config->deferring_file[index], config->deferring_file_pow[index]),
|
||||
-1);
|
||||
}
|
||||
else {
|
||||
gtk_list_store_set(config_gui->list,&iter,
|
||||
0,config->id[index]
|
||||
1,config->name[index],
|
||||
2,config->quota[index],
|
||||
3,config->files[index],
|
||||
4,philos_format_cfg_str_size_memory("", config->soft_restriction_size[index],config->soft_restriction_size_pow[index]),
|
||||
5,philos_format_cfg_str_size_memory("", config->soft_restriction_file[index],config->soft_restriction_file_pow[index]),
|
||||
6,philos_format_cfg_str_size_memory("", config->severe_limitation_size[index],config->severe_limitation_size_pow[index]),
|
||||
7,philos_format_cfg_str_size_memory("", config->severe_limitation_file[index], config->severe_limitation_file_pow[index]),
|
||||
8,philos_format_cfg_str_size_memory("", config->deferring_size[index], config->deferring_size_pow[index]),
|
||||
9,philos_format_cfg_str_size_memory("", config->deferring_file[index], config->deferring_file_pow[index]),
|
||||
-1);
|
||||
}
|
||||
}
|
||||
if (flag_gui_add != 0) {
|
||||
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->treeViewMain), model);
|
||||
}
|
||||
}
|
||||
void fill_tree_view_u_g_p(struct_gui* config_gui, model_cfg_general* config, int start,int flag_gui_add) {
|
||||
GtkTreeModel *model = GTK_TREE_MODEL(config_gui->list);
|
||||
if (flag_gui_add == 0) {
|
||||
g_object_ref(config_gui->list);
|
||||
gtk_list_store_clear(config_gui->list);
|
||||
}
|
||||
for (int index = start; index < config->size; index++) {
|
||||
GtkTreeIter iter;
|
||||
gtk_list_store_append(config_gui->list,&iter);
|
||||
if (strcmp(config->type_arr, "project") != 0) {
|
||||
gtk_list_store_set(config_gui->list,&iter, -1);
|
||||
}
|
||||
}
|
||||
if (flag_gui_add != 0) {
|
||||
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->treeViewMain), model);
|
||||
}
|
||||
}
|
@ -0,0 +1,43 @@
|
||||
#include "ubl-utils.h"
|
||||
#include "ubl-strings.h"
|
||||
#include "model.h"
|
||||
|
||||
static char** array_size_pow = NULL;
|
||||
|
||||
struct model_cfg_u_g_p {
|
||||
char* type_arr;
|
||||
int* id;
|
||||
char** name;
|
||||
char** quota;
|
||||
char** size_memory;
|
||||
char** files;
|
||||
|
||||
int* soft_restriction_size;
|
||||
int* soft_restriction_file;
|
||||
int* severe_limitation_size;
|
||||
int* severe_limitation_file;
|
||||
int* deferring_size;
|
||||
int* deferring_file;
|
||||
|
||||
int* size_memory_pow;
|
||||
int* soft_restriction_size_pow;
|
||||
int* soft_restriction_file_pow;
|
||||
int* severe_limitation_size_pow;
|
||||
int* severe_limitation_file_pow;
|
||||
int* deferring_size_pow;
|
||||
int* deferring_file_pow;
|
||||
char** device;
|
||||
size_t size;
|
||||
int flag_set_data;
|
||||
int flag_save;
|
||||
int flag_load;
|
||||
};
|
||||
|
||||
|
||||
struct model_cfg_general{
|
||||
int *flag_status;
|
||||
}
|
||||
|
||||
struct struct_gui {
|
||||
int flag_load;
|
||||
}
|
@ -0,0 +1,50 @@
|
||||
#include "my_device.h"
|
||||
|
||||
device_config obj_device_config;
|
||||
|
||||
device_config* get_device_cfg() {
|
||||
return &obj_device_config;
|
||||
}
|
||||
|
||||
void device_disk_parsed() {
|
||||
char* cmd = "lsblk --fs --raw --output PATH,FSTYPE --exclude 7,11,253";
|
||||
int size = 0;
|
||||
char** responce = yon_config_load(cmd, &size);
|
||||
obj_device_config.size_disk = 0;
|
||||
char* split_simvol = " ";
|
||||
for (int index = 1; index < size; index++ ) {
|
||||
char* disk = yon_char_divide_search(responce[index], "\n", -1);
|
||||
if (yon_char_find_count(disk, " ") != 0) {
|
||||
char* name_disk = yon_char_divide_search(disk, " ", -1);
|
||||
obj_device_config.name_disk = yon_char_parsed_append(obj_device_config.name_disk, &obj_device_config.size_disk, name_disk);
|
||||
obj_device_config.size_disk--;
|
||||
obj_device_config.file_system = yon_char_parsed_append(obj_device_config.file_system, &obj_device_config.size_disk, disk);
|
||||
obj_device_config.size_disk--;
|
||||
obj_device_config.mounted = yon_char_parsed_append(obj_device_config.mounted, &obj_device_config.size_disk, "");
|
||||
obj_device_config.size_disk--;
|
||||
obj_device_config.type_dick = yon_char_parsed_append(obj_device_config.type_dick, &obj_device_config.size_disk, "");
|
||||
obj_device_config.size_disk--;
|
||||
disk = yon_char_replace(disk," ", "");
|
||||
if (strlen(disk)!=0) {
|
||||
char* description_disk = yon_char_unite(name_disk,
|
||||
split_simvol,
|
||||
disk,
|
||||
NULL);
|
||||
obj_device_config.description_disk = yon_char_parsed_append(obj_device_config.description_disk, &obj_device_config.size_disk, description_disk);
|
||||
free(description_disk);
|
||||
|
||||
}
|
||||
free(name_disk);
|
||||
}
|
||||
free(disk);
|
||||
}
|
||||
philos_free_string_array(&responce, size);
|
||||
|
||||
}
|
||||
void device_fill_disk(GtkWidget* combo_box_text) {
|
||||
for (int index = 0; index < obj_device_config.size_disk; index++) {
|
||||
gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo_box_text), obj_device_config.description_disk[index]);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,24 @@
|
||||
#ifndef MY_DEVICE_H
|
||||
#define MY_DEVICE_H
|
||||
#include "ubl-utils.h"
|
||||
#include <locale.h>
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#include "philos_utils.h"
|
||||
typedef struct {
|
||||
char** name_disk;
|
||||
char** file_system;
|
||||
char** mounted;
|
||||
char** type_dick;
|
||||
char** description_disk;
|
||||
int size_disk;
|
||||
} device_config;
|
||||
|
||||
void device_disk_parsed();
|
||||
device_config* get_device_cfg();
|
||||
void device_fill_disk(GtkWidget* combo_box_text);
|
||||
size_t get_mem_total();
|
||||
float get_size_pow_memory(size_t size_memory, int size);
|
||||
size_t get_resurs_total(char* cmd);
|
||||
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,120 @@
|
||||
#ifndef PHILOS_UTILS_H
|
||||
#define PHILOS_UTILS_H
|
||||
#include "ubl-utils.h"
|
||||
#include <pthread.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#include <pthread.h>
|
||||
#include <string.h>
|
||||
#include <dirent.h>
|
||||
#include <locale.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <gtk/gtkx.h>
|
||||
#include <vte/vte.h>
|
||||
#include <pwd.h>
|
||||
#include <stdbool.h>
|
||||
#include "my_device.h"
|
||||
|
||||
#define catch(x) ExitJmp:if(__HadError)
|
||||
#define throw(x) {__HadError=true;goto ExitJmp;}
|
||||
#define file_source_login_min_max "/etc/login.defs"
|
||||
static char** array_size_pow;
|
||||
typedef struct {
|
||||
char** disk_read;
|
||||
char** disk_write;
|
||||
int* i_o_limit_read;
|
||||
int* i_o_limit_write;
|
||||
int* i_o_limit_read_size;
|
||||
int* i_o_limit_write_size;
|
||||
int size;
|
||||
int size_disk;
|
||||
} temp_config;
|
||||
|
||||
typedef struct {
|
||||
|
||||
GtkWidget* Window;
|
||||
GtkWidget* btnSaveTempSave;
|
||||
GtkWidget* btnTempCancel;
|
||||
|
||||
GtkWidget* entryTempCmd;
|
||||
GtkWidget* chbTempRead;
|
||||
GtkWidget* spinTempRead;
|
||||
GtkWidget* cbtTempRead;
|
||||
|
||||
GtkWidget* chbTempWrite;
|
||||
GtkWidget* spinTempWrite;
|
||||
GtkWidget* cbtTempWrite;
|
||||
|
||||
GtkWidget* chkSoftRestrictionTemp;
|
||||
GtkWidget* spiSevereRestrictionTemp;
|
||||
GtkWidget* cmSevereRestrictionTemp;
|
||||
|
||||
GtkWidget* chkSevereRestrictionTemp;
|
||||
GtkWidget* spinSevereRestrictionTemp;
|
||||
GtkWidget* cmbSevereRestrictionTemp;
|
||||
|
||||
GtkWidget* chkPaddingFLTemp;
|
||||
GtkWidget* spinPaddingFLTemp;
|
||||
GtkWidget* cmbPaddingFLTemp;
|
||||
|
||||
GtkWidget* chkCPULimitTemp;
|
||||
GtkWidget* spinCPULimitTemp;
|
||||
GtkWidget* lblCPULimitTemp;
|
||||
|
||||
GtkWidget* cbtTempDevice;
|
||||
GtkWidget* cbxTempQuotaObj;
|
||||
GtkWidget* cbxTempQuotaLevel2;
|
||||
GtkWidget* boxBlockGui;
|
||||
} temp_set_window;
|
||||
void philos_array_string_remove_char(char*** array, char* str_remove, int size);
|
||||
void philos_set_pow_size_memory(char* str_find, int** array_size,int index, char** array_size_pow);
|
||||
void philos_set_size_memory_integer_char(char* str_find, char*** array_data, int index);
|
||||
void philos_free_string_array(char ***array, int size);
|
||||
void philos_free_string_array_n3(char ****array, int size);
|
||||
void philos_free_int_array(int **array, int size);
|
||||
void philos_free_int_array_n2(int ***array, int size);
|
||||
config_str philos_list_group(int* size);
|
||||
unsigned short philos_read_uid_min_max(char* filename, char* search);
|
||||
config_str philos_list_user(int* size);
|
||||
char* philos_str_size_pow_byte(GtkWidget *combo_box_text);
|
||||
char* philos_str_remove(char *str, const char *sub);
|
||||
void philos_split_size_memory(char* str_value, int* size, char* pow_memory);
|
||||
char* philos_format_cfg_str_size_memory(char* str_key, int value, int pow_size_memory);
|
||||
char** philos_str_split(char *parameters, int *size, char *divider);
|
||||
void philos_array_str_copy(char*** source, char*** copy);
|
||||
void philos_set_pow_size_memory_device(char* str_find, int** array_size,int index, char** array_size_pow);
|
||||
void philos_array_int_copy(int** source, int** copy);
|
||||
char** philos_pars_terminal_systemd_cgls(char* CMD_GET_SLICE_SERVICE, char* str_find, int* size_array_data);
|
||||
char* philos_pard_array_add_cmd(char* cmd, temp_config* _config, char* key, int* array_io, int* array_io_pow_size, char** disk, int size);
|
||||
int philos_check_activ_disk(temp_set_window *widgets, temp_config* _config);
|
||||
void philos_temp_generate_cmd(temp_set_window *widgets, temp_config* _config);
|
||||
void philos_temp_del_disk(temp_set_window *widgets, temp_config* _config, int flag_check_array);
|
||||
void philos_temp_config_init(temp_config* _config);
|
||||
void philos_update_device_to_entry(temp_set_window *widgets, temp_config* _config, int flag_check_array);
|
||||
void philos_temp_add_disk(temp_set_window *widgets, temp_config* _config, int flag_check_array);
|
||||
int* philos_int_append(int* array, int* size, int value);
|
||||
int* remove_element_int_array(int* array, int* size, int item_to_delete);
|
||||
int** remove_element_int_array_n3(int** array, int* size, int item_to_delete);
|
||||
char* philos_get_size_bite(GtkWidget* chk_button, GtkWidget* spin, GtkWidget* combo_box_text);
|
||||
void philos_fill_combo_box_text(GtkWidget *cbt, config_str list_data, int size);
|
||||
void philos_set_spin_adjustment(GtkWidget *check, GtkWidget *spin, GtkWidget *combo, size_t value);
|
||||
void philos_set_active_widgets(GtkWidget *check, GtkWidget *spin, GtkWidget *combo, int flag_cpu, char* cmd);
|
||||
size_t get_resurs_total(char* cmd);
|
||||
float get_size_pow_memory(size_t size_memory, int size);
|
||||
void philos_set_active_widgets_device_io(GtkWidget* combo_to_l2,GtkWidget *check, GtkWidget *spin, GtkWidget *combo);
|
||||
char *yon_char_get_augumented(char *source, char *append);
|
||||
dictionary *yon_dictionary_create_with_data_connected(dictionary *dict, char *key, void *data);
|
||||
char **yon_char_parsed_shrink(char **char_string, int *size, int item_to_delete);
|
||||
char*** yon_char_parsed_shrink_n3(char ***char_string, int *size, int item_to_delete);
|
||||
dictionary *yon_dictionary_create_empty();
|
||||
void yon_terminal_integrated_launch(GtkWidget *terminal, char* command, void *endwork_function, void* endwork_function_argument);
|
||||
dictionary *yon_dictionary_create_conneced(dictionary *targetdict);
|
||||
void yon_int_array_append(int **source, int append);
|
||||
static void child_ready(VteTerminal *terminal, GPid pid, GError *error, gpointer user_data);
|
||||
int philos_config_save(char *command);
|
||||
void philos_array_int_pars_to(int** array, int to);
|
||||
void philos_array_char_pars_to(char*** array, char* to);
|
||||
int find_null_array(temp_config* _config);
|
||||
void init_device_disk(temp_config* _config);
|
||||
#endif
|
@ -1,34 +0,0 @@
|
||||
#include "load.h"
|
||||
|
||||
namespace Lib_Load{
|
||||
void Load::set_count_error(int count_error) {
|
||||
process.set_count_error(count_error);
|
||||
}
|
||||
string Load::get_cmd_error() {
|
||||
return process.get_cmd_error();
|
||||
}
|
||||
map<string, string>& Load::get_load_data(std::map <string, string> &map_temp, string cmd) {
|
||||
string response = "";
|
||||
string key = "";
|
||||
string value = "";
|
||||
response = process.call_all_sections(cmd);
|
||||
vector<string> vec_str_key_value = Utils::split(response, '\n');
|
||||
for (const string ¶m: vec_str_key_value) {
|
||||
if ((param.find("(null)") == std::string::npos) && (param.length() != 0 )) {
|
||||
if (param.find("=") != std::string::npos) {
|
||||
size_t index = param.find("=");
|
||||
key = param.substr(0, index);
|
||||
value = param.substr(index + 1, param.length());
|
||||
Utils::str_replace_all(value, " \"","");
|
||||
Utils::str_replace_all(value, "\"","");
|
||||
map_temp[key] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
return map_temp;
|
||||
}
|
||||
int Load::get_count_error() {
|
||||
return process.get_count_error();
|
||||
}
|
||||
|
||||
}
|
@ -1,20 +0,0 @@
|
||||
#ifndef LOAD_H
|
||||
#define LOAD_H
|
||||
|
||||
#include "my_process.h"
|
||||
namespace Lib_Load{
|
||||
class Load {
|
||||
|
||||
private:
|
||||
string sections;
|
||||
My_Process::My_Process_call process = My_Process::My_Process_call();
|
||||
public:
|
||||
int get_count_error();
|
||||
void set_count_error(int count_error);
|
||||
string get_cmd_error();
|
||||
map<string, string>& get_load_data(std::map <string, string> &map_temp, string str_flag_load);
|
||||
};
|
||||
|
||||
|
||||
}
|
||||
#endif
|
@ -1,84 +0,0 @@
|
||||
#include "my_process.h"
|
||||
#include "util.h"
|
||||
|
||||
namespace My_Process {
|
||||
#define debug false
|
||||
struct Utils::Result<string> My_Process_call::call(string cmd) {
|
||||
this->i_error_old = this->i_error;
|
||||
struct Utils::Result<string> obj_result;
|
||||
string response = Utils::call(cmd);
|
||||
obj_result.response = response;
|
||||
if ((response.find("(null)") == std::string::npos) && (response.length() != 0 )) {
|
||||
if (response.find("=") != std::string::npos) {
|
||||
if (response.find("\n") != std::string::npos) {
|
||||
response = response.substr(response.find("=")+1,response.length());
|
||||
response = response.substr(0,response.find("\n"));
|
||||
obj_result.response = response;
|
||||
obj_result.error = 0;
|
||||
}
|
||||
else {
|
||||
obj_result.error = 1;
|
||||
this->i_error += 1;
|
||||
this->log_mess_error(cmd);
|
||||
}
|
||||
}
|
||||
else {
|
||||
obj_result.error = 2;
|
||||
this->i_error += 1;
|
||||
str_cmd_error = cmd;
|
||||
this->log_mess_error(cmd);
|
||||
}
|
||||
}
|
||||
else {
|
||||
obj_result.error = 3;
|
||||
this->i_error += 1;
|
||||
str_cmd_error = cmd;
|
||||
this->log_mess_error(cmd);
|
||||
}
|
||||
return obj_result;
|
||||
}
|
||||
|
||||
int My_Process::get_count_error() {
|
||||
return this->i_error;
|
||||
}
|
||||
|
||||
void My_Process::set_back_count_error() {
|
||||
this->i_error = this->i_error_old;
|
||||
}
|
||||
|
||||
void My_Process_system::call(string cmd, string thread_str = "") {
|
||||
string cmd_new = cmd + " " + thread_str;
|
||||
int response_cmd = system(cmd_new.c_str());
|
||||
if (response_cmd != 0) {
|
||||
this->i_error += 1;
|
||||
}
|
||||
}
|
||||
|
||||
void My_Process::set_count_error(int count_error) {
|
||||
this->i_error = count_error;
|
||||
this->str_cmd_error = "";
|
||||
}
|
||||
|
||||
void My_Process::log_mess_error(string) {
|
||||
}
|
||||
|
||||
string My_Process::get_cmd_error() {
|
||||
return this->str_cmd_error;
|
||||
}
|
||||
string My_Process_call::call_all_sections(string cmd) {
|
||||
char buffer[PATH_MAX] = {0};
|
||||
std::string result = "";
|
||||
FILE* pipe = popen(cmd.c_str(), "r");
|
||||
if (!pipe) throw std::runtime_error("popen() failed!");
|
||||
try {
|
||||
while (fgets(buffer, sizeof buffer, pipe) != NULL) {
|
||||
result += buffer;
|
||||
}
|
||||
} catch (...) {
|
||||
pclose(pipe);
|
||||
throw;
|
||||
}
|
||||
pclose(pipe);
|
||||
return result;
|
||||
}
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
#ifndef MY_PROCESS_H
|
||||
#define MY_PROCESS_H
|
||||
|
||||
#include "util.h"
|
||||
namespace My_Process {
|
||||
class My_Process {
|
||||
public:
|
||||
int i_error = 0;
|
||||
int i_error_old = 0;
|
||||
string str_cmd_error = "";
|
||||
int get_count_error();
|
||||
void set_count_error(int count_error);
|
||||
void set_back_count_error();
|
||||
void log_mess_error(string);
|
||||
string get_cmd_error();
|
||||
};
|
||||
|
||||
|
||||
class My_Process_call: public My_Process {
|
||||
public:
|
||||
struct Utils::Result<string> call(string cmd);
|
||||
string call_all_sections(string cmd);
|
||||
|
||||
};
|
||||
|
||||
class My_Process_system: public My_Process {
|
||||
public:
|
||||
void call(string cmd, string thread_str);
|
||||
|
||||
};
|
||||
}
|
||||
#endif
|
@ -1,151 +0,0 @@
|
||||
#include "save.h"
|
||||
|
||||
namespace Lib_save {
|
||||
|
||||
vector<string> Save::get_error() {
|
||||
return this->vec_errors;
|
||||
}
|
||||
|
||||
bool Save::get_state_save() {
|
||||
return this->flag_no_save;
|
||||
}
|
||||
|
||||
void Save::set_data_global(std::map <string, string> &map_global) {
|
||||
this->map_global = &map_global;
|
||||
}
|
||||
|
||||
void Save::set_data_local(std::map <string, string> &map_local) {
|
||||
this->map_local = &map_local;
|
||||
}
|
||||
|
||||
void Save::set_data_gui(std::map <string, string> &map_gui) {
|
||||
this->map_gui = &map_gui;
|
||||
}
|
||||
|
||||
bool Save::check_save(string flag_save, string key_name) {
|
||||
std::map <string, string>:: iterator iter_map_data;
|
||||
std::map <string, string>:: iterator iter_map_data_old;
|
||||
std::map <string, string> *map_data_old;
|
||||
if (flag_save == "system") {
|
||||
map_data_old = map_local;
|
||||
}
|
||||
else if (flag_save == "global") {
|
||||
map_data_old = map_global;
|
||||
}
|
||||
iter_map_data = (*map_gui).find(key_name);
|
||||
iter_map_data_old = (*map_data_old).find(key_name);
|
||||
if ((*map_local).find(key_name) != (*map_local).end() && (*map_global).find(key_name) != (*map_global).end()) {
|
||||
if ((*map_local)[key_name] != (*map_global)[key_name]) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
if (iter_map_data_old == (*map_data_old).end() && iter_map_data != (*map_gui).end()) {
|
||||
return true;
|
||||
}
|
||||
else if (iter_map_data->second != iter_map_data_old->second) {
|
||||
return true;
|
||||
}
|
||||
else if (iter_map_data->second.length() == 0 && iter_map_data_old->second.length() == 0) {
|
||||
return false;
|
||||
}
|
||||
else if (iter_map_data->second == iter_map_data_old->second) {
|
||||
return false;
|
||||
}
|
||||
else {
|
||||
return true;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
int Save::get_count_error() {
|
||||
return process.get_count_error();
|
||||
}
|
||||
|
||||
string Save::get_cmd_error() {
|
||||
return process.get_cmd_error();
|
||||
}
|
||||
|
||||
void Save::set_count_error(int count_error) {
|
||||
process.set_count_error(count_error);
|
||||
}
|
||||
|
||||
void Save::set_vec_params(vector<string>& vec_param_names) {
|
||||
this->vec_param_names = &vec_param_names;
|
||||
}
|
||||
|
||||
void Save::save(string sections, string str_flag_save) {
|
||||
string key = "";
|
||||
string value = "";
|
||||
string cmd = "";
|
||||
string str_error = "";
|
||||
this->flag_no_save = true;
|
||||
for (const auto &key: *vec_param_names) {
|
||||
if (map_gui->find(key) != map_gui->end()) {
|
||||
value = (*map_gui)[key];
|
||||
if (this->check_save(str_flag_save, key)) {
|
||||
if (value.length() != 0) {
|
||||
cmd = "ubconfig --target " + str_flag_save + " set " + sections + " " +
|
||||
key + "=\"" + value + "\"";
|
||||
}
|
||||
else if (value.length() == 0) {
|
||||
cmd = "ubconfig --target " + str_flag_save + " remove " + sections + " " + key;
|
||||
}
|
||||
else {
|
||||
cmd = "";
|
||||
}
|
||||
if (cmd.length() != 0) {
|
||||
process.call(cmd, "");
|
||||
this->flag_no_save = false;
|
||||
str_error = process.get_cmd_error();
|
||||
if (str_error.length() != 0) {
|
||||
this->vec_errors.push_back(str_error);
|
||||
str_error = "";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
void Save::save_one_cmd(string cmd1, string cmd_remove, string str_flag_save) {
|
||||
string key = "";
|
||||
string value = "";
|
||||
string cmd = "";
|
||||
this->flag_no_save = true;
|
||||
cmd = cmd1;
|
||||
string remove = cmd_remove;
|
||||
for (const auto &key: *vec_param_names) {
|
||||
if (map_gui->find(key) != map_gui->end()) {
|
||||
value = (*map_gui)[key];
|
||||
if (this->check_save(str_flag_save, key)) {
|
||||
if (value.length() != 0) {
|
||||
cmd = cmd + key + "=\"" + value + "\" ";
|
||||
}
|
||||
else if (value.length() == 0) {
|
||||
remove = remove + key + " ";
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
if (cmd.length() != cmd1.length()) {
|
||||
this->template_save(cmd);
|
||||
}
|
||||
if (cmd_remove.length() != remove.length()) {
|
||||
this->template_save(remove);
|
||||
}
|
||||
}
|
||||
|
||||
void Save::template_save(string cmd) {
|
||||
string str_error = "";
|
||||
process.call(cmd, "");
|
||||
this->flag_no_save = false;
|
||||
str_error = process.get_cmd_error();
|
||||
if (str_error.length() != 0) {
|
||||
this->vec_errors.push_back(str_error);
|
||||
str_error = "";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
@ -1,33 +0,0 @@
|
||||
#ifndef MY_SAVE_H
|
||||
#define MY_SAVE_H
|
||||
|
||||
#include "my_process.h"
|
||||
namespace Lib_save {
|
||||
|
||||
class Save {
|
||||
private:
|
||||
std::map <string, string> *map_global;
|
||||
std::map <string, string> *map_local;
|
||||
std::map <string, string> *map_gui;
|
||||
vector<string> vec_errors;
|
||||
vector<string>* vec_param_names;
|
||||
My_Process::My_Process_system process = My_Process::My_Process_system();
|
||||
bool flag_no_save;
|
||||
void template_save(string cmd);
|
||||
public:
|
||||
void set_data_global(std::map <string, string> &map_global);
|
||||
void set_data_local(std::map <string, string> &map_local);
|
||||
void set_data_gui(std::map <string, string> &map_gui);
|
||||
bool check_save(string flag_save, string key_name);
|
||||
bool get_state_save();
|
||||
|
||||
void save_one_cmd(string cmd1, string cmd_remove, string str_flag_save);
|
||||
int get_count_error();
|
||||
string get_cmd_error();
|
||||
void set_count_error(int count_error);
|
||||
void set_vec_params(vector<string>& vec_param_names);
|
||||
void save(string sections, string str_flag_save) ;
|
||||
vector<string> get_error();
|
||||
};
|
||||
}
|
||||
#endif
|
@ -1,35 +0,0 @@
|
||||
#ifndef UTIL_H
|
||||
#define UTIL_H
|
||||
#include "../../project_lib.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
namespace Utils {
|
||||
#define file_source_login_min_max "/etc/login.defs"
|
||||
template<typename Type>
|
||||
struct Result{
|
||||
Type response;
|
||||
int error;
|
||||
};
|
||||
|
||||
struct Passwd {
|
||||
string user;
|
||||
int uid;
|
||||
};
|
||||
|
||||
string format_str_size(int num, int index);
|
||||
std::array<std::vector<std::string>, 5> read_csv(const std::string& filename);
|
||||
std::string call(std::string cmd);
|
||||
vector<int> find_all(string &str_ntp, string substr);
|
||||
void str_remove(std::string& source, std::string to_remove);
|
||||
void str_replace_all(string &str_base, string str_find, string str_replace);
|
||||
std::vector<std::string> split(std::string text, char delim);
|
||||
vector <string> pars_users();
|
||||
int synopsis_show(string str_link);
|
||||
string file_read(string filename);
|
||||
unsigned short read_uid_min_max(string filename, string search);
|
||||
vector<string> pars_users();
|
||||
vector<string> pars_group();
|
||||
vector<string> list_groups();
|
||||
}
|
||||
#endif
|
@ -1,133 +0,0 @@
|
||||
#include "wrapper_load_save.h"
|
||||
|
||||
|
||||
|
||||
Wrapper_load_save::Wrapper_load_save(/* args */) {
|
||||
//obj_quotas_sys.set_map_gui(map_gui_cfg);
|
||||
//obj_quotas_ubconfig.set_map_gui(map_gui_cfg);
|
||||
}
|
||||
|
||||
Wrapper_load_save::~Wrapper_load_save()
|
||||
{
|
||||
}
|
||||
|
||||
void Wrapper_load_save::set_map_gui(map_str_str* map_gui_cfg) {
|
||||
this->map_gui_cfg = map_gui_cfg;
|
||||
}
|
||||
|
||||
void Wrapper_load_save::set_map_global(map_str_str* map_global_cfg) {
|
||||
this->map_global_cfg = map_global_cfg;
|
||||
}
|
||||
|
||||
void Wrapper_load_save::set_map_local(map_str_str* map_system_cfg) {
|
||||
this->map_system_cfg = map_system_cfg;
|
||||
}
|
||||
|
||||
void Wrapper_load_save::set_vec_key(vector<string> vec_param_names) {
|
||||
this->vec_param_names = vec_param_names;
|
||||
}
|
||||
|
||||
int Wrapper_load_save::load_global_cfg() {
|
||||
this->load_template(map_global_cfg, global_load);
|
||||
*map_gui_cfg = *map_global_cfg;
|
||||
return 1;
|
||||
|
||||
}
|
||||
|
||||
int Wrapper_load_save::load_system_cfg() {
|
||||
this->load_template(map_system_cfg, system_load);
|
||||
*map_gui_cfg = *map_system_cfg;
|
||||
return 0;
|
||||
|
||||
}
|
||||
|
||||
void Wrapper_load_save::load_template(map_str_str* map_temp, string cmd) {
|
||||
if (cmd.find("system") != string::npos) {
|
||||
this->init_dict("system");
|
||||
}
|
||||
else {
|
||||
this->init_dict("global");
|
||||
}
|
||||
*map_temp = obj_load.get_load_data(*map_temp, cmd);
|
||||
}
|
||||
|
||||
int Wrapper_load_save::wrapper_save_global_cfg() {
|
||||
this->set_data_cfg();
|
||||
if (this->save_template("boot", "global")) {
|
||||
*map_global_cfg = *map_gui_cfg;
|
||||
return 5;
|
||||
}
|
||||
else {
|
||||
*map_global_cfg = *map_gui_cfg;
|
||||
return 3;
|
||||
}
|
||||
}
|
||||
|
||||
int Wrapper_load_save::wrapper_save_system_cfg() {
|
||||
this->set_data_cfg();
|
||||
if (this->save_template("boot", "system")) {
|
||||
*map_system_cfg = *map_gui_cfg;
|
||||
return 5;
|
||||
}
|
||||
else {
|
||||
*map_system_cfg = *map_gui_cfg;
|
||||
return 2;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
int Wrapper_load_save::wrapper_save_all_cfg() {
|
||||
this->set_data_cfg();
|
||||
bool _flag_save_global = this->save_template("boot", "global");;
|
||||
bool _flag_save_local = this->save_template("boot", "system");
|
||||
if (_flag_save_global && _flag_save_local) {
|
||||
*map_global_cfg = *map_gui_cfg;
|
||||
*map_system_cfg = *map_gui_cfg;
|
||||
return 5;
|
||||
}
|
||||
else {
|
||||
*map_global_cfg = *map_gui_cfg;
|
||||
*map_system_cfg = *map_gui_cfg;
|
||||
return 4;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
int Wrapper_load_save::get_error_load() {
|
||||
return obj_load.get_count_error();
|
||||
}
|
||||
int Wrapper_load_save::get_error_save() {
|
||||
return obj_save.get_count_error();
|
||||
}
|
||||
|
||||
bool Wrapper_load_save::save_template(string section, string flag_save) {
|
||||
bool flag_no_save = true;
|
||||
obj_save.set_data_local(*map_system_cfg);
|
||||
obj_save.set_data_global(*map_global_cfg);
|
||||
obj_save.set_data_gui(*map_gui_cfg);
|
||||
obj_save.set_vec_params(vec_param_names);
|
||||
obj_save.save(section, flag_save);
|
||||
vector<string> obj_vec_error = obj_save.get_error();
|
||||
flag_no_save = obj_save.get_state_save();
|
||||
return flag_no_save;
|
||||
}
|
||||
|
||||
void Wrapper_load_save::init_dict(string flag_load) {
|
||||
map_str_str map_gui_cfg_n;
|
||||
map_gui_cfg_n[""] = "";
|
||||
|
||||
*map_gui_cfg = map_gui_cfg_n;
|
||||
if (flag_load == "global") {
|
||||
*map_global_cfg = *map_gui_cfg;
|
||||
}
|
||||
else if (flag_load == "system") {
|
||||
*map_system_cfg = *map_gui_cfg;
|
||||
}
|
||||
}
|
||||
|
||||
void Wrapper_load_save::set_data_cfg() {
|
||||
// TODO:
|
||||
// Написать функцию
|
||||
}
|
@ -1,55 +0,0 @@
|
||||
#ifndef WRAPPER_LOAD_SAVE_H
|
||||
#define WRAPPER_LOAD_SAVE_H
|
||||
#include "../../my_type.h"
|
||||
#include "../../project_lib.h"
|
||||
#include "load.h"
|
||||
#include "save.h"
|
||||
#include "my_process.h"
|
||||
#include "util.h"
|
||||
#define global_load "ubconfig --default --source global get boot"
|
||||
#define system_load "ubconfig --default --source system get boot"
|
||||
#define global_save "ubconfig --target global --noexecute set boot "
|
||||
#define system_save "ubconfig --target system set boot "
|
||||
#define all_save "ubconfig set boot "
|
||||
#define all_remove "ubconfig set/remove boot "
|
||||
#define global_remove "ubconfig --target global --noexecute set/remove boot "
|
||||
#define system_remove "ubconfig --target system --noexecute set/remove boot "
|
||||
|
||||
|
||||
|
||||
class Wrapper_load_save {
|
||||
private:
|
||||
string str_cmd_error;
|
||||
private:
|
||||
map_str_str* map_gui_cfg = NULL;
|
||||
map_str_str* map_global_cfg = NULL;
|
||||
map_str_str* map_system_cfg = NULL;
|
||||
vector<string> vec_param_names;
|
||||
My_Process::My_Process_system obj_process_system = My_Process::My_Process_system();
|
||||
My_Process::My_Process_call obj_process_call = My_Process::My_Process_call();
|
||||
Lib_save::Save obj_save = Lib_save::Save();
|
||||
Lib_Load::Load obj_load = Lib_Load::Load();
|
||||
public:
|
||||
Wrapper_load_save(/* args */);
|
||||
~Wrapper_load_save();
|
||||
int load_global_cfg();
|
||||
int load_system_cfg();
|
||||
int wrapper_save_system_cfg();
|
||||
int wrapper_save_global_cfg();
|
||||
int wrapper_save_all_cfg();
|
||||
int get_error_load();
|
||||
int get_error_save();
|
||||
void set_map_gui(map_str_str* map_gui_cfg);
|
||||
void set_map_global(map_str_str* map_global_cfg);
|
||||
void set_map_local(map_str_str* map_system_cfg);
|
||||
void set_vec_key(vector<string> vec_param_names);
|
||||
private:
|
||||
void load_template(map_str_str* map_temp, string cmd);
|
||||
void init_dict(string flag_load);
|
||||
void set_data_cfg();
|
||||
bool save_template(string section, string flag_save);
|
||||
|
||||
};
|
||||
|
||||
|
||||
#endif
|
@ -1,141 +0,0 @@
|
||||
#include "view_add_project.h"
|
||||
#include <vector>
|
||||
|
||||
View_add_project::View_add_project(/* args */) {
|
||||
builder = Gtk::Builder::create_from_file(path_glade);
|
||||
this->setting();
|
||||
}
|
||||
|
||||
View_add_project::~View_add_project()
|
||||
{
|
||||
}
|
||||
|
||||
void View_add_project::setting() {
|
||||
this->get_builder();
|
||||
this->lacalization();
|
||||
check_limit(quotegroupSizeSoftLimitCheckProject
|
||||
,quotegroupSizeSoftLimitSpinProject
|
||||
,quotegroupSizeSoftLimitComboProject);
|
||||
check_limit(quotegroupSizeHardLimitCheckProject
|
||||
,quotegroupSizeHardLimitSpin1
|
||||
,quotegroupSizeHardLimitComboProject);
|
||||
check_limit(quotegroupFilesSoftLimitCheckProject
|
||||
,quotegroupFilesSoftLimitSpinProject
|
||||
,quotegroupFilesSoftLimitlabelProject);
|
||||
check_limit(quotegroupFilesHardLimitCheckProject
|
||||
,quotegroupFilesHardLimitSpinProject
|
||||
,quotegroupFilesHarLimitLabelProject);
|
||||
this->event();
|
||||
// ector<string> vec_user = pars_users();
|
||||
|
||||
}
|
||||
|
||||
void View_add_project::load_combo_box_UGP(vector<string> vec_UGP) {
|
||||
cmbSetNameUGP->remove_all();
|
||||
for (auto& iter: vec_UGP) {
|
||||
cmbSetNameUGP->append(iter);
|
||||
}
|
||||
}
|
||||
|
||||
void View_add_project::event() {
|
||||
quotegroupSizeSoftLimitCheckProject->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupSizeSoftLimitCheckProject
|
||||
,quotegroupSizeSoftLimitSpinProject
|
||||
,quotegroupSizeSoftLimitComboProject);
|
||||
});
|
||||
quotegroupSizeHardLimitCheckProject->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupSizeHardLimitCheckProject
|
||||
,quotegroupSizeHardLimitSpin1
|
||||
,quotegroupSizeHardLimitComboProject);
|
||||
});
|
||||
quotegroupFilesSoftLimitCheckProject->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupFilesSoftLimitCheckProject
|
||||
,quotegroupFilesSoftLimitSpinProject
|
||||
,quotegroupFilesSoftLimitlabelProject);
|
||||
});
|
||||
quotegroupFilesHardLimitCheckProject->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupFilesHardLimitCheckProject
|
||||
,quotegroupFilesHardLimitSpinProject
|
||||
,quotegroupFilesHarLimitLabelProject);
|
||||
});
|
||||
quotegroupCancelButtonAdd->signal_clicked().connect([&]() {this->close_wnd();});
|
||||
quotegroupSaveButtonAdd->signal_clicked().connect([&]() {this->save();});
|
||||
btnReviewProject->signal_clicked().connect([&]() {show_file_manager();});
|
||||
btnFilemangerOk->signal_clicked().connect([&]() {save_file_manager();});
|
||||
btnFilemangerExit->signal_clicked().connect([&]() {wndChooseFileWallpaper->hide();});
|
||||
}
|
||||
|
||||
void View_add_project::show_file_manager() {
|
||||
wndChooseFileWallpaper->set_current_folder(open_dir_file_manager);
|
||||
wndChooseFileWallpaper->show();
|
||||
}
|
||||
|
||||
void View_add_project::save_file_manager() {
|
||||
entryCatalogProject->set_text(wndChooseFileWallpaper->get_filename());
|
||||
wndChooseFileWallpaper->hide();
|
||||
}
|
||||
void View_add_project::close_wnd() {
|
||||
wndQuotasAddProject->hide();
|
||||
}
|
||||
|
||||
void View_add_project::save() {
|
||||
wndQuotasAddProject->hide();
|
||||
}
|
||||
|
||||
void View_add_project::show() {
|
||||
wndQuotasAddProject->show();
|
||||
}
|
||||
|
||||
void View_add_project::lacalization() {
|
||||
|
||||
}
|
||||
|
||||
void View_add_project::get_builder() {
|
||||
builder->get_widget("wndQuotasAddProject", wndQuotasAddProject);
|
||||
builder->get_widget("quotegroupSizeFrameLabelProject", quotegroupSizeFrameLabelProject);
|
||||
builder->get_widget("quotegroupFilesFrameLabelProject", quotegroupFilesFrameLabelProject);
|
||||
builder->get_widget("quotegroupSizeCurrentlyLabelProject", quotegroupSizeCurrentlyLabelProject);
|
||||
builder->get_widget("quotegroupFilesCurrentlyLabelProject", quotegroupFilesCurrentlyLabelProject);
|
||||
builder->get_widget("quotegroupSizeSoftLimitLabelProject", quotegroupSizeSoftLimitLabelProject);
|
||||
builder->get_widget("quotegroupFilesSoftLimitLabelProject", quotegroupFilesSoftLimitLabelProject);
|
||||
builder->get_widget("quoteSizeHardLimitLabelProject", quoteSizeHardLimitLabelProject);
|
||||
builder->get_widget("quoteFilesHardLimitLabelProject", quoteFilesHardLimitLabelProject);
|
||||
builder->get_widget("quotegroupFilesSoftLimitlabelProject", quotegroupFilesSoftLimitlabelProject);
|
||||
builder->get_widget("quotegroupFilesHarLimitLabelProject", quotegroupFilesHarLimitLabelProject);
|
||||
builder->get_widget("quotegroupCancelButtonAdd", quotegroupCancelButtonAdd);
|
||||
builder->get_widget("quotegroupSaveButtonAdd", quotegroupSaveButtonAdd);
|
||||
builder->get_widget("lblDeviceProject", lblDeviceProject);
|
||||
builder->get_widget("lblStatusQuotaProject", lblStatusQuotaProject);
|
||||
builder->get_widget("lblCatalogProject", lblCatalogProject);
|
||||
builder->get_widget("lblProjectId", lblProjectId);
|
||||
builder->get_widget("lblProjectName", lblProjectName);
|
||||
builder->get_widget("btnReviewProject", btnReviewProject);
|
||||
builder->get_widget("btnGenerateProject", btnGenerateProject);
|
||||
builder->get_widget("chbAuto", chbAuto);
|
||||
builder->get_widget("entryCatalogProject", entryCatalogProject);
|
||||
builder->get_widget("entryProjectId", entryProjectId);
|
||||
builder->get_widget("entryProjectName", entryProjectName);
|
||||
builder->get_widget("quotegroupSizeSoftLimitCheckProject", quotegroupSizeSoftLimitCheckProject);
|
||||
builder->get_widget("quotegroupSizeHardLimitCheckProject", quotegroupSizeHardLimitCheckProject);
|
||||
builder->get_widget("quotegroupFilesSoftLimitCheckProject", quotegroupFilesSoftLimitCheckProject);
|
||||
builder->get_widget("quotegroupFilesHardLimitCheckProject", quotegroupFilesHardLimitCheckProject);
|
||||
builder->get_widget("quotegroupSizeSoftLimitSpinProject", quotegroupSizeSoftLimitSpinProject);
|
||||
builder->get_widget("quotegroupSizeHardLimitSpin1", quotegroupSizeHardLimitSpin1);
|
||||
builder->get_widget("quotegroupFilesSoftLimitSpinProject", quotegroupFilesSoftLimitSpinProject);
|
||||
builder->get_widget("quotegroupFilesHardLimitSpinProject", quotegroupFilesHardLimitSpinProject);
|
||||
builder->get_widget("quotegroupSizeSoftLimitComboProject", quotegroupSizeSoftLimitComboProject);
|
||||
builder->get_widget("quotegroupSizeHardLimitComboProject", quotegroupSizeHardLimitComboProject);
|
||||
builder->get_widget("wndChooseFileWallpaper", wndChooseFileWallpaper);
|
||||
builder->get_widget("btnFilemangerExit", btnFilemangerExit);
|
||||
builder->get_widget("btnFilemangerOk", btnFilemangerOk);
|
||||
}
|
||||
|
||||
void View_add_project::check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::ComboBoxText *combo_box) {
|
||||
spin->set_sensitive(check_button->get_active());
|
||||
combo_box->set_sensitive(check_button->get_active());
|
||||
}
|
||||
void View_add_project::check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::Label *combo_box) {
|
||||
spin->set_sensitive(check_button->get_active());
|
||||
combo_box->set_sensitive(check_button->get_active());
|
||||
}
|
||||
|
@ -1,69 +0,0 @@
|
||||
#ifndef VIEW_ADD_PROJECT_H
|
||||
#define VIEW_ADD_PROJECT_H
|
||||
#include "../project_lib.h"
|
||||
#include "model/util.h"
|
||||
#include "../var.h"
|
||||
class View_add_project
|
||||
{
|
||||
private:
|
||||
Glib::RefPtr<Gtk::Builder> builder;
|
||||
Gtk::Window* wndQuotasAddProject;
|
||||
Gtk::Label* quotegroupSizeFrameLabelProject;
|
||||
Gtk::Label* quotegroupFilesFrameLabelProject;
|
||||
Gtk::Label* quotegroupSizeCurrentlyLabelProject;
|
||||
Gtk::Label* quotegroupFilesCurrentlyLabelProject;
|
||||
Gtk::Label* quotegroupSizeSoftLimitLabelProject;
|
||||
Gtk::Label* quotegroupFilesSoftLimitLabelProject;
|
||||
Gtk::Label* quoteSizeHardLimitLabelProject;
|
||||
Gtk::Label* quoteFilesHardLimitLabelProject;
|
||||
Gtk::Label* quotegroupFilesSoftLimitlabelProject;
|
||||
Gtk::Label* quotegroupFilesHarLimitLabelProject;
|
||||
Gtk::Label* lblDeviceProject;
|
||||
Gtk::Label* lblStatusQuotaProject;
|
||||
Gtk::Label* lblCatalogProject;
|
||||
Gtk::Label* lblProjectId;
|
||||
Gtk::Label* lblProjectName;
|
||||
Gtk::Button* quotegroupCancelButtonAdd;
|
||||
Gtk::Button* quotegroupSaveButtonAdd;
|
||||
Gtk::Button* btnReviewProject;
|
||||
Gtk::Button* btnGenerateProject;
|
||||
Gtk::Entry* entryCatalogProject;
|
||||
Gtk::Entry* entryProjectId;
|
||||
Gtk::Entry* entryProjectName;
|
||||
Gtk::CheckButton* chbAuto;
|
||||
Gtk::CheckButton* quotegroupSizeSoftLimitCheckProject;
|
||||
Gtk::CheckButton* quotegroupSizeHardLimitCheckProject;
|
||||
Gtk::CheckButton* quotegroupFilesSoftLimitCheckProject;
|
||||
Gtk::CheckButton* quotegroupFilesHardLimitCheckProject;
|
||||
Gtk::SpinButton* quotegroupSizeSoftLimitSpinProject;
|
||||
Gtk::SpinButton* quotegroupSizeHardLimitSpin1;
|
||||
Gtk::SpinButton* quotegroupFilesSoftLimitSpinProject;
|
||||
Gtk::SpinButton* quotegroupFilesHardLimitSpinProject;
|
||||
Gtk::ComboBoxText* quotegroupSizeSoftLimitComboProject;
|
||||
Gtk::ComboBoxText* quotegroupSizeHardLimitComboProject;
|
||||
Gtk::FileChooserDialog* wndChooseFileWallpaper;
|
||||
Gtk::Button* btnFilemangerOk;
|
||||
Gtk::Button* btnFilemangerExit;
|
||||
Gtk::ComboBoxText* cmbSetNameUGP;
|
||||
|
||||
public:
|
||||
View_add_project(/* args */);
|
||||
~View_add_project();
|
||||
void setting();
|
||||
void lacalization();
|
||||
void event();
|
||||
void show();
|
||||
void close_wnd();
|
||||
void save();
|
||||
void get_builder();
|
||||
void check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::ComboBoxText *combo_box);
|
||||
void check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::Label *combo_box);
|
||||
void show_file_manager();
|
||||
void save_file_manager();
|
||||
void load_combo_box_UGP(vector<string> vec_UGP);
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
@ -1,118 +0,0 @@
|
||||
#include "view_add_user_group.h"
|
||||
|
||||
|
||||
View_add_user_group::View_add_user_group(/* args */) {
|
||||
builder = Gtk::Builder::create_from_file(path_glade);
|
||||
this->settings();
|
||||
}
|
||||
|
||||
View_add_user_group::~View_add_user_group() {
|
||||
}
|
||||
|
||||
void View_add_user_group::settings() {
|
||||
this->get_builder();
|
||||
this->lacalization();
|
||||
check_limit(quotegroupSizeSoftLimitCheck
|
||||
,quotegroupSizeSoftLimitSpin
|
||||
,quotegroupSizeSoftLimitCombo);
|
||||
check_limit(quotegroupSizeHardLimitCheck
|
||||
,quotegroupSizeHardLimitSpin
|
||||
,quotegroupSizeHardLimitCombo);
|
||||
check_limit(quotegroupFilesSoftLimitCheck
|
||||
,quotegroupFilesSoftLimitSpin
|
||||
,quotegroupFilesSoftLimitlabel);
|
||||
check_limit(quotegroupFilesHardLimitCheck
|
||||
,quotegroupFilesHardLimitSpin
|
||||
,quotegroupFilesHarLimitLabel);
|
||||
this->event();
|
||||
}
|
||||
|
||||
void View_add_user_group::event() {
|
||||
quotegroupCancelButton->signal_clicked().connect([&]() {QuotasEditWindow->hide();});
|
||||
quotegroupSaveButton->signal_clicked().connect([&]() {});
|
||||
quotegroupSizeSoftLimitCheck->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupSizeSoftLimitCheck
|
||||
,quotegroupSizeSoftLimitSpin
|
||||
,quotegroupSizeSoftLimitCombo);
|
||||
});
|
||||
quotegroupSizeHardLimitCheck->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupSizeHardLimitCheck
|
||||
,quotegroupSizeHardLimitSpin
|
||||
,quotegroupSizeHardLimitCombo);
|
||||
});
|
||||
quotegroupFilesSoftLimitCheck->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupFilesSoftLimitCheck
|
||||
,quotegroupFilesSoftLimitSpin
|
||||
,quotegroupFilesSoftLimitlabel);
|
||||
});
|
||||
quotegroupFilesHardLimitCheck->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupFilesHardLimitCheck
|
||||
,quotegroupFilesHardLimitSpin
|
||||
,quotegroupFilesHarLimitLabel);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
void View_add_user_group::get_builder() {
|
||||
builder->get_widget("lblSetDevice", lblSetDevice);
|
||||
builder->get_widget("lblQuotasStatus", lblQuotasStatus);
|
||||
builder->get_widget("lblSetUGP", lblSetUGP);
|
||||
builder->get_widget("lblSetNameDevice", lblSetNameDevice);
|
||||
builder->get_widget("lblSetQuotasStatus", lblSetQuotasStatus);
|
||||
builder->get_widget("cmbSetNameUGP", cmbSetNameUGP);
|
||||
builder->get_widget("quotegroupSizeFrameLabel", quotegroupSizeFrameLabel);
|
||||
builder->get_widget("quotegroupFilesFrameLabel", quotegroupFilesFrameLabel);
|
||||
builder->get_widget("quotegroupSizeCurrentlyLabel", quotegroupSizeCurrentlyLabel);
|
||||
builder->get_widget("quotegroupFilesCurrentlyLabel", quotegroupFilesCurrentlyLabel);
|
||||
builder->get_widget("quotegroupSizeSoftLimitLabel", quotegroupSizeSoftLimitLabel);
|
||||
builder->get_widget("quoteSizeHardLimitLabel", quoteSizeHardLimitLabel);
|
||||
builder->get_widget("quotegroupFilesSoftLimitLabel", quotegroupFilesSoftLimitLabel);
|
||||
builder->get_widget("quoteFilesHardLimitLabel", quoteFilesHardLimitLabel);
|
||||
builder->get_widget("quotegroupFilesHarLimitLabel", quotegroupFilesHarLimitLabel);
|
||||
builder->get_widget("QuotasEditWindow", QuotasEditWindow);
|
||||
builder->get_widget("lblHeadQuotasEditWindow", lblHeadQuotasEditWindow);
|
||||
builder->get_widget("quotegroupCancelButton", quotegroupCancelButton);
|
||||
builder->get_widget("quotegroupSaveButton", quotegroupSaveButton);
|
||||
builder->get_widget("quotegroupSizeSoftLimitSpin", quotegroupSizeSoftLimitSpin);
|
||||
builder->get_widget("quotegroupSizeHardLimitSpin", quotegroupSizeHardLimitSpin);
|
||||
builder->get_widget("quotegroupFilesSoftLimitSpin", quotegroupFilesSoftLimitSpin);
|
||||
builder->get_widget("quotegroupFilesHardLimitSpin", quotegroupFilesHardLimitSpin);
|
||||
builder->get_widget("quotegroupFilesSoftLimitlabel", quotegroupFilesSoftLimitlabel);
|
||||
builder->get_widget("quotegroupSizeSoftLimitCombo", quotegroupSizeSoftLimitCombo);
|
||||
builder->get_widget("quotegroupSizeHardLimitCombo", quotegroupSizeHardLimitCombo);
|
||||
builder->get_widget("quotegroupSizeSoftLimitCheck", quotegroupSizeSoftLimitCheck);
|
||||
builder->get_widget("quotegroupSizeHardLimitCheck", quotegroupSizeHardLimitCheck);
|
||||
builder->get_widget("quotegroupFilesSoftLimitCheck", quotegroupFilesSoftLimitCheck);
|
||||
builder->get_widget("quotegroupFilesHardLimitCheck", quotegroupFilesHardLimitCheck);
|
||||
|
||||
}
|
||||
|
||||
void View_add_user_group::show() {
|
||||
QuotasEditWindow->show();
|
||||
}
|
||||
|
||||
void View_add_user_group::lacalization() {
|
||||
this->fill_in_pow_memory(quotegroupSizeSoftLimitCombo);
|
||||
this->fill_in_pow_memory(quotegroupSizeHardLimitCombo);
|
||||
|
||||
}
|
||||
|
||||
void View_add_user_group::check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::ComboBoxText *combo_box) {
|
||||
spin->set_sensitive(check_button->get_active());
|
||||
combo_box->set_sensitive(check_button->get_active());
|
||||
}
|
||||
void View_add_user_group::check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::Label *combo_box) {
|
||||
spin->set_sensitive(check_button->get_active());
|
||||
combo_box->set_sensitive(check_button->get_active());
|
||||
}
|
||||
|
||||
void View_add_user_group::fill_in_pow_memory(Gtk::ComboBoxText *cb_text) {
|
||||
cb_text->append(str_prefix_KB);
|
||||
cb_text->append(str_prefix_MB);
|
||||
cb_text->append(str_prefix_GB);
|
||||
cb_text->append(str_prefix_TB);
|
||||
}
|
||||
|
||||
void View_add_user_group::set_label_type_quota(string name) {
|
||||
lblSetUGP->set_text(name);
|
||||
}
|
@ -1,63 +0,0 @@
|
||||
#ifndef VIEW_SET_USER_GROUP_H
|
||||
#define VIEW_SET_USER_GROUP_H
|
||||
#include "../project_lib.h"
|
||||
#include "../var.h"
|
||||
|
||||
using namespace std;
|
||||
class View_add_user_group
|
||||
{
|
||||
private:
|
||||
string str_path_glade;
|
||||
private:
|
||||
Glib::RefPtr<Gtk::Builder> builder;
|
||||
Gtk::Label* lblSetDevice;
|
||||
Gtk::Label* lblQuotasStatus;
|
||||
Gtk::Label* lblSetUGP;
|
||||
Gtk::Label* lblSetNameDevice;
|
||||
Gtk::Label* lblSetQuotasStatus;
|
||||
Gtk::ComboBoxText* cmbSetNameUGP;
|
||||
Gtk::Label *quotegroupSizeFrameLabel;
|
||||
Gtk::Label *quotegroupSizeCurrentlyLabel;
|
||||
Gtk::Label *quoteSizeHardLimitLabel;
|
||||
Gtk::Label *quotegroupFilesFrameLabel;
|
||||
Gtk::Label *quotegroupFilesCurrentlyLabel;
|
||||
Gtk::Label *quotegroupFilesSoftLimitLabel;
|
||||
Gtk::Label *quoteFilesHardLimitLabel;
|
||||
Gtk::Label *quotegroupFilesHarLimitLabel;
|
||||
Gtk::Label *quotegroupSizeSoftLimitLabel;
|
||||
Gtk::Window *QuotasEditWindow;
|
||||
Gtk::Label *lblHeadQuotasEditWindow;
|
||||
Gtk::Button *quotegroupCancelButton;
|
||||
Gtk::Button *quotegroupSaveButton;
|
||||
Gtk::SpinButton *quotegroupSizeSoftLimitSpin;
|
||||
Gtk::SpinButton *quotegroupSizeHardLimitSpin;
|
||||
Gtk::SpinButton *quotegroupFilesSoftLimitSpin;
|
||||
Gtk::SpinButton *quotegroupFilesHardLimitSpin;
|
||||
Gtk::Label *quotegroupFilesSoftLimitlabel;
|
||||
Gtk::ComboBoxText *quotegroupSizeSoftLimitCombo;
|
||||
Gtk::ComboBoxText *quotegroupSizeHardLimitCombo;
|
||||
Gtk::CheckButton *quotegroupSizeSoftLimitCheck;
|
||||
Gtk::CheckButton *quotegroupSizeHardLimitCheck;
|
||||
Gtk::CheckButton *quotegroupFilesSoftLimitCheck;
|
||||
Gtk::CheckButton *quotegroupFilesHardLimitCheck;
|
||||
public:
|
||||
View_add_user_group(/* args */);
|
||||
~View_add_user_group();
|
||||
void lacalization();
|
||||
void event();
|
||||
void get_builder();
|
||||
void settings();
|
||||
void show();
|
||||
void set_path_glade(string str_path_glade);
|
||||
void set_label_type_quota(string name);
|
||||
private:
|
||||
void set_change_gui(Glib::RefPtr<Gtk::ListStore>* list_store, const Gtk::TreeModel::iterator* iter, bool& flag_validate, Gtk::ComboBoxText *combo_box);
|
||||
void fill_in_pow_memory(Gtk::ComboBoxText *cb_text);
|
||||
void check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::ComboBoxText *combo_box);
|
||||
void check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::Label *combo_box);
|
||||
void edit_tree_view_U(Glib::RefPtr<Gtk::ListStore>* list_store, const Gtk::TreeModel::iterator* iter, bool& flag_validate);
|
||||
void edit_tree_view_G(Glib::RefPtr<Gtk::ListStore>* list_store, const Gtk::TreeModel::iterator* iter, bool& flag_validate);
|
||||
void edit_tree_view_P(Glib::RefPtr<Gtk::ListStore>* list_store, const Gtk::TreeModel::iterator* iter, bool& flag_validate);
|
||||
};
|
||||
|
||||
#endif
|
@ -1,116 +0,0 @@
|
||||
#include "view_edit_project.h"
|
||||
|
||||
View_edit_project::View_edit_project(/* args */) {
|
||||
builder = Gtk::Builder::create_from_file(path_glade);
|
||||
this->setting();
|
||||
}
|
||||
|
||||
View_edit_project::~View_edit_project()
|
||||
{
|
||||
}
|
||||
|
||||
void View_edit_project::setting() {
|
||||
this->get_builder();
|
||||
this->lacalization();
|
||||
check_limit(quoteSizeSoftLimitCheckProjectEdit
|
||||
,quoteSizeSoftLimitSpinProjectEdit
|
||||
,quoteSizeSoftLimitComboProjectEdit);
|
||||
check_limit(quoteSizeHardLimitCheckProjectEdit
|
||||
,quoteSizeHardLimitSpinEdit
|
||||
,quoteSizeHardLimitComboProjectEdit);
|
||||
check_limit(quoteFilesSoftLimitCheckProjectEdit
|
||||
,quoteFilesSoftLimitSpinProjectEdit
|
||||
,quoteFilesProjectEdit);
|
||||
check_limit(quoteFilesHardLimitCheckProjectEdit
|
||||
,quoteFilesHardLimitSpinProjectEdit
|
||||
,quoteFiles1ProjectEdit);
|
||||
this->event();
|
||||
}
|
||||
|
||||
void View_edit_project::event() {
|
||||
|
||||
quoteCancelButtonEdit->signal_clicked().connect([&]() {this->close_wnd();});
|
||||
quoteSaveButtonEdit->signal_clicked().connect([&]() {this->save();});
|
||||
quoteSizeSoftLimitCheckProjectEdit->signal_toggled().connect([&]() {
|
||||
check_limit(quoteSizeSoftLimitCheckProjectEdit
|
||||
,quoteSizeSoftLimitSpinProjectEdit
|
||||
,quoteSizeSoftLimitComboProjectEdit);
|
||||
});
|
||||
quoteSizeHardLimitCheckProjectEdit->signal_toggled().connect([&]() {
|
||||
check_limit(quoteSizeHardLimitCheckProjectEdit
|
||||
,quoteSizeHardLimitSpinEdit
|
||||
,quoteSizeHardLimitComboProjectEdit);
|
||||
});
|
||||
quoteFilesSoftLimitCheckProjectEdit->signal_toggled().connect([&]() {
|
||||
check_limit(quoteFilesSoftLimitCheckProjectEdit
|
||||
,quoteFilesSoftLimitSpinProjectEdit
|
||||
,quoteFilesProjectEdit);
|
||||
});
|
||||
quoteFilesSoftLimitCheckProjectEdit->signal_toggled().connect([&]() {
|
||||
check_limit(quoteFilesSoftLimitCheckProjectEdit
|
||||
,quoteFilesHardLimitSpinProjectEdit
|
||||
,quoteFiles1ProjectEdit);
|
||||
});
|
||||
}
|
||||
|
||||
void View_edit_project::close_wnd() {
|
||||
wndQuotasEditProject->hide();
|
||||
}
|
||||
|
||||
void View_edit_project::save() {
|
||||
wndQuotasEditProject->hide();
|
||||
}
|
||||
|
||||
void View_edit_project::show() {
|
||||
wndQuotasEditProject->show();
|
||||
}
|
||||
|
||||
void View_edit_project::get_builder() {
|
||||
builder->get_widget("lblDeviceProjectEdit", lblDeviceProjectEdit);
|
||||
builder->get_widget("lblEditDeviceProjectValue", lblEditDeviceProjectValue);
|
||||
builder->get_widget("lblStatusQuotaProjectEdit", lblStatusQuotaProjectEdit);
|
||||
builder->get_widget("lblStatusQuotaProjectValueEdit", lblStatusQuotaProjectValueEdit);
|
||||
builder->get_widget("lblCatalogProjectEdit", lblCatalogProjectEdit);
|
||||
builder->get_widget("lblCatalogProjectEdit", lblCatalogProjectEdit);
|
||||
builder->get_widget("lblProjectIdEdit", lblProjectIdEdit);
|
||||
builder->get_widget("lblProjectIdValueEdit", lblProjectIdValueEdit);
|
||||
builder->get_widget("lblProjectNameEdit", lblProjectNameEdit);
|
||||
builder->get_widget("entryProjectNameEditValue", entryProjectNameEditValue);
|
||||
builder->get_widget("quoteSizeFrameLabelProjectEdit", quoteSizeFrameLabelProjectEdit);
|
||||
builder->get_widget("quoteSizeCurrentlyLabelProjectEdit", quoteSizeCurrentlyLabelProjectEdit);
|
||||
builder->get_widget("quoteSizeSoftLimitLabelProjectEdit", quoteSizeSoftLimitLabelProjectEdit);
|
||||
builder->get_widget("quoteSizeSoftLimitCheckProjectEdit", quoteSizeSoftLimitCheckProjectEdit);
|
||||
builder->get_widget("quoteSizeSoftLimitSpinProjectEdit", quoteSizeSoftLimitSpinProjectEdit);
|
||||
builder->get_widget("quoteSizeSoftLimitComboProjectEdit", quoteSizeSoftLimitComboProjectEdit);
|
||||
builder->get_widget("quoteSizeHardLimitLabelProjectEdit", quoteSizeHardLimitLabelProjectEdit);
|
||||
builder->get_widget("quoteSizeHardLimitCheckProjectEdit", quoteSizeHardLimitCheckProjectEdit);
|
||||
builder->get_widget("quoteSizeHardLimitSpinEdit", quoteSizeHardLimitSpinEdit);
|
||||
builder->get_widget("quoteSizeHardLimitComboProjectEdit", quoteSizeHardLimitComboProjectEdit);
|
||||
builder->get_widget("quoteFilesFrameLabelProjectEdit", quoteFilesFrameLabelProjectEdit);
|
||||
builder->get_widget("quoteFilesCurrentlyLabelProjectEdit", quoteFilesCurrentlyLabelProjectEdit);
|
||||
builder->get_widget("quoteFilesSoftLimitLabelProjectEdit", quoteFilesSoftLimitLabelProjectEdit);
|
||||
builder->get_widget("quoteFilesSoftLimitCheckProjectEdit", quoteFilesSoftLimitCheckProjectEdit);
|
||||
builder->get_widget("quoteFilesSoftLimitSpinProjectEdit", quoteFilesSoftLimitSpinProjectEdit);
|
||||
builder->get_widget("quoteFilesHardLimitCheckProjectEdit", quoteFilesHardLimitCheckProjectEdit);
|
||||
builder->get_widget("quoteFilesHardLimitSpinProjectEdit", quoteFilesHardLimitSpinProjectEdit);
|
||||
builder->get_widget("quoteCancelButtonEdit", quoteCancelButtonEdit);
|
||||
builder->get_widget("quoteSaveButtonEdit", quoteSaveButtonEdit);
|
||||
builder->get_widget("quoteFilesProjectEdit", quoteFilesProjectEdit);
|
||||
builder->get_widget("quoteFiles1ProjectEdit", quoteFiles1ProjectEdit);
|
||||
builder->get_widget("wndQuotasEditProject", wndQuotasEditProject);
|
||||
builder->get_widget("quoteFilesHardLimitLabelProject1", quoteFilesHardLimitLabelProject1);
|
||||
}
|
||||
|
||||
void View_edit_project::lacalization() {
|
||||
|
||||
}
|
||||
|
||||
|
||||
void View_edit_project::check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::ComboBoxText *combo_box) {
|
||||
spin->set_sensitive(check_button->get_active());
|
||||
combo_box->set_sensitive(check_button->get_active());
|
||||
}
|
||||
void View_edit_project::check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::Label *combo_box) {
|
||||
spin->set_sensitive(check_button->get_active());
|
||||
combo_box->set_sensitive(check_button->get_active());
|
||||
}
|
@ -1,58 +0,0 @@
|
||||
#ifndef VIEW_EDIT_PROJECT_H
|
||||
#define VIEW_EDIT_PROJECT_H
|
||||
#include "../project_lib.h"
|
||||
#include "../var.h"
|
||||
class View_edit_project
|
||||
{
|
||||
private:
|
||||
Glib::RefPtr<Gtk::Builder> builder;
|
||||
Gtk::Window* wndQuotasEditProject;
|
||||
Gtk::Label* lblDeviceProjectEdit;
|
||||
Gtk::Label* lblEditDeviceProjectValue;
|
||||
Gtk::Label* lblStatusQuotaProjectEdit;
|
||||
Gtk::Label* lblStatusQuotaProjectValueEdit;
|
||||
Gtk::Label* lblCatalogProjectEdit;
|
||||
Gtk::Label* lblProjectIdEdit;
|
||||
Gtk::Label* lblProjectIdValueEdit;
|
||||
Gtk::Label* lblProjectNameEdit;
|
||||
Gtk::Label* quoteSizeFrameLabelProjectEdit;
|
||||
Gtk::Label* quoteFilesFrameLabelProjectEdit;
|
||||
Gtk::Label* quoteSizeCurrentlyLabelProjectEdit;
|
||||
Gtk::Label* quoteSizeSoftLimitLabelProjectEdit;
|
||||
Gtk::Label* quoteSizeHardLimitLabelProjectEdit;
|
||||
Gtk::Label* quoteFilesCurrentlyLabelProjectEdit;
|
||||
Gtk::Label* quoteFilesSoftLimitLabelProjectEdit;
|
||||
Gtk::Label* quoteFilesHardLimitLabelProject1;
|
||||
Gtk::Label* quoteFilesProjectEdit;
|
||||
Gtk::Label* quoteFiles1ProjectEdit;
|
||||
Gtk::CheckButton* quoteSizeSoftLimitCheckProjectEdit;
|
||||
Gtk::CheckButton* quoteSizeHardLimitCheckProjectEdit;
|
||||
Gtk::CheckButton* quoteFilesSoftLimitCheckProjectEdit;
|
||||
Gtk::CheckButton* quoteFilesHardLimitCheckProjectEdit;
|
||||
Gtk::SpinButton* quoteSizeSoftLimitSpinProjectEdit;
|
||||
Gtk::SpinButton* quoteSizeHardLimitSpinEdit;
|
||||
Gtk::SpinButton* quoteFilesSoftLimitSpinProjectEdit;
|
||||
Gtk::SpinButton* quoteFilesHardLimitSpinProjectEdit;
|
||||
Gtk::ComboBoxText* quoteSizeSoftLimitComboProjectEdit;
|
||||
Gtk::ComboBoxText* quoteSizeHardLimitComboProjectEdit;
|
||||
Gtk::Button* quoteSaveButtonEdit;
|
||||
Gtk::Button* quoteCancelButtonEdit;
|
||||
Gtk::Entry* entryProjectNameEditValue;
|
||||
public:
|
||||
View_edit_project(/* args */);
|
||||
~View_edit_project();
|
||||
void setting();
|
||||
void event();
|
||||
void show();
|
||||
void get_builder();
|
||||
void lacalization();
|
||||
void check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::ComboBoxText *combo_box);
|
||||
void check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::Label *combo_box);
|
||||
void close_wnd();
|
||||
void save();
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
@ -1,107 +0,0 @@
|
||||
#include "view_edit_user_group.h"
|
||||
|
||||
View_edit_user_group::View_edit_user_group(/* args */) {
|
||||
builder = Gtk::Builder::create_from_file(path_glade);
|
||||
this->setting();
|
||||
}
|
||||
|
||||
View_edit_user_group::~View_edit_user_group()
|
||||
{
|
||||
}
|
||||
|
||||
void View_edit_user_group::setting() {
|
||||
this->get_builder();
|
||||
this->lacalization();
|
||||
check_limit(quotegroupSizeSoftLimitCheckUser
|
||||
,quotegroupSizeSoftLimitSpinUser
|
||||
,quotegroupSizeSoftLimitComboUser);
|
||||
check_limit(quotegroupSizeHardLimitCheckUser
|
||||
,quotegroupSizeHardLimitSpinUser
|
||||
,quotegroupSizeHardLimitComboUser);
|
||||
check_limit(quotegroupFilesSoftLimitCheckUser
|
||||
,quotegroupFilesSoftLimitSpinUser
|
||||
,quotegroupFilesSoftLimitlabelUser);
|
||||
check_limit(quotegroupFilesHardLimitCheckUser
|
||||
,quotegroupFilesHardLimitSpinUser
|
||||
,quotegroupFilesHarLimitLabelUser);
|
||||
this->event();
|
||||
}
|
||||
|
||||
void View_edit_user_group::event() {
|
||||
btnCancelEditUser->signal_clicked().connect([&]() {wndQuotasEditUser->hide();});
|
||||
btnSaveEditUser->signal_clicked().connect([&]() {});
|
||||
quotegroupSizeSoftLimitCheckUser->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupSizeSoftLimitCheckUser
|
||||
,quotegroupSizeSoftLimitSpinUser
|
||||
,quotegroupSizeSoftLimitComboUser);
|
||||
});
|
||||
quotegroupSizeHardLimitCheckUser->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupSizeHardLimitCheckUser
|
||||
,quotegroupSizeHardLimitSpinUser
|
||||
,quotegroupSizeHardLimitComboUser);
|
||||
});
|
||||
quotegroupFilesSoftLimitCheckUser->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupFilesSoftLimitCheckUser
|
||||
,quotegroupFilesSoftLimitSpinUser
|
||||
,quotegroupFilesSoftLimitlabelUser);
|
||||
});
|
||||
quotegroupFilesHardLimitCheckUser->signal_toggled().connect([&]() {
|
||||
check_limit(quotegroupFilesHardLimitCheckUser
|
||||
,quotegroupFilesHardLimitSpinUser
|
||||
,quotegroupFilesHarLimitLabelUser);
|
||||
});
|
||||
}
|
||||
|
||||
void View_edit_user_group::get_builder() {
|
||||
builder->get_widget("wndQuotasEditUser", wndQuotasEditUser);
|
||||
builder->get_widget("btnCancelEditUser", btnCancelEditUser);
|
||||
builder->get_widget("btnSaveEditUser", btnSaveEditUser);
|
||||
builder->get_widget("quotegroupSizeSoftLimitCheckUser", quotegroupSizeSoftLimitCheckUser);
|
||||
builder->get_widget("quotegroupSizeHardLimitCheckUser", quotegroupSizeHardLimitCheckUser);
|
||||
builder->get_widget("quotegroupFilesSoftLimitCheckUser", quotegroupFilesSoftLimitCheckUser);
|
||||
builder->get_widget("quotegroupFilesHardLimitCheckUser", quotegroupFilesHardLimitCheckUser);
|
||||
builder->get_widget("quotegroupSizeSoftLimitSpinUser", quotegroupSizeSoftLimitSpinUser);
|
||||
builder->get_widget("quotegroupSizeHardLimitSpinUser", quotegroupSizeHardLimitSpinUser);
|
||||
builder->get_widget("quotegroupFilesSoftLimitSpinUser", quotegroupFilesSoftLimitSpinUser);
|
||||
builder->get_widget("quotegroupFilesHardLimitSpinUser", quotegroupFilesHardLimitSpinUser);
|
||||
builder->get_widget("quotegroupSizeSoftLimitComboUser", quotegroupSizeSoftLimitComboUser);
|
||||
builder->get_widget("quotegroupSizeHardLimitComboUser", quotegroupSizeHardLimitComboUser);
|
||||
builder->get_widget("quotegroupFilesSoftLimitlabelUser", quotegroupFilesSoftLimitlabelUser);
|
||||
builder->get_widget("quotegroupFilesHarLimitLabelUser", quotegroupFilesHarLimitLabelUser);
|
||||
builder->get_widget("quotegroupSizeSoftLimitLabelUser", quotegroupSizeSoftLimitLabelUser);
|
||||
builder->get_widget("quotegroupFilesSoftLimitLabelUser", quotegroupFilesSoftLimitLabelUser);
|
||||
builder->get_widget("quotegroupSizeCurrentlyLabelUser", quotegroupSizeCurrentlyLabelUser);
|
||||
builder->get_widget("quotegroupFilesCurrentlyLabelUser", quotegroupFilesCurrentlyLabelUser);
|
||||
builder->get_widget("quotegroupSizeFrameLabelUser", quotegroupSizeFrameLabelUser);
|
||||
builder->get_widget("quotegroupFilesFrameLabelUser", quotegroupFilesFrameLabelUser);
|
||||
builder->get_widget("lblSetDeviceUser", lblSetDeviceUser);
|
||||
builder->get_widget("lblQuotasStatusUser", lblQuotasStatusUser);
|
||||
builder->get_widget("lblSetUGPUser", lblSetUGPUser);
|
||||
builder->get_widget("lblSetNameDeviceUser", lblSetNameDeviceUser);
|
||||
builder->get_widget("lblSetQuotasStatusUser", lblSetQuotasStatusUser);
|
||||
builder->get_widget("lblSetUGPUserValue", lblSetUGPUserValue);
|
||||
builder->get_widget("lblHeadQuotasEditWindowUser", lblHeadQuotasEditWindowUser);
|
||||
builder->get_widget("quoteSizeHardLimitLabel1", quoteSizeHardLimitLabel1);
|
||||
builder->get_widget("quoteFilesHardLimitLabelUser", quoteFilesHardLimitLabelUser);
|
||||
}
|
||||
|
||||
void View_edit_user_group::lacalization() {
|
||||
|
||||
}
|
||||
|
||||
|
||||
void View_edit_user_group::check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::ComboBoxText *combo_box) {
|
||||
spin->set_sensitive(check_button->get_active());
|
||||
combo_box->set_sensitive(check_button->get_active());
|
||||
}
|
||||
void View_edit_user_group::check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::Label *combo_box) {
|
||||
spin->set_sensitive(check_button->get_active());
|
||||
combo_box->set_sensitive(check_button->get_active());
|
||||
}
|
||||
|
||||
void View_edit_user_group::set_label_type_quota(string name) {
|
||||
lblSetUGPUser->set_text(name);
|
||||
}
|
||||
void View_edit_user_group::show() {
|
||||
wndQuotasEditUser->show();
|
||||
}
|
@ -1,60 +0,0 @@
|
||||
#ifndef VIEW_ADD_USER_GROUP_H
|
||||
#define VIEW_ADD_USER_GROUP_H
|
||||
#include "../project_lib.h"
|
||||
#include "../var.h"
|
||||
using namespace std;
|
||||
|
||||
class View_edit_user_group
|
||||
{
|
||||
private:
|
||||
Glib::RefPtr<Gtk::Builder> builder;
|
||||
private:
|
||||
Gtk::Window* wndQuotasEditUser;
|
||||
Gtk::Button* btnCancelEditUser;
|
||||
Gtk::Button* btnSaveEditUser;
|
||||
Gtk::CheckButton* quotegroupSizeSoftLimitCheckUser;
|
||||
Gtk::CheckButton* quotegroupSizeHardLimitCheckUser;
|
||||
Gtk::CheckButton* quotegroupFilesSoftLimitCheckUser;
|
||||
Gtk::CheckButton* quotegroupFilesHardLimitCheckUser;
|
||||
Gtk::SpinButton* quotegroupSizeSoftLimitSpinUser;
|
||||
Gtk::SpinButton* quotegroupSizeHardLimitSpinUser;
|
||||
Gtk::SpinButton* quotegroupFilesSoftLimitSpinUser;
|
||||
Gtk::SpinButton* quotegroupFilesHardLimitSpinUser;
|
||||
Gtk::ComboBoxText* quotegroupSizeSoftLimitComboUser;
|
||||
Gtk::ComboBoxText* quotegroupSizeHardLimitComboUser;
|
||||
Gtk::Label* quotegroupFilesSoftLimitlabelUser;
|
||||
Gtk::Label* quotegroupFilesHarLimitLabelUser;
|
||||
Gtk::Label* quotegroupSizeSoftLimitLabelUser;
|
||||
Gtk::Label* quotegroupFilesSoftLimitLabelUser;
|
||||
Gtk::Label* quotegroupSizeCurrentlyLabelUser;
|
||||
Gtk::Label* quotegroupFilesCurrentlyLabelUser;
|
||||
Gtk::Label* quotegroupSizeFrameLabelUser;
|
||||
Gtk::Label* quotegroupFilesFrameLabelUser;
|
||||
Gtk::Label* lblSetDeviceUser;
|
||||
Gtk::Label* lblQuotasStatusUser;
|
||||
Gtk::Label* lblSetUGPUser;
|
||||
Gtk::Label* lblSetNameDeviceUser;
|
||||
Gtk::Label* lblSetQuotasStatusUser;
|
||||
Gtk::Label* lblSetUGPUserValue;
|
||||
Gtk::Label* lblHeadQuotasEditWindowUser;
|
||||
Gtk::Label* quoteSizeHardLimitLabel1;
|
||||
Gtk::Label* quoteFilesHardLimitLabelUser;
|
||||
|
||||
|
||||
public:
|
||||
View_edit_user_group(/* args */);
|
||||
~View_edit_user_group();
|
||||
void setting();
|
||||
void event();
|
||||
void show();
|
||||
void get_builder();
|
||||
void check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::ComboBoxText *combo_box);
|
||||
void check_limit(Gtk::CheckButton *check_button, Gtk::SpinButton *spin, Gtk::Label *combo_box);
|
||||
void set_label_type_quota(string name);
|
||||
void lacalization();
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
Binary file not shown.
Loading…
Reference in new issue