|
|
|
@ -306,9 +306,8 @@ void tree_view_select(GtkWidget *self, main_window *widgets) {
|
|
|
|
|
|
|
|
|
|
void tree_view_add(int index) {
|
|
|
|
|
main_config.type_quota= yon_char_parsed_append(main_config.type_quota, &main_config.size_tree_view, add_get_quota_object());
|
|
|
|
|
char* text = " ";
|
|
|
|
|
main_config.size_tree_view--;
|
|
|
|
|
main_config.quota_volume = yon_char_parsed_append(main_config.quota_volume, &main_config.size_tree_view, text );
|
|
|
|
|
main_config.quota_volume = yon_char_parsed_append(main_config.quota_volume, &main_config.size_tree_view, add_get_select_device_to_level_2());
|
|
|
|
|
main_config.size_tree_view--;
|
|
|
|
|
main_config.soft_raw_limit = yon_char_parsed_append(main_config.soft_raw_limit, &main_config.size_tree_view, add_get_soft());
|
|
|
|
|
main_config.size_tree_view--;
|
|
|
|
@ -332,22 +331,36 @@ void tree_view_add(int index) {
|
|
|
|
|
6,main_config.i_o_limit_read[index],
|
|
|
|
|
7,main_config.i_o_limit_write[index],-1);
|
|
|
|
|
}
|
|
|
|
|
void tree_view_edit(int index) {
|
|
|
|
|
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();
|
|
|
|
|
int tree_view_edit() {
|
|
|
|
|
int index = 0;
|
|
|
|
|
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]);
|
|
|
|
|
GtkTreeModel *model = GTK_TREE_MODEL(main_config.list);
|
|
|
|
|
|
|
|
|
|
GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->treeViewMain));
|
|
|
|
|
if(gtk_tree_selection_get_selected(selection, &model, &iter)) {
|
|
|
|
|
char* str_iter = gtk_tree_model_get_string_from_iter(model, &iter);
|
|
|
|
|
puts(str_iter);
|
|
|
|
|
index = atoi(str_iter);
|
|
|
|
|
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();
|
|
|
|
|
gtk_list_store_set(main_config.list,&iter,0,main_config.type_quota[index],
|
|
|
|
|
1,main_config.quota_volume[index],
|
|
|
|
|
2,main_config.soft_raw_limit[index],
|
|
|
|
|
3,main_config.hard_raw_limit[index],
|
|
|
|
|
4,main_config.swap[index],
|
|
|
|
|
5,main_config.cpu_limit[index],
|
|
|
|
|
6,main_config.i_o_limit_read[index],
|
|
|
|
|
7,main_config.i_o_limit_write[index],-1);
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
/*
|
|
|
|
|
void yon_gtk_list_store_fill_with_proprietaries(GtkListStore *list){
|
|
|
|
@ -412,7 +425,7 @@ void main_event(main_window *widgets) {
|
|
|
|
|
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->btnShowFilters),"clicked",G_CALLBACK(wrapper_filters_show), NULL);
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->btnAdd),"clicked",G_CALLBACK(wrapper_add_show), glade_path);
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->btnEdit),"clicked",G_CALLBACK(edit_show), glade_path);
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->btnEdit),"clicked",G_CALLBACK(wrapper_edit_show), glade_path);
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->btnInfo),"clicked",G_CALLBACK(info_show), glade_path);
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->btnUpdateDispatcher),"clicked",G_CALLBACK(main_update_dispatcher), NULL);
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->btnMainShowAllEmpty), "toggled", G_CALLBACK(main_update_processes), NULL);
|
|
|
|
@ -442,8 +455,27 @@ void main_add_btn_save() {
|
|
|
|
|
void wrapper_filters_show(GtkWidget *self) {
|
|
|
|
|
filters_show(self, glade_path);
|
|
|
|
|
g_signal_connect(G_OBJECT(get_widget_filters()->btnFiltersSave),"clicked",G_CALLBACK(main_visible_columns), NULL);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void wrapper_edit_show() {
|
|
|
|
|
GtkTreeIter iter;
|
|
|
|
|
GtkTreeModel *model = GTK_TREE_MODEL(main_config.list);
|
|
|
|
|
|
|
|
|
|
GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->treeViewMain));
|
|
|
|
|
if(gtk_tree_selection_get_selected(selection, &model, &iter)) {
|
|
|
|
|
edit_show(NULL, glade_path);
|
|
|
|
|
g_signal_connect(G_OBJECT(get_widget_edit()->btnSaveEditSave), "clicked", G_CALLBACK(main_edit_btn_save), NULL);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void main_edit_btn_save() {
|
|
|
|
|
if (tree_view_edit(main_config.size_tree_view)) {
|
|
|
|
|
add_on_destroy_subwindow(get_widget_edit()->Window);
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void main_localization(main_window *widgets) {
|
|
|
|
|