From b9d529d95c57e62f1d77b58fae4a17ca1e9be7cb Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Mon, 6 Mar 2023 16:35:47 +0600 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=20=D0=B1=D0=B0=D0=B3=20=D1=81=20=D0=B4=D1=83=D0=B1?= =?UTF-8?q?=D0=BB=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=D0=BC=20?= =?UTF-8?q?=D0=B7=D0=BE=D0=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/ubl-settings-datetime.cc | 89 ++++++++++++++++++--------------- source/ubl-settings-datetime.h | 2 + ubl-settings-datetime.glade | 2 +- ubl-settings-datetime_ru.po | 5 +- 4 files changed, 56 insertions(+), 42 deletions(-) diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index 27e0b06..54fe84a 100644 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -127,6 +127,8 @@ void MainWindow::lacalization(){ //btnSaveLocal->set_label(_("Save to local configuration")); //btnSaveLocalGlob->set_label(_("Save to global and local configuration")); aboutWindows->set_comments(_("Setting the date and time")); + aboutWindows->set_website(_("https://wiki.ublinux.com")); + aboutWindows->set_version(_(version_application.c_str())); aboutWindows->set_website_label(_("Project Home Page")); lblSave->set_label(_("Save")); lblDownload->set_label(_("Download")); @@ -315,23 +317,23 @@ void MainWindow::download_local_cfg(){ this->fill_in_reg_zone(cmd); this->update_hour_minute(); this->update_calendar(); - string cmd_get_dhcp = "/usr/bin/ubconfig --source system get network NTPSERVERS"; + string cmd_get_dhcp = "/usr/bin/ubconfig --default --source system get network NTPSERVERS"; string cmd_default_get_dhcp = "/usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT"; this->entry_dhcp_mess(cmd_get_dhcp, cmd_default_get_dhcp); - string hw = "/usr/bin/ubconfig --source system get clock HWCLOCK_SYNC"; + string hw = "/usr/bin/ubconfig --default --source system get clock HWCLOCK_SYNC"; string hw_default = "/usr/bin/ubconfig --default --source system get clock HWCLOCK_SYNC"; this->entry_hardware_clock(hw, hw_default); info_warning_error(0); } void MainWindow::download_globl_cfg(){ - string cmd_get_dhcp = "/usr/bin/ubconfig --source global get network NTPSERVERS"; + string cmd_get_dhcp = "/usr/bin/ubconfig --default --source global get network NTPSERVERS"; string cmd_default_get_dhcp = "/usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT"; this->entry_dhcp_mess(cmd_get_dhcp, cmd_default_get_dhcp); string cmd = "/usr/bin/ubconfig --default --source global get clock ZONE"; this->fill_in_reg_zone(cmd); - string hw = "/usr/bin/ubconfig get clock HWCLOCK_SYNC"; - string hw_default = "/usr/bin/ubconfig --default get clock HWCLOCK_SYNC"; + string hw = "/usr/bin/ubconfig --default --source global get clock HWCLOCK_SYNC"; + string hw_default = "/usr/bin/ubconfig --default --source global get clock HWCLOCK_SYNC"; this->entry_hardware_clock(hw, hw_default); info_warning_error(1); } @@ -440,7 +442,28 @@ void MainWindow::hardware_clock_global(string &local, string &etc){ wrapper_system(etc, "&"); } } - +void MainWindow::entry_hardware_clock_default(string &cmd_default){ + + int error = warning_info; + struct Result obj_result_default = this->wrapper_call(cmd_default); + if (obj_result_default.error == 0){ + if (obj_result_default.response.find("localtime")!=string::npos){ + cbHw->set_active(0); + } + else if (obj_result_default.response.find("utc")!=string::npos){ + cbHw->set_active(1); + + } + + } + else if (obj_result_default.error == 3){ + if (error!=warning_info){ + warning_info=error; + } + cbHw->set_active(-1); + } + +} void MainWindow::entry_hardware_clock(string &cmd, string &cmd_default){ int error = warning_info; struct Result obj_result = this->wrapper_call(cmd); @@ -451,33 +474,19 @@ void MainWindow::entry_hardware_clock(string &cmd, string &cmd_default){ else if (obj_result.response.find("utc")!=string::npos){ cbHw->set_active(1); } + else{ + this->entry_hardware_clock_default(cmd_default); + } } else if (obj_result.error == 3){ if (error!=warning_info){ warning_info=error; } cbHw->set_active(-1); + this->entry_hardware_clock_default(cmd_default); } - else{ - int error_1 = warning_info; - struct Result obj_result_default = this->wrapper_call(cmd_default); - if (obj_result_default.error == 0){ - if (obj_result_default.response.find("localtime")!=string::npos){ - cbHw->set_active(0); - } - else if (obj_result_default.response.find("utc")!=string::npos){ - cbHw->set_active(1); - } - } - else if (obj_result_default.error != 0){ - if (error_1!=warning_info){ - warning_info=error; - } - cbHw->set_active(-1); - } - - - + else{ + this->entry_hardware_clock_default(cmd_default); } } @@ -674,15 +683,15 @@ void MainWindow::save_Dhcp(string &cmd_default, string &cmd_dhcp, string &remove } else if (activ_index==0){ wrapper_system(cmd_default, "&"); - boxDateTime->set_sensitive(false); + } else if (activ_index==1){ wrapper_system(cmd_dhcp, "&"); - boxDateTime->set_sensitive(false); + } else if (activ_index==2){ this->focus_ntp(cmd_set_ntp); - boxDateTime->set_sensitive(false); + } else if (activ_index==3){ int start_error = error_info; @@ -690,13 +699,12 @@ void MainWindow::save_Dhcp(string &cmd_default, string &cmd_dhcp, string &remove if (start_error != error_info){ error_info=start_error; } - boxDateTime->set_sensitive(true); } } void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhcp){ string cmd = cmd_get_dhcp; - boxDateTime->set_sensitive(false); + struct Result obj_result = this->wrapper_call(cmd); if (obj_result.error==0){ string str_dhcp = obj_result.response; @@ -747,7 +755,6 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc txtNtpServer->set_text(""); txtNtpServer->set_sensitive(false); btnUpdateDateTime->set_sensitive(true); - boxDateTime->set_sensitive(true); warning_info-=1; } } @@ -900,9 +907,9 @@ void MainWindow::append_region_zone(string region, string zone, Gtk::ComboBoxTex } // Cортировка пузырьком if (size_vec==0){ - size_vec = array_region_local.size(); - for (int i = 0; i < size_vec; i++) { - for (int j = 0; j < size_vec-1; j++) { + int size_vec_sort = array_region_local.size(); + for (int i = 0; i < size_vec_sort; i++) { + for (int j = 0; j < size_vec_sort-1; j++) { if (array_region_local[j] > array_region_local[j + 1]) { auto b = array_region_local[j]; array_region_local[j] = array_region_local[j + 1]; @@ -910,14 +917,16 @@ void MainWindow::append_region_zone(string region, string zone, Gtk::ComboBoxTex b = array_region[j]; array_region[j] = array_region[j + 1]; array_region[j + 1] = b; - } + } } } } - for (string ® : array_region_local){ - tmpCbReg->append(Glib::ustring(reg)); - if (reg == string(_(region.c_str()))){ - tmpCbReg->set_active_text(reg); + if (size_vec==0){ + for (string ® : array_region_local){ + tmpCbReg->append(Glib::ustring(reg)); + if (reg == string(_(region.c_str()))){ + tmpCbReg->set_active_text(reg); + } } } tmpCbZone->remove_all(); diff --git a/source/ubl-settings-datetime.h b/source/ubl-settings-datetime.h index 50f151e..9fc5583 100644 --- a/source/ubl-settings-datetime.h +++ b/source/ubl-settings-datetime.h @@ -108,6 +108,7 @@ class MainWindow : public Gtk::ApplicationWindow { unsigned int year=0; unsigned int month=0; unsigned int day=0; + string version_application = "1.3"; int error_info = 0; int warning_info = 0; int hour; @@ -131,6 +132,7 @@ class MainWindow : public Gtk::ApplicationWindow { void info_warning_error(int mess); void synopsis_show(); void entry_hardware_clock(string &cmd, string &cmd_default); + void entry_hardware_clock_default(string &cmd_default); void save_global_local_cfg(); void fill_in_reg_zone(string &cmd); void download_globl_cfg(); diff --git a/ubl-settings-datetime.glade b/ubl-settings-datetime.glade index 83274cc..ab4b270 100644 --- a/ubl-settings-datetime.glade +++ b/ubl-settings-datetime.glade @@ -88,7 +88,7 @@ True False - Synopsis + Help True