|
|
|
@ -112,6 +112,7 @@ void config_init(){
|
|
|
|
|
main_config.lock_load_global=0;
|
|
|
|
|
main_config.lock_save_global=0;
|
|
|
|
|
main_config.lock_save_local=0;
|
|
|
|
|
main_config.size_tree_view = 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
main_window *setup_window(){
|
|
|
|
@ -134,6 +135,7 @@ main_window *setup_window(){
|
|
|
|
|
widgets->btnMainShowAllEmpty = yon_gtk_builder_get_widget(builder,"btnMainShowAllEmpty");
|
|
|
|
|
widgets->btnMainShowCoreStream = yon_gtk_builder_get_widget(builder,"btnMainShowCoreStream");
|
|
|
|
|
|
|
|
|
|
main_config.list = GTK_LIST_STORE(gtk_builder_get_object(builder, "liststore"));
|
|
|
|
|
widgets->vteInformation = yon_gtk_builder_get_widget(builder,"vteInformation");
|
|
|
|
|
widgets->vteDispatcher = yon_gtk_builder_get_widget(builder,"vteDispatcher");
|
|
|
|
|
widgets->vteProcesses = yon_gtk_builder_get_widget(builder,"vteProcesses");
|
|
|
|
@ -302,36 +304,35 @@ void tree_view_select(GtkWidget *self, main_window *widgets) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void wrapper_tree_view_add(GtkWidget *self, main_window *widgets){
|
|
|
|
|
yon_ubl_status_box_render(STR_QUOTAS_ADD, BACKGROUND_IMAGE_FAIL_TYPE);
|
|
|
|
|
add_show(NULL, glade_path);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void tree_view_add(int index) {
|
|
|
|
|
yon_char_parsed_append(main_config.type_quota, &main_config.size_tree_view, add_get_quota_object());
|
|
|
|
|
main_config.type_quota= yon_char_parsed_append(main_config.type_quota, &main_config.size_tree_view, add_get_quota_object());
|
|
|
|
|
char* text = " ";
|
|
|
|
|
yon_char_parsed_append(main_config.quota_volume, &main_config.size_tree_view, text );
|
|
|
|
|
yon_char_parsed_append(main_config.soft_raw_limit, &main_config.size_tree_view, add_get_soft());
|
|
|
|
|
yon_char_parsed_append(main_config.hard_raw_limit, &main_config.size_tree_view, add_get_hard());
|
|
|
|
|
yon_char_parsed_append(main_config.swap, &main_config.size_tree_view, add_get_limit_swap());
|
|
|
|
|
yon_char_parsed_append(main_config.cpu_limit, &main_config.size_tree_view, add_get_limit_cpu());
|
|
|
|
|
yon_char_parsed_append(main_config.i_o_limit_read, &main_config.size_tree_view, add_get_read_device());
|
|
|
|
|
yon_char_parsed_append(main_config.i_o_limit_write, &main_config.size_tree_view, add_get_write_device());
|
|
|
|
|
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.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--;
|
|
|
|
|
main_config.hard_raw_limit = yon_char_parsed_append(main_config.hard_raw_limit, &main_config.size_tree_view, add_get_hard());
|
|
|
|
|
main_config.size_tree_view--;
|
|
|
|
|
main_config.swap = yon_char_parsed_append(main_config.swap, &main_config.size_tree_view, add_get_limit_swap());
|
|
|
|
|
main_config.size_tree_view--;
|
|
|
|
|
main_config.cpu_limit = yon_char_parsed_append(main_config.cpu_limit, &main_config.size_tree_view, add_get_limit_cpu());
|
|
|
|
|
main_config.size_tree_view--;
|
|
|
|
|
main_config.i_o_limit_read = yon_char_parsed_append(main_config.i_o_limit_read, &main_config.size_tree_view, add_get_read_device());
|
|
|
|
|
main_config.size_tree_view--;
|
|
|
|
|
main_config.i_o_limit_write = yon_char_parsed_append(main_config.i_o_limit_write, &main_config.size_tree_view, add_get_write_device());
|
|
|
|
|
GtkTreeIter iter;
|
|
|
|
|
gtk_list_store_append(main_config.list,&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]);
|
|
|
|
|
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);
|
|
|
|
|
}
|
|
|
|
|
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();
|
|
|
|
@ -410,7 +411,7 @@ void main_event(main_window *widgets) {
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->AboutMenuItem),"activate",G_CALLBACK(on_about),NULL);
|
|
|
|
|
|
|
|
|
|
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_tree_view_add), widgets);
|
|
|
|
|
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->btnInfo),"clicked",G_CALLBACK(info_show), glade_path);
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->btnUpdateDispatcher),"clicked",G_CALLBACK(main_update_dispatcher), NULL);
|
|
|
|
@ -429,6 +430,15 @@ void main_event(main_window *widgets) {
|
|
|
|
|
g_signal_connect(G_OBJECT(widgets->SaveLocalMenuItem),"activate",G_CALLBACK(),NULL);
|
|
|
|
|
*/
|
|
|
|
|
}
|
|
|
|
|
void wrapper_add_show(GtkWidget *self) {
|
|
|
|
|
add_show(NULL, glade_path);
|
|
|
|
|
g_signal_connect(G_OBJECT(get_widget_add()->btnSaveAddSave), "clicked", G_CALLBACK(main_add_btn_save), NULL);
|
|
|
|
|
}
|
|
|
|
|
void main_add_btn_save() {
|
|
|
|
|
tree_view_add(main_config.size_tree_view);
|
|
|
|
|
add_on_destroy_subwindow(get_widget_add()->Window);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
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);
|
|
|
|
|