|
|
@ -52,11 +52,55 @@ add_window *add_setup_window(char* glade_path) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return add_widgets;
|
|
|
|
return add_widgets;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
void update_device_to_entry(GtkWidget *combo_box, GtkWidget *check_button_read, GtkWidget *check_button_write) {
|
|
|
|
// flag_check_array = 0 READ
|
|
|
|
|
|
|
|
// flag_check_array = 1 WRITE
|
|
|
|
|
|
|
|
void update_device_to_entry(GtkWidget *combo_box, GtkWidget *check_button, GtkWidget *spin, int flag_check_array) {
|
|
|
|
int disk_id = gtk_combo_box_get_active(GTK_COMBO_BOX(combo_box));
|
|
|
|
int disk_id = gtk_combo_box_get_active(GTK_COMBO_BOX(combo_box));
|
|
|
|
|
|
|
|
char* disk = gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(add_widgets->cbtAddDevice));
|
|
|
|
|
|
|
|
disk = yon_char_divide_search(disk, " ", -1);
|
|
|
|
if (disk_id != -1) {
|
|
|
|
if (disk_id != -1) {
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_button_read), 0);
|
|
|
|
int index_find = -1;
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_button_write), 0);
|
|
|
|
for (int index = 0; index < obj_add_config.size; index++) {
|
|
|
|
|
|
|
|
char* disk_cfg = yon_char_new(obj_add_config.disk[index]);
|
|
|
|
|
|
|
|
if (strstr(disk_cfg, disk) != NULL) {
|
|
|
|
|
|
|
|
index_find = index;
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (index_find != -1) {
|
|
|
|
|
|
|
|
if (flag_check_array==0) {
|
|
|
|
|
|
|
|
if (strstr(obj_add_config.i_o_limit_read[index_find],"-")) {
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_button), 0);
|
|
|
|
|
|
|
|
gtk_spin_button_set_value(GTK_SPIN_BUTTON(spin), 0);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
gtk_spin_button_set_value(GTK_SPIN_BUTTON(spin), atoll(obj_add_config.i_o_limit_read[index_find]));
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_button), 1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (flag_check_array==1) {
|
|
|
|
|
|
|
|
if (strstr(obj_add_config.i_o_limit_write[index_find],"-")) {
|
|
|
|
|
|
|
|
gtk_spin_button_set_value(GTK_SPIN_BUTTON(spin), 0);
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_button), 0);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
gtk_spin_button_set_value(GTK_SPIN_BUTTON(spin), atoll(obj_add_config.i_o_limit_write[index_find]));
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_button), 1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
gtk_spin_button_set_value(GTK_SPIN_BUTTON(spin), 0);
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_button), 0);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
gtk_spin_button_set_value(GTK_SPIN_BUTTON(spin), 0);
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_button), 0);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
gtk_spin_button_set_value(GTK_SPIN_BUTTON(spin), 0);
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check_button), 0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -116,8 +160,9 @@ void add_del_disk() {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (obj_add_config.disk && obj_add_config.size) {
|
|
|
|
if (obj_add_config.disk && obj_add_config.size) {
|
|
|
|
int index_find = -1;
|
|
|
|
int index_find = -1;
|
|
|
|
|
|
|
|
printf("%d\n", obj_add_config.size);
|
|
|
|
for (int index = 0; index < obj_add_config.size; index++) {
|
|
|
|
for (int index = 0; index < obj_add_config.size; index++) {
|
|
|
|
char* disk_cfg = yon_char_new(obj_add_config.disk[index]);
|
|
|
|
char* disk_cfg = obj_add_config.disk[index];
|
|
|
|
if (strstr(disk_cfg, disk) != NULL) {
|
|
|
|
if (strstr(disk_cfg, disk) != NULL) {
|
|
|
|
index_find = index;
|
|
|
|
index_find = index;
|
|
|
|
break;
|
|
|
|
break;
|
|
|
@ -154,8 +199,6 @@ char* pard_array_add_cmd(char* cmd, char* key, char** array_io, int* array_io_po
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
printf("\n%i\n", array_io_pow_size[index]);
|
|
|
|
|
|
|
|
puts(key);
|
|
|
|
|
|
|
|
if (array_io_pow_size[index] != -1) {
|
|
|
|
if (array_io_pow_size[index] != -1) {
|
|
|
|
cmd = yon_char_unite(cmd,
|
|
|
|
cmd = yon_char_unite(cmd,
|
|
|
|
split_simvol,
|
|
|
|
split_simvol,
|
|
|
@ -167,7 +210,6 @@ char* pard_array_add_cmd(char* cmd, char* key, char** array_io, int* array_io_po
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
puts("================================================");
|
|
|
|
|
|
|
|
free(split_simvol);
|
|
|
|
free(split_simvol);
|
|
|
|
if (flag_format) {
|
|
|
|
if (flag_format) {
|
|
|
|
return cmd;
|
|
|
|
return cmd;
|
|
|
@ -195,12 +237,9 @@ void add_disk_all(){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (index_find == -1) {
|
|
|
|
if (index_find == -1) {
|
|
|
|
// Добавление
|
|
|
|
// Добавление
|
|
|
|
|
|
|
|
puts("hhhhhhh1");
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(add_widgets->chbAddRead)) ||
|
|
|
|
obj_add_config.disk = yon_char_parsed_append(obj_add_config.disk,&obj_add_config.size, disk);
|
|
|
|
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(add_widgets->chbAddWrite))) {
|
|
|
|
obj_add_config.size--;
|
|
|
|
obj_add_config.disk = yon_char_parsed_append(obj_add_config.disk,&obj_add_config.size, disk);
|
|
|
|
|
|
|
|
obj_add_config.size--;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(add_widgets->chbAddRead))) {
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(add_widgets->chbAddRead))) {
|
|
|
|
obj_add_config.i_o_limit_read_size = philos_int_append(obj_add_config.i_o_limit_read_size,&obj_add_config.size,(int)gtk_combo_box_get_active(GTK_COMBO_BOX(add_widgets->cbtAddRead)));
|
|
|
|
obj_add_config.i_o_limit_read_size = philos_int_append(obj_add_config.i_o_limit_read_size,&obj_add_config.size,(int)gtk_combo_box_get_active(GTK_COMBO_BOX(add_widgets->cbtAddRead)));
|
|
|
|
obj_add_config.size--;
|
|
|
|
obj_add_config.size--;
|
|
|
@ -208,9 +247,9 @@ void add_disk_all(){
|
|
|
|
obj_add_config.size--;
|
|
|
|
obj_add_config.size--;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
else {
|
|
|
|
obj_add_config.i_o_limit_write_size = philos_int_append(obj_add_config.i_o_limit_write_size,&obj_add_config.size,-1);
|
|
|
|
obj_add_config.i_o_limit_read_size = philos_int_append(obj_add_config.i_o_limit_read_size,&obj_add_config.size,-1);
|
|
|
|
obj_add_config.size--;
|
|
|
|
obj_add_config.size--;
|
|
|
|
obj_add_config.i_o_limit_write = yon_char_parsed_append(obj_add_config.i_o_limit_write,&obj_add_config.size,"-");
|
|
|
|
obj_add_config.i_o_limit_read = yon_char_parsed_append(obj_add_config.i_o_limit_read,&obj_add_config.size,"-");
|
|
|
|
obj_add_config.size--;
|
|
|
|
obj_add_config.size--;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(add_widgets->chbAddWrite))) {
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(add_widgets->chbAddWrite))) {
|
|
|
@ -231,6 +270,7 @@ void add_disk_all(){
|
|
|
|
else {
|
|
|
|
else {
|
|
|
|
// Редактирование
|
|
|
|
// Редактирование
|
|
|
|
//obj_add_config.disk[index_find] = yon_char_new(disk);
|
|
|
|
//obj_add_config.disk[index_find] = yon_char_new(disk);
|
|
|
|
|
|
|
|
puts("hhhhhhh2");
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(add_widgets->chbAddRead))) {
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(add_widgets->chbAddRead))) {
|
|
|
|
obj_add_config.i_o_limit_read_size[index_find] =(int)gtk_combo_box_get_active(GTK_COMBO_BOX(add_widgets->cbtAddRead));
|
|
|
|
obj_add_config.i_o_limit_read_size[index_find] =(int)gtk_combo_box_get_active(GTK_COMBO_BOX(add_widgets->cbtAddRead));
|
|
|
|
obj_add_config.i_o_limit_read[index_find] = yon_char_from_int(gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(add_widgets->spinAddRead)));
|
|
|
|
obj_add_config.i_o_limit_read[index_find] = yon_char_from_int(gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(add_widgets->spinAddRead)));
|
|
|
@ -263,9 +303,9 @@ void add_disk_all(){
|
|
|
|
obj_add_config.size--;
|
|
|
|
obj_add_config.size--;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
else {
|
|
|
|
obj_add_config.i_o_limit_write_size = philos_int_append(obj_add_config.i_o_limit_write_size,&obj_add_config.size,-1);
|
|
|
|
obj_add_config.i_o_limit_read_size = philos_int_append(obj_add_config.i_o_limit_read_size,&obj_add_config.size,-1);
|
|
|
|
obj_add_config.size--;
|
|
|
|
obj_add_config.size--;
|
|
|
|
obj_add_config.i_o_limit_write = yon_char_parsed_append(obj_add_config.i_o_limit_write,&obj_add_config.size,"-");
|
|
|
|
obj_add_config.i_o_limit_read = yon_char_parsed_append(obj_add_config.i_o_limit_read,&obj_add_config.size,"-");
|
|
|
|
obj_add_config.size--;
|
|
|
|
obj_add_config.size--;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(add_widgets->chbAddWrite))) {
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(add_widgets->chbAddWrite))) {
|
|
|
@ -283,7 +323,6 @@ void add_disk_all(){
|
|
|
|
obj_add_config.size++;
|
|
|
|
obj_add_config.size++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
else {
|
|
|
|
puts("222sdvdfvdvfv\n");
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -291,14 +330,14 @@ void add_disk_all(){
|
|
|
|
void event_check_io_device() {
|
|
|
|
void event_check_io_device() {
|
|
|
|
philos_set_active_widgets_device_io(add_widgets->cbtAddDevice,add_widgets->chbAddWrite, add_widgets->spinAddWrite, add_widgets->cbtAddWrite);
|
|
|
|
philos_set_active_widgets_device_io(add_widgets->cbtAddDevice,add_widgets->chbAddWrite, add_widgets->spinAddWrite, add_widgets->cbtAddWrite);
|
|
|
|
philos_set_active_widgets_device_io(add_widgets->cbtAddDevice,add_widgets->chbAddRead, add_widgets->spinAddRead, add_widgets->cbtAddRead);
|
|
|
|
philos_set_active_widgets_device_io(add_widgets->cbtAddDevice,add_widgets->chbAddRead, add_widgets->spinAddRead, add_widgets->cbtAddRead);
|
|
|
|
add_del_disk();
|
|
|
|
|
|
|
|
add_disk_all();
|
|
|
|
add_disk_all();
|
|
|
|
|
|
|
|
add_del_disk();
|
|
|
|
add_init_windows();
|
|
|
|
add_init_windows();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void combo_box_device() {
|
|
|
|
void combo_box_device() {
|
|
|
|
update_device_to_entry(add_widgets->cbtAddDevice, add_widgets->chbAddRead, add_widgets->chbAddWrite);
|
|
|
|
update_device_to_entry(add_widgets->cbtAddDevice, add_widgets->chbAddRead, add_widgets->spinAddRead, 0);
|
|
|
|
update_device_to_entry(add_widgets->cbtAddDevice, add_widgets->chbAddRead, add_widgets->chbAddWrite);
|
|
|
|
update_device_to_entry(add_widgets->cbtAddDevice, add_widgets->chbAddWrite, add_widgets->spinAddWrite, 1);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void add_event(add_window *widgets) {
|
|
|
|
void add_event(add_window *widgets) {
|
|
|
|