From d563e3f93ba73a92e7d72b83266b9344a3437258 Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Tue, 6 Jun 2023 14:16:42 +0600 Subject: [PATCH] =?UTF-8?q?=D0=A1=D0=B4=D0=B5=D0=BB=D0=B0=D0=BD=D0=B0=20?= =?UTF-8?q?=D0=B7=D0=B0=D1=89=D0=B8=D1=82=D0=B0=20=D0=BE=D1=82=20=D0=B7?= =?UTF-8?q?=D0=B0=D0=BF=D0=B8=D1=81=D0=B8=20=D0=BF=D1=83=D1=81=D1=82=D1=8B?= =?UTF-8?q?=D1=85=20=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/view_add.c | 25 ++++++++++++++++--------- source/view_add.h | 1 + 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/source/view_add.c b/source/view_add.c index 0ab20b8..ed2dbbb 100644 --- a/source/view_add.c +++ b/source/view_add.c @@ -38,7 +38,7 @@ add_window *add_setup_window(char* glade_path) { add_widgets->spinAddWrite = yon_gtk_builder_get_widget(builder,"spinAddWrite"); add_widgets->chbAddWrite = yon_gtk_builder_get_widget(builder,"chbAddWrite"); add_widgets->cbtAddWrite = yon_gtk_builder_get_widget(builder,"cbtAddWrite"); - + add_widgets->boxBlockGui = yon_gtk_builder_get_widget(builder,"boxBlockGui"); device_fill_disk(add_widgets->cbtAddDevice); add_event(add_widgets); add_init_windows(); @@ -49,13 +49,19 @@ add_window *add_setup_window(char* glade_path) { } void add_init_windows() { - add_set_active_widgets(add_widgets->chkSoftRestrictionAdd, add_widgets->spiSevereRestrictionAdd, add_widgets->cmSevereRestrictionAdd); - add_set_active_widgets(add_widgets->chkSevereRestrictionAdd, add_widgets->spinSevereRestrictionAdd, add_widgets->cmbSevereRestrictionAdd); - add_set_active_widgets(add_widgets->chkPaddingFLAdd, add_widgets->spinPaddingFLAdd, add_widgets->cmbPaddingFLAdd); - add_set_active_widgets(add_widgets->chkCPULimitAdd, add_widgets->spinCPULimitAdd, add_widgets->lblCPULimitAdd); - add_set_active_widgets_device_io(add_widgets->chbAddWrite, add_widgets->spinAddWrite, add_widgets->cbtAddWrite); - add_set_active_widgets_device_io(add_widgets->chbAddRead, add_widgets->spinAddRead, add_widgets->cbtAddRead); - add_generate_cmd(); + if (gtk_combo_box_get_active(GTK_COMBO_BOX(add_widgets->cbxAddQuotaLevel2)) != -1) { + gtk_widget_set_sensitive(add_widgets->boxBlockGui, 1); + add_set_active_widgets(add_widgets->chkSoftRestrictionAdd, add_widgets->spiSevereRestrictionAdd, add_widgets->cmSevereRestrictionAdd); + add_set_active_widgets(add_widgets->chkSevereRestrictionAdd, add_widgets->spinSevereRestrictionAdd, add_widgets->cmbSevereRestrictionAdd); + add_set_active_widgets(add_widgets->chkPaddingFLAdd, add_widgets->spinPaddingFLAdd, add_widgets->cmbPaddingFLAdd); + add_set_active_widgets(add_widgets->chkCPULimitAdd, add_widgets->spinCPULimitAdd, add_widgets->lblCPULimitAdd); + add_set_active_widgets_device_io(add_widgets->chbAddWrite, add_widgets->spinAddWrite, add_widgets->cbtAddWrite); + add_set_active_widgets_device_io(add_widgets->chbAddRead, add_widgets->spinAddRead, add_widgets->cbtAddRead); + add_generate_cmd(); + } + else { + gtk_widget_set_sensitive(add_widgets->boxBlockGui, 0); + } } void add_event(add_window *widgets) { @@ -68,7 +74,8 @@ void add_event(add_window *widgets) { g_signal_connect(G_OBJECT(widgets->chbAddRead), "toggled", G_CALLBACK(add_init_windows), NULL); g_signal_connect(G_OBJECT(widgets->chbAddWrite), "toggled", G_CALLBACK(add_init_windows), NULL); g_signal_connect(G_OBJECT(widgets->cbxAddQuotaObj),"changed",G_CALLBACK(add_update_combo_box), NULL); - + g_signal_connect(G_OBJECT(widgets->cbxAddQuotaLevel2),"changed",G_CALLBACK(add_init_windows), NULL); + g_signal_connect(G_OBJECT(widgets->spiSevereRestrictionAdd),"value-changed",G_CALLBACK(add_generate_cmd), NULL); g_signal_connect(G_OBJECT(widgets->spinSevereRestrictionAdd),"value-changed",G_CALLBACK(add_generate_cmd), NULL); g_signal_connect(G_OBJECT(widgets->spinPaddingFLAdd),"value-changed",G_CALLBACK(add_generate_cmd), NULL); diff --git a/source/view_add.h b/source/view_add.h index 527a817..5ffbaa2 100644 --- a/source/view_add.h +++ b/source/view_add.h @@ -50,6 +50,7 @@ typedef struct { GtkWidget* cbtAddDevice; GtkWidget* cbxAddQuotaObj; GtkWidget* cbxAddQuotaLevel2; + GtkWidget* boxBlockGui; } add_window; // Функции add_window *add_setup_window(char* glade_path);