|
|
@ -32,13 +32,7 @@ void MainWindow::settings() {
|
|
|
|
this->filling_device_combo_box_template(usersProjectCombo, map_device);
|
|
|
|
this->filling_device_combo_box_template(usersProjectCombo, map_device);
|
|
|
|
this->init_tree_view();
|
|
|
|
this->init_tree_view();
|
|
|
|
this->init_spin_all();
|
|
|
|
this->init_spin_all();
|
|
|
|
|
|
|
|
|
|
|
|
obj_quotas_sys.set_map_gui(map_gui_cfg);
|
|
|
|
|
|
|
|
obj_quotas_ubconfig.set_map_gui(map_gui_cfg);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (geteuid() == 0) {
|
|
|
|
if (geteuid() == 0) {
|
|
|
|
this->load_system_cfg();
|
|
|
|
|
|
|
|
this->load_global_cfg();
|
|
|
|
|
|
|
|
this->event();
|
|
|
|
this->event();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
else {
|
|
|
@ -59,63 +53,48 @@ void MainWindow::init_spin_all() {
|
|
|
|
generalGroupsSizeWeeksSpi->set_range(0, 52);
|
|
|
|
generalGroupsSizeWeeksSpi->set_range(0, 52);
|
|
|
|
generalGroupsSizeWeeksSpi->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsSizeWeeksSpi->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsSizeWeeksSpi->set_value(0);
|
|
|
|
generalGroupsSizeWeeksSpi->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalGroupsFileWeeksSpin->set_range(0, 52);
|
|
|
|
generalGroupsFileWeeksSpin->set_range(0, 52);
|
|
|
|
generalGroupsFileWeeksSpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsFileWeeksSpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsFileWeeksSpin->set_value(0);
|
|
|
|
generalGroupsFileWeeksSpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalUsersSizWeeksSpin->set_range(0, 52);
|
|
|
|
generalUsersSizWeeksSpin->set_range(0, 52);
|
|
|
|
generalUsersSizWeeksSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersSizWeeksSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersSizWeeksSpin->set_value(0);
|
|
|
|
generalUsersSizWeeksSpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalUsersFileWeeksSpin->set_range(0, 52);
|
|
|
|
generalUsersFileWeeksSpin->set_range(0, 52);
|
|
|
|
generalUsersFileWeeksSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersFileWeeksSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersFileWeeksSpin->set_value(0);
|
|
|
|
generalUsersFileWeeksSpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalGroupsSizeDaySpin->set_range(0, 31);
|
|
|
|
generalGroupsSizeDaySpin->set_range(0, 31);
|
|
|
|
generalGroupsSizeDaySpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsSizeDaySpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsSizeDaySpin->set_value(0);
|
|
|
|
generalGroupsSizeDaySpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalGroupsFilesDaySpin->set_range(0, 31);
|
|
|
|
generalGroupsFilesDaySpin->set_range(0, 31);
|
|
|
|
generalGroupsFilesDaySpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsFilesDaySpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsFilesDaySpin->set_value(0);
|
|
|
|
generalGroupsFilesDaySpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalUsersSizeDaySpin->set_range(0, 31);
|
|
|
|
generalUsersSizeDaySpin->set_range(0, 31);
|
|
|
|
generalUsersSizeDaySpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersSizeDaySpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersSizeDaySpin->set_value(0);
|
|
|
|
generalUsersSizeDaySpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalUsersFilesDaySpin->set_range(0, 31);
|
|
|
|
generalUsersFilesDaySpin->set_range(0, 31);
|
|
|
|
generalUsersFilesDaySpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersFilesDaySpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersFilesDaySpin->set_value(0);
|
|
|
|
generalUsersFilesDaySpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalGroupsSizeHourSpin->set_range(0, 23);
|
|
|
|
generalGroupsSizeHourSpin->set_range(0, 23);
|
|
|
|
generalGroupsSizeHourSpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsSizeHourSpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsSizeHourSpin->set_value(0);
|
|
|
|
generalGroupsSizeHourSpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalGroupsFilesHourSpin->set_range(0, 23);
|
|
|
|
generalGroupsFilesHourSpin->set_range(0, 23);
|
|
|
|
generalGroupsFilesHourSpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsFilesHourSpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsFilesHourSpin->set_value(0);
|
|
|
|
generalGroupsFilesHourSpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalUsersSizeHourSpin->set_range(0, 23);
|
|
|
|
generalUsersSizeHourSpin->set_range(0, 23);
|
|
|
|
generalUsersSizeHourSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersSizeHourSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersSizeHourSpin->set_value(0);
|
|
|
|
generalUsersSizeHourSpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalUsersFilesHoursSpin->set_range(0, 23);
|
|
|
|
generalUsersFilesHoursSpin->set_range(0, 23);
|
|
|
|
generalUsersFilesHoursSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersFilesHoursSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersFilesHoursSpin->set_value(0);
|
|
|
|
generalUsersFilesHoursSpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalGroupsSizeMinuteSpin->set_range(0, 59);
|
|
|
|
generalGroupsSizeMinuteSpin->set_range(0, 59);
|
|
|
|
generalGroupsSizeMinuteSpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsSizeMinuteSpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsSizeMinuteSpin->set_value(0);
|
|
|
|
generalGroupsSizeMinuteSpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalGroupsFilesMinuteSpin->set_range(0, 59);
|
|
|
|
generalGroupsFilesMinuteSpin->set_range(0, 59);
|
|
|
|
generalGroupsFilesMinuteSpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsFilesMinuteSpin->set_increments(1.0, 1.0);
|
|
|
|
generalGroupsFilesMinuteSpin->set_value(0);
|
|
|
|
generalGroupsFilesMinuteSpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalUsersSizeMinuteSpin->set_range(0, 59);
|
|
|
|
generalUsersSizeMinuteSpin->set_range(0, 59);
|
|
|
|
generalUsersSizeMinuteSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersSizeMinuteSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersSizeMinuteSpin->set_value(0);
|
|
|
|
generalUsersSizeMinuteSpin->set_value(0);
|
|
|
|
|
|
|
|
|
|
|
|
generalUsersFilesMinutesSpin->set_range(0, 59);
|
|
|
|
generalUsersFilesMinutesSpin->set_range(0, 59);
|
|
|
|
generalUsersFilesMinutesSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersFilesMinutesSpin->set_increments(1.0, 1.0);
|
|
|
|
generalUsersFilesMinutesSpin->set_value(0);
|
|
|
|
generalUsersFilesMinutesSpin->set_value(0);
|
|
|
@ -184,7 +163,6 @@ void MainWindow::lacalization() {
|
|
|
|
groupsDeviceLabel->set_label(str_device);
|
|
|
|
groupsDeviceLabel->set_label(str_device);
|
|
|
|
usersDeviceLabel->set_label(str_device);
|
|
|
|
usersDeviceLabel->set_label(str_device);
|
|
|
|
headLabel->set_label(str_lb_head);
|
|
|
|
headLabel->set_label(str_lb_head);
|
|
|
|
|
|
|
|
|
|
|
|
btnLoadGlob->set_label(load_global);
|
|
|
|
btnLoadGlob->set_label(load_global);
|
|
|
|
btnLoadLocal->set_label(load_local);
|
|
|
|
btnLoadLocal->set_label(load_local);
|
|
|
|
btnAbout->set_label(str_about_1);
|
|
|
|
btnAbout->set_label(str_about_1);
|
|
|
@ -198,6 +176,57 @@ void MainWindow::lacalization() {
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::info_warning_error(int mess, int error_save, int error_load) {
|
|
|
|
|
|
|
|
if (error_save > 0 || error_load > 0) {
|
|
|
|
|
|
|
|
info_status_app(info_box_error_css);
|
|
|
|
|
|
|
|
imgInfo->set_from_icon_name(icon_warning, Gtk::ICON_SIZE_MENU);
|
|
|
|
|
|
|
|
string mess_error = "";
|
|
|
|
|
|
|
|
if (mess == 0) {
|
|
|
|
|
|
|
|
mess_error = string(local_read_error) + str_cmd_error;
|
|
|
|
|
|
|
|
lblWarning->set_text(mess_error);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 1) {
|
|
|
|
|
|
|
|
mess_error = string(global_read_error) + str_cmd_error;
|
|
|
|
|
|
|
|
lblWarning->set_text(mess_error);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 2) {
|
|
|
|
|
|
|
|
mess_error = string(local_write_error) + str_cmd_error;
|
|
|
|
|
|
|
|
lblWarning->set_text(mess_error);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 3) {
|
|
|
|
|
|
|
|
mess_error = string(global_write_error) + str_cmd_error;
|
|
|
|
|
|
|
|
lblWarning->set_text(mess_error);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 4) {
|
|
|
|
|
|
|
|
mess_error = string(error_save_all) + str_cmd_error;
|
|
|
|
|
|
|
|
lblWarning->set_text(mess_error);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
str_cmd_error = "";
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
info_status_app(info_box_ok_css);
|
|
|
|
|
|
|
|
imgInfo->set_from_icon_name(icon_checked, Gtk::ICON_SIZE_MENU);
|
|
|
|
|
|
|
|
if (mess == 0) {
|
|
|
|
|
|
|
|
lblWarning->set_text(local_load_ok);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 1) {
|
|
|
|
|
|
|
|
lblWarning->set_text(global_load_ok);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 2) {
|
|
|
|
|
|
|
|
lblWarning->set_text(local_ok_written);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 3) {
|
|
|
|
|
|
|
|
lblWarning->set_text(global_ok_written);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 4) {
|
|
|
|
|
|
|
|
lblWarning->set_text(successfully_save_all);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 5) {
|
|
|
|
|
|
|
|
lblWarning->set_text(nothing_save);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::filling_device_combo_box_template(Gtk::ComboBoxText *combo_box, map_str_str &map_device) {
|
|
|
|
void MainWindow::filling_device_combo_box_template(Gtk::ComboBoxText *combo_box, map_str_str &map_device) {
|
|
|
|
if (map_device.size() != 0) {
|
|
|
|
if (map_device.size() != 0) {
|
|
|
|
for (const auto &device : map_device) {
|
|
|
|
for (const auto &device : map_device) {
|
|
|
@ -230,12 +259,14 @@ void MainWindow::flag_block_gui() {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
void MainWindow::entry_combo_box_temp(Gtk::ComboBoxText *combo_box, Gtk::Label *label) {
|
|
|
|
void MainWindow::entry_combo_box_temp(Gtk::ComboBoxText *combo_box, Gtk::Label *label) {
|
|
|
|
string text = combo_box->get_active_text();
|
|
|
|
string text = combo_box->get_active_text();
|
|
|
|
if (map_device.find(text) != map_device.end()){
|
|
|
|
if (map_device.find(text) != map_device.end()){
|
|
|
|
label->set_text(map_device[text]);
|
|
|
|
label->set_text(map_device[text]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::add_CSS() {
|
|
|
|
void MainWindow::add_CSS() {
|
|
|
|
Glib::RefPtr<Gtk::CssProvider> cssProvider = Gtk::CssProvider::create();
|
|
|
|
Glib::RefPtr<Gtk::CssProvider> cssProvider = Gtk::CssProvider::create();
|
|
|
@ -255,21 +286,6 @@ void MainWindow::add_CSS() {
|
|
|
|
headLabel_css->add_class("textHead");
|
|
|
|
headLabel_css->add_class("textHead");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
|
|
|
void init_treeview_user() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::view_add_data(Gtk::TreeModel::Row &row, Glib::RefPtr<Gtk::ListStore> list_store_m , std::array<std::vector<std::string>, 5> &arr_view , size_t index) {
|
|
|
|
|
|
|
|
row = *(list_store_m->append());
|
|
|
|
|
|
|
|
bool flag_chb = false;
|
|
|
|
|
|
|
|
string name = arr_view[0][index];
|
|
|
|
|
|
|
|
row[m_columns.check_button] = flag_chb;
|
|
|
|
|
|
|
|
row[m_columns.name] = _(name.c_str());
|
|
|
|
|
|
|
|
row[m_columns.description] = _(arr_view[1][index].c_str());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::get_builder() {
|
|
|
|
void MainWindow::get_builder() {
|
|
|
|
builder->set_translation_domain(path_app);
|
|
|
|
builder->set_translation_domain(path_app);
|
|
|
|
builder->get_widget("headerTopic", headerTopic);
|
|
|
|
builder->get_widget("headerTopic", headerTopic);
|
|
|
@ -323,7 +339,6 @@ void MainWindow::get_builder() {
|
|
|
|
builder->get_widget("GroupsTabLabel", GroupsTabLabel);
|
|
|
|
builder->get_widget("GroupsTabLabel", GroupsTabLabel);
|
|
|
|
builder->get_widget("groupsQuotasTree", groupsQuotasTree);
|
|
|
|
builder->get_widget("groupsQuotasTree", groupsQuotasTree);
|
|
|
|
builder->get_widget("usersQuotasTree", usersQuotasTree);
|
|
|
|
builder->get_widget("usersQuotasTree", usersQuotasTree);
|
|
|
|
|
|
|
|
|
|
|
|
builder->get_widget("usersDeviceCombo", usersDeviceCombo);
|
|
|
|
builder->get_widget("usersDeviceCombo", usersDeviceCombo);
|
|
|
|
builder->get_widget("GroupsTabLabel", GroupsTabLabel);
|
|
|
|
builder->get_widget("GroupsTabLabel", GroupsTabLabel);
|
|
|
|
builder->get_widget("generalTabLabel", generalTabLabel);
|
|
|
|
builder->get_widget("generalTabLabel", generalTabLabel);
|
|
|
@ -344,7 +359,6 @@ void MainWindow::get_builder() {
|
|
|
|
builder->get_widget("generalUsersFilesHoursSpin", generalUsersFilesHoursSpin);
|
|
|
|
builder->get_widget("generalUsersFilesHoursSpin", generalUsersFilesHoursSpin);
|
|
|
|
builder->get_widget("generalUsersSizeMinuteSpin", generalUsersSizeMinuteSpin);
|
|
|
|
builder->get_widget("generalUsersSizeMinuteSpin", generalUsersSizeMinuteSpin);
|
|
|
|
builder->get_widget("generalUsersFilesMinutesSpin", generalUsersFilesMinutesSpin);
|
|
|
|
builder->get_widget("generalUsersFilesMinutesSpin", generalUsersFilesMinutesSpin);
|
|
|
|
|
|
|
|
|
|
|
|
builder->get_widget("GeneralQuotasTree", GeneralQuotasTree);
|
|
|
|
builder->get_widget("GeneralQuotasTree", GeneralQuotasTree);
|
|
|
|
builder->get_widget("ProjectQuotasTree", ProjectQuotasTree);
|
|
|
|
builder->get_widget("ProjectQuotasTree", ProjectQuotasTree);
|
|
|
|
builder->get_widget("ProjectTabLabel", ProjectTabLabel);
|
|
|
|
builder->get_widget("ProjectTabLabel", ProjectTabLabel);
|
|
|
@ -362,7 +376,6 @@ void MainWindow::get_builder() {
|
|
|
|
builder->get_widget("btnEditProject", btnEditProject);
|
|
|
|
builder->get_widget("btnEditProject", btnEditProject);
|
|
|
|
builder->get_widget("btnEditUsers", btnEditUsers);
|
|
|
|
builder->get_widget("btnEditUsers", btnEditUsers);
|
|
|
|
builder->get_widget("btnEditGroups", btnEditGroups);
|
|
|
|
builder->get_widget("btnEditGroups", btnEditGroups);
|
|
|
|
|
|
|
|
|
|
|
|
builder->get_widget("usersProjectCombo", usersProjectCombo);
|
|
|
|
builder->get_widget("usersProjectCombo", usersProjectCombo);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -370,17 +383,14 @@ void MainWindow::event() {
|
|
|
|
btnFilterGroups->signal_clicked().connect([&]() {this->filters_show();});
|
|
|
|
btnFilterGroups->signal_clicked().connect([&]() {this->filters_show();});
|
|
|
|
btnFilterUsers->signal_clicked().connect([&]() {this->filters_show();});
|
|
|
|
btnFilterUsers->signal_clicked().connect([&]() {this->filters_show();});
|
|
|
|
btnFilterProject->signal_clicked().connect([&]() {this->filters_show();});
|
|
|
|
btnFilterProject->signal_clicked().connect([&]() {this->filters_show();});
|
|
|
|
|
|
|
|
//btnLoadGlob->signal_activate().connect([&]() {this->load_global_cfg();});
|
|
|
|
btnLoadGlob->signal_activate().connect([&]() {this->load_global_cfg();});
|
|
|
|
//btnLoadLocal->signal_activate().connect([&]() {this->load_system_cfg();});
|
|
|
|
btnLoadLocal->signal_activate().connect([&]() {this->load_system_cfg();});
|
|
|
|
|
|
|
|
//btnSynopsis->signal_activate().connect([&]() {this->synopsis_show();});
|
|
|
|
//btnSynopsis->signal_activate().connect([&]() {this->synopsis_show();});
|
|
|
|
//btnAbout->signal_activate().connect([&]() {aboutWindows->show();});
|
|
|
|
//btnAbout->signal_activate().connect([&]() {aboutWindows->show();});
|
|
|
|
btnSaveLocalGlob->signal_activate().connect([&]() {this->wrapper_save_all_cfg();});
|
|
|
|
//btnSaveLocalGlob->signal_activate().connect([&]() {this->wrapper_save_all_cfg();});
|
|
|
|
btnSaveGlob->signal_activate().connect([&]() {this->wrapper_save_global_cfg();});
|
|
|
|
//btnSaveGlob->signal_activate().connect([&]() {this->wrapper_save_global_cfg();});
|
|
|
|
btnSaveLocal->signal_activate().connect([&]() {this->wrapper_save_system_cfg();});
|
|
|
|
//btnSaveLocal->signal_activate().connect([&]() {this->wrapper_save_system_cfg();});
|
|
|
|
chbMangSystemFile->signal_toggled().connect([&]() {this->mode_switch_quota();});
|
|
|
|
chbMangSystemFile->signal_toggled().connect([&]() {this->mode_switch_quota();});
|
|
|
|
|
|
|
|
|
|
|
|
// QuotasEditWindow->show();
|
|
|
|
|
|
|
|
btnDelGroups->signal_clicked().connect(
|
|
|
|
btnDelGroups->signal_clicked().connect(
|
|
|
|
sigc::bind<Glib::RefPtr<Gtk::ListStore>*, const Gtk::TreeModel::iterator*, bool&> (sigc::mem_fun( *this,
|
|
|
|
sigc::bind<Glib::RefPtr<Gtk::ListStore>*, const Gtk::TreeModel::iterator*, bool&> (sigc::mem_fun( *this,
|
|
|
|
&MainWindow::remove_template), &list_store_groups, &iter_groups, flag_validate_del_groups));
|
|
|
|
&MainWindow::remove_template), &list_store_groups, &iter_groups, flag_validate_del_groups));
|
|
|
@ -401,14 +411,6 @@ void MainWindow::event() {
|
|
|
|
&MainWindow::set_add_tv_g_u_p), row, list_store_groups, obj_tv_g_u_p));
|
|
|
|
&MainWindow::set_add_tv_g_u_p), row, list_store_groups, obj_tv_g_u_p));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::del_columns() {
|
|
|
|
|
|
|
|
//std::vector<const TreeViewColumn*> vec_columns = tree_view_select->get_columns();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::remove_template(Glib::RefPtr<Gtk::ListStore>* list_store, const Gtk::TreeModel::iterator* iter, bool& flag_validate_del) {
|
|
|
|
void MainWindow::remove_template(Glib::RefPtr<Gtk::ListStore>* list_store, const Gtk::TreeModel::iterator* iter, bool& flag_validate_del) {
|
|
|
|
if (flag_validate_del && (*list_store)->iter_is_valid(*(iter))) {
|
|
|
|
if (flag_validate_del && (*list_store)->iter_is_valid(*(iter))) {
|
|
|
|
Gtk::TreeModel::Row row = *(*iter);
|
|
|
|
Gtk::TreeModel::Row row = *(*iter);
|
|
|
@ -453,11 +455,6 @@ void MainWindow::mode_switch_quota() {
|
|
|
|
void MainWindow::filters_show() {
|
|
|
|
void MainWindow::filters_show() {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::set_data_cfg() {
|
|
|
|
|
|
|
|
// TODO:
|
|
|
|
|
|
|
|
// Написать функцию
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::info_status_app(string stule) {
|
|
|
|
void MainWindow::info_status_app(string stule) {
|
|
|
|
Glib::RefPtr<Gtk::StyleContext> boxInfo = boxInfoError->get_style_context();
|
|
|
|
Glib::RefPtr<Gtk::StyleContext> boxInfo = boxInfoError->get_style_context();
|
|
|
@ -466,81 +463,6 @@ void MainWindow::info_status_app(string stule) {
|
|
|
|
boxInfo->add_class(stule);
|
|
|
|
boxInfo->add_class(stule);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::init_dict(string flag_load) {
|
|
|
|
|
|
|
|
std::map<std::string, std::string> map_gui_cfg_n;
|
|
|
|
|
|
|
|
map_gui_cfg_n[""] = "";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
map_gui_cfg = map_gui_cfg_n;
|
|
|
|
|
|
|
|
if (flag_load == "global") {
|
|
|
|
|
|
|
|
map_global_cfg = map_gui_cfg_n;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (flag_load == "system") {
|
|
|
|
|
|
|
|
map_system_cfg = map_gui_cfg_n;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bool MainWindow::save_template(string section, string flag_save) {
|
|
|
|
|
|
|
|
bool flag_no_save = true;
|
|
|
|
|
|
|
|
obj_save.set_data_local(map_system_cfg);
|
|
|
|
|
|
|
|
obj_save.set_data_global(map_global_cfg);
|
|
|
|
|
|
|
|
obj_save.set_data_gui(map_gui_cfg);
|
|
|
|
|
|
|
|
obj_save.set_vec_params(vec_param_names);
|
|
|
|
|
|
|
|
obj_save.save(section, flag_save);
|
|
|
|
|
|
|
|
vector<string> obj_vec_error = obj_save.get_error();
|
|
|
|
|
|
|
|
flag_no_save = obj_save.get_state_save();
|
|
|
|
|
|
|
|
return flag_no_save;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::wrapper_save_all_cfg() {
|
|
|
|
|
|
|
|
this->set_data_cfg();
|
|
|
|
|
|
|
|
bool _flag_save_global = this->save_template("boot", "global");;
|
|
|
|
|
|
|
|
bool _flag_save_local = this->save_template("boot", "system");
|
|
|
|
|
|
|
|
if (_flag_save_global && _flag_save_local) {
|
|
|
|
|
|
|
|
this->info_warning_error(5);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
info_warning_error(4);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
map_global_cfg = map_gui_cfg;
|
|
|
|
|
|
|
|
map_system_cfg = map_gui_cfg;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::load_global_cfg() {
|
|
|
|
|
|
|
|
this->load_template(&map_global_cfg, global_load);
|
|
|
|
|
|
|
|
info_warning_error(1);
|
|
|
|
|
|
|
|
map_gui_cfg = map_global_cfg;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::load_system_cfg() {
|
|
|
|
|
|
|
|
this->load_template(&map_system_cfg, system_load);
|
|
|
|
|
|
|
|
info_warning_error(0);
|
|
|
|
|
|
|
|
map_gui_cfg = map_system_cfg;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::wrapper_save_global_cfg() {
|
|
|
|
|
|
|
|
this->set_data_cfg();
|
|
|
|
|
|
|
|
if (this->save_template("boot", "global")) {
|
|
|
|
|
|
|
|
this->info_warning_error(5);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
info_warning_error(3);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
map_global_cfg = map_gui_cfg;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::wrapper_save_system_cfg() {
|
|
|
|
|
|
|
|
this->set_data_cfg();
|
|
|
|
|
|
|
|
if (this->save_template("boot", "system")) {
|
|
|
|
|
|
|
|
this->info_warning_error(5);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
info_warning_error(2);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
map_system_cfg = map_gui_cfg;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::init_work_tv_g_u_p() {
|
|
|
|
void MainWindow::init_work_tv_g_u_p() {
|
|
|
|
groupsQuotasTree->remove_all_columns();
|
|
|
|
groupsQuotasTree->remove_all_columns();
|
|
|
|
ProjectQuotasTree->remove_all_columns();
|
|
|
|
ProjectQuotasTree->remove_all_columns();
|
|
|
@ -565,81 +487,16 @@ void MainWindow::init_work_tv_g_u_p() {
|
|
|
|
this->view_add_columns(*usersQuotasTree);
|
|
|
|
this->view_add_columns(*usersQuotasTree);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::load_template(map_str_str* map_temp, string cmd) {
|
|
|
|
|
|
|
|
this->init_work_tv_g_u_p();
|
|
|
|
|
|
|
|
if (cmd.find("system") != string::npos) {
|
|
|
|
|
|
|
|
this->init_dict("system");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
this->init_dict("global");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
*map_temp = obj_load.get_load_data(*map_temp, cmd);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::remove_line_template(const Gtk::TreeModel::Path&, const Gtk::TreeModel::iterator& iter, Gtk::TreeModel::iterator& iter_del, bool& flag_del) {
|
|
|
|
void MainWindow::remove_line_template(const Gtk::TreeModel::Path&, const Gtk::TreeModel::iterator& iter, Gtk::TreeModel::iterator& iter_del, bool& flag_del) {
|
|
|
|
iter_del = iter;
|
|
|
|
iter_del = iter;
|
|
|
|
flag_del = true;
|
|
|
|
flag_del = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void MainWindow::info_warning_error(int mess) {
|
|
|
|
|
|
|
|
if (obj_load.get_count_error() > 0 || obj_save.get_count_error() > 0) {
|
|
|
|
|
|
|
|
info_status_app(info_box_error_css);
|
|
|
|
|
|
|
|
imgInfo->set_from_icon_name(icon_warning, Gtk::ICON_SIZE_MENU);
|
|
|
|
|
|
|
|
string mess_error = "";
|
|
|
|
|
|
|
|
if (mess == 0) {
|
|
|
|
|
|
|
|
mess_error = string(local_read_error) + str_cmd_error;
|
|
|
|
|
|
|
|
lblWarning->set_text(mess_error);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 1) {
|
|
|
|
|
|
|
|
mess_error = string(global_read_error) + str_cmd_error;
|
|
|
|
|
|
|
|
lblWarning->set_text(mess_error);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 2) {
|
|
|
|
|
|
|
|
mess_error = string(local_write_error) + str_cmd_error;
|
|
|
|
|
|
|
|
lblWarning->set_text(mess_error);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 3) {
|
|
|
|
|
|
|
|
mess_error = string(global_write_error) + str_cmd_error;
|
|
|
|
|
|
|
|
lblWarning->set_text(mess_error);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 4) {
|
|
|
|
|
|
|
|
mess_error = string(error_save_all) + str_cmd_error;
|
|
|
|
|
|
|
|
lblWarning->set_text(mess_error);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
str_cmd_error = "";
|
|
|
|
|
|
|
|
obj_load.set_count_error(0);
|
|
|
|
|
|
|
|
obj_save.set_count_error(0);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else {
|
|
|
|
|
|
|
|
info_status_app(info_box_ok_css);
|
|
|
|
|
|
|
|
imgInfo->set_from_icon_name(icon_checked, Gtk::ICON_SIZE_MENU);
|
|
|
|
|
|
|
|
if (mess == 0) {
|
|
|
|
|
|
|
|
lblWarning->set_text(local_load_ok);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 1) {
|
|
|
|
|
|
|
|
lblWarning->set_text(global_load_ok);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 2) {
|
|
|
|
|
|
|
|
lblWarning->set_text(local_ok_written);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 3) {
|
|
|
|
|
|
|
|
lblWarning->set_text(global_ok_written);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 4) {
|
|
|
|
|
|
|
|
lblWarning->set_text(successfully_save_all);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (mess == 5) {
|
|
|
|
|
|
|
|
lblWarning->set_text(nothing_save);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MainWindow::~MainWindow() {}
|
|
|
|
MainWindow::~MainWindow() {}
|
|
|
|
|
|
|
|
|
|
|
|
void help() {
|
|
|
|
void help() {
|
|
|
|
string version = string(str_version) + version_application + "\n";
|
|
|
|
string version = string(str_version) + version_application + "\n";
|
|
|
|
cout << version.c_str();
|
|
|
|
cout << version.c_str();
|
|
|
|
cout << str_help_h;
|
|
|
|
cout << str_help_h;
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|