From c292423033f03f37135334b9930ba454bccd4ad2 Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Thu, 25 May 2023 17:36:24 +0600 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D1=8B=20=D1=84=D1=83=D0=BD=D0=BA=D1=86=D0=B8=D0=B8=20?= =?UTF-8?q?=D1=87=D1=82=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B8=D0=B7=D0=BC=D0=B5?= =?UTF-8?q?=D0=BD=D0=B5=D0=BD=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/ubl-settings-resourcequota.c | 28 +++++++++++++++------- source/ubl-settings-resourcequota.h | 3 ++- source/view_edit.c | 37 +++++++++++++++++++++++++++++ source/view_edit.h | 8 +++++++ ubl-settings-resourcequota.glade | 5 ++-- 5 files changed, 69 insertions(+), 12 deletions(-) diff --git a/source/ubl-settings-resourcequota.c b/source/ubl-settings-resourcequota.c index 09c00d9..19b2df8 100644 --- a/source/ubl-settings-resourcequota.c +++ b/source/ubl-settings-resourcequota.c @@ -328,16 +328,26 @@ void tree_view_add(int index) { main_config.i_o_limit_read[index], main_config.i_o_limit_write[index]); } - -void config_data_append(int index) { - if (index == -1) { - - } - else { - - } +void tree_view_edit(int index) { + char* text = " "; + main_config.type_quota[index] = edit_get_quota_object(); + main_config.quota_volume[index] = text; + main_config.soft_raw_limit[index] = edit_get_soft(); + main_config.hard_raw_limit[index] = edit_get_hard(); + main_config.swap[index] = edit_get_limit_swap(); + main_config.cpu_limit[index] = edit_get_limit_cpu(); + main_config.i_o_limit_read[index] = edit_get_read_device(); + main_config.i_o_limit_write[index] = edit_get_write_device(); + GtkTreeIter iter; + gtk_list_store_set(main_config.list,&iter,main_config.type_quota[index], + main_config.quota_volume[index], + main_config.soft_raw_limit[index], + main_config.hard_raw_limit[index], + main_config.swap[index], + main_config.cpu_limit[index], + main_config.i_o_limit_read[index], + main_config.i_o_limit_write[index]); } - /* void yon_gtk_list_store_fill_with_proprietaries(GtkListStore *list){ if(videoconfig.proprietary){ diff --git a/source/ubl-settings-resourcequota.h b/source/ubl-settings-resourcequota.h index 701c8de..7931dd3 100644 --- a/source/ubl-settings-resourcequota.h +++ b/source/ubl-settings-resourcequota.h @@ -153,4 +153,5 @@ void main_cbx_2_event(); void tree_view_delete(GtkWidget *self, main_window *widgets); void tree_view_select(GtkWidget *self, main_window *widgets); void tree_view_add(int index); -void wrapper_tree_view_add(GtkWidget *self, main_window *widgets); \ No newline at end of file +void wrapper_tree_view_add(GtkWidget *self, main_window *widgets); +void tree_view_edit(int index); \ No newline at end of file diff --git a/source/view_edit.c b/source/view_edit.c index 93aab53..6fd659f 100644 --- a/source/view_edit.c +++ b/source/view_edit.c @@ -10,6 +10,7 @@ edit_window *edit_setup_window(char* glade_path){ edit_widgets->btnEditCancel = yon_gtk_builder_get_widget(builder,"btnEditCancel"); edit_widgets->btnSaveEditSave = yon_gtk_builder_get_widget(builder,"btnSaveEditSave"); + edit_widgets->cbtEditDevice = yon_gtk_builder_get_widget(builder,"cbtEditDevice"); edit_widgets->lblCPULimitEdit = yon_gtk_builder_get_widget(builder,"lblCPULimitEdit"); edit_widgets->spinCPULimitEdit = yon_gtk_builder_get_widget(builder,"spinCPULimitEdit"); edit_widgets->chkCPULimitEdit = yon_gtk_builder_get_widget(builder,"chkCPULimitEdit"); @@ -92,4 +93,40 @@ void edit_set_active_widgets(GtkWidget *self, GtkWidget *entry, GtkWidget *label gboolean active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(self)); gtk_widget_set_sensitive(entry, active); gtk_widget_set_sensitive(label, active); +} + +char* edit_get_select_device() { + return gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(edit_widgets->cbtEditDevice)); +} +char* edit_get_read_device() { + return philos_get_size_bite(edit_widgets->chbEditRead, edit_widgets->spiSevereRestrictionEdit, + edit_widgets->cmSevereRestrictionEdit); +} +char* edit_get_write_device() { + return philos_get_size_bite(edit_widgets->chbEditWrite, edit_widgets->spinEditRead, + edit_widgets->cbtEditRead); +} +char* edit_get_soft() { + return philos_get_size_bite(edit_widgets->chkSoftRestrictionEdit, edit_widgets->spinEditWrite, + edit_widgets->cbtEditWrite); +} +char* edit_get_hard() { + return philos_get_size_bite(edit_widgets->chkSevereRestrictionEdit, edit_widgets->spinSevereRestrictionEdit, + edit_widgets->cmbSevereRestrictionEdit); +} +char* edit_get_limit_cpu() { + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(edit_widgets->chkCPULimitEdit))) { + int size_bite = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(edit_widgets->spinCPULimitEdit)); + return yon_char_from_int(size_bite); + } + else { + char* str = (char*)malloc(sizeof(char*)*2); + str[0] = '-'; + str[1] = '\0'; + return str; + } +} +char* edit_get_limit_swap() { + return philos_get_size_bite(edit_widgets->spinPaddingFLEdit, edit_widgets->spinPaddingFLEdit, + edit_widgets->spinPaddingFLEdit); } \ No newline at end of file diff --git a/source/view_edit.h b/source/view_edit.h index a41d048..d009304 100644 --- a/source/view_edit.h +++ b/source/view_edit.h @@ -41,6 +41,7 @@ typedef struct { GtkWidget* chkCPULimitEdit; GtkWidget* spinCPULimitEdit; GtkWidget* lblCPULimitEdit; + GtkWidget* cbtEditDevice; } edit_window; // Функции @@ -53,4 +54,11 @@ void edit_show(GtkWidget *self, char* glade_path); void edit_destroy(GtkWidget *self); void edit_init_windows(); void edit_set_active_widgets(GtkWidget *self, GtkWidget *entry, GtkWidget *label); +char* edit_get_select_device(); +char* edit_get_read_device(); +char* edit_get_write_device(); +char* edit_get_soft(); +char* edit_get_hard(); +char* edit_get_limit_cpu(); +char* edit_get_limit_swap(); #endif \ No newline at end of file diff --git a/ubl-settings-resourcequota.glade b/ubl-settings-resourcequota.glade index f38575d..d798a15 100644 --- a/ubl-settings-resourcequota.glade +++ b/ubl-settings-resourcequota.glade @@ -1927,6 +1927,7 @@ limit + 100 True False 5 @@ -1962,7 +1963,7 @@ limit 5 - True + False True 2 @@ -2448,7 +2449,7 @@ limit - + True True 5