From 14fcfc9f1695a9646d29ae77c055cbe8699d8597 Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Mon, 6 Mar 2023 09:05:41 +0600 Subject: [PATCH 01/13] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=B8=D0=BB=20=D0=B7=D0=B0=D0=B4=D0=B0=D1=87=D1=83=2065?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- devel/update-version | 1 - source/CMakeLists.txt | 2 +- source/ubl-settings-datetime.cc | 2 -- source/ubl-settings-datetime.h | 1 - style.css | 5 ----- 5 files changed, 1 insertion(+), 10 deletions(-) diff --git a/devel/update-version b/devel/update-version index 881bf04..885963e 100755 --- a/devel/update-version +++ b/devel/update-version @@ -17,4 +17,3 @@ fi echo ":: Updated VERSION ${CURRENT} to ${VER}" find ../ -maxdepth 2 -type f -iname "${FILE_VERSION}" -exec echo ":: Insert version in file: {}" \; -exec sed "s/VERSION *[[:digit:]]*.*/VERSION ${VER}/" -i {} \; - diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index b0d3007..09e128f 100755 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -13,7 +13,7 @@ find_package(ICU REQUIRED COMPONENTS uc dt in io) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always \ -O2 -pipe -fno-plt -fexceptions \ -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \ - -fstack-clash-protection -fcf-protection") + -fstack-clash-protection -fcf-protection -g") set(SOURCE_FILES ubl-util-standard.h diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index 4261d6d..1f86e4c 100755 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -101,7 +101,6 @@ void MainWindow::settings(){ lblSynchronizebChkGLob->set_sensitive(false); cbDhcp->set_sensitive(false); txtNtpServer->set_sensitive(false); - lblZone1Glob->set_sensitive(false); lblDateTimeSetting->set_sensitive(false); btnBoxAboutDialog->set_visible(false); this->event(); @@ -370,7 +369,6 @@ void MainWindow::save_global_local_cfg(){ string remove = ""; if (flag_save_global==false){ this->save_local_cfg(); - } if (flag_save_local==false){ this->save_global_cfg(); diff --git a/source/ubl-settings-datetime.h b/source/ubl-settings-datetime.h index 407c0b2..0933f7a 100755 --- a/source/ubl-settings-datetime.h +++ b/source/ubl-settings-datetime.h @@ -72,7 +72,6 @@ class MainWindow : public Gtk::ApplicationWindow { Gtk::Label *lblTimeZone; Gtk::Label *lblReg; Gtk::Label *lblZone; - Gtk::Label *lblZone1Glob; Gtk::Label *lblSynchronizebChk; Gtk::Label *lblSynchronizebChkGLob; Gtk::Label *lblSynchronizeBtn; diff --git a/style.css b/style.css index 6f3e7b9..11692ef 100755 --- a/style.css +++ b/style.css @@ -39,28 +39,24 @@ margin:2px 2px 0 2px; padding: 5px 10px 3px 5px; background:@theme_selected_bg_color; - border-radius:2px; border-color:transparent; } .menuitemmiddle:hover* { margin:0 2px 0 2px; padding: 3px 10px 3px 5px; background:@theme_selected_bg_color; - border-radius:2px; border-color:transparent; } .menuitembottom:hover* { margin:0 2px 2px 2px; padding: 3px 10px 5px 5px; background:@theme_selected_bg_color; - border-radius:2px; border-color:transparent; } .menuitembottom{ margin-top:0px; border-color:alpha(@theme_text_color, 0.4); border-style:solid; - border-radius:0 0 5px 5px; border-left-width:1px; border-bottom-width:1px; border-right-width:1px; @@ -78,7 +74,6 @@ margin-bottom:0px; border-color:alpha(@theme_text_color, 0.4); border-style:solid; - border-radius:5px 5px 0 0; border-left-width:1px; border-top-width:1px; border-right-width:1px; From cc63b16e6c2c466d3b4bf142f4fe5c15a8e84d7d Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Mon, 6 Mar 2023 10:10:32 +0600 Subject: [PATCH 02/13] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=B1=D0=BB=D0=BE=D0=BA=D0=B8=D1=80=D0=BE?= =?UTF-8?q?=D0=B2=D0=BA=D0=B0=20=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=B4=D0=B0=D1=82=D1=8B=20=D0=B8=20=D0=B2=D1=80?= =?UTF-8?q?=D0=B5=D0=BC=D0=B5=D0=BD=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- devel/update-version | 3 +-- source/CMakeLists.txt | 2 +- source/ubl-settings-datetime.cc | 34 ++++++++++++++++++++++++++++----- source/ubl-settings-datetime.h | 3 ++- ubl-settings-datetime.glade | 2 +- 5 files changed, 34 insertions(+), 10 deletions(-) diff --git a/devel/update-version b/devel/update-version index 885963e..e86b1b4 100755 --- a/devel/update-version +++ b/devel/update-version @@ -15,5 +15,4 @@ if [[ -z ${VER} ]] ; then VER="${MAJOR}.$(echo $((${MINOR} +1)))" fi echo ":: Updated VERSION ${CURRENT} to ${VER}" -find ../ -maxdepth 2 -type f -iname "${FILE_VERSION}" -exec echo ":: Insert version in file: {}" \; -exec sed "s/VERSION *[[:digit:]]*.*/VERSION ${VER}/" -i {} \; - +find ../ -maxdepth 2 -type f -iname "${FILE_VERSION}" -exec echo ":: Insert version in file: {}" \; -exec sed "s/VERSION *[[:digit:]]*.*/VERSION ${VER}/" -i {} \; \ No newline at end of file diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index 09e128f..b0d3007 100755 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -13,7 +13,7 @@ find_package(ICU REQUIRED COMPONENTS uc dt in io) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always \ -O2 -pipe -fno-plt -fexceptions \ -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \ - -fstack-clash-protection -fcf-protection -g") + -fstack-clash-protection -fcf-protection") set(SOURCE_FILES ubl-util-standard.h diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index 1f86e4c..26fbbc8 100755 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -268,6 +268,7 @@ void MainWindow::get_builder(){ builder->get_widget("lblHW", lblHW); builder->get_widget("cbHw", cbHw); builder->get_widget("popCalendar", popCalendar); + builder->get_widget("boxDateTime", boxDateTime); this->add_CSS(); } void MainWindow::gui_exit(){ @@ -318,19 +319,21 @@ void MainWindow::download_local_cfg(){ string cmd_get_dhcp = "/usr/bin/ubconfig --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 --default --source system get clock HWCLOCK_SYNC"; - this->entry_hardware_clock(hw); + string hw = "/usr/bin/ubconfig --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 --target global get network NTPSERVERS"; + string cmd_get_dhcp = "/usr/bin/ubconfig --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"; - this->entry_hardware_clock(hw); + string hw_default = "/usr/bin/ubconfig --default get clock HWCLOCK_SYNC"; + this->entry_hardware_clock(hw, hw_default); info_warning_error(1); } @@ -439,7 +442,7 @@ void MainWindow::hardware_clock_global(string &local, string &etc){ } } -void MainWindow::entry_hardware_clock(string &cmd){ +void MainWindow::entry_hardware_clock(string &cmd, string &cmd_default){ struct Result obj_result = this->wrapper_call(cmd); if (obj_result.error == 0){ if (obj_result.response == "localtime"){ @@ -453,6 +456,21 @@ void MainWindow::entry_hardware_clock(string &cmd){ warning_info-=1; cbHw->set_active(-1); } + else{ + struct Result obj_result = this->wrapper_call(cmd_default); + if (obj_result.error == 0){ + if (obj_result.response == "localtime"){ + cbHw->set_active(0); + } + else if (obj_result.response == "etc"){ + cbHw->set_active(1); + } + } + else if (obj_result.error == 3){ + warning_info-=1; + cbHw->set_active(-1); + } + } } void MainWindow::hardware_clock(){ @@ -647,12 +665,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; @@ -660,11 +681,13 @@ 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; @@ -715,6 +738,7 @@ 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; } } diff --git a/source/ubl-settings-datetime.h b/source/ubl-settings-datetime.h index 0933f7a..50f151e 100755 --- a/source/ubl-settings-datetime.h +++ b/source/ubl-settings-datetime.h @@ -104,6 +104,7 @@ class MainWindow : public Gtk::ApplicationWindow { Gtk::Label *lblHeader; Gtk::Label *lblHW; Gtk::ComboBoxText *cbHw; + Gtk::Box *boxDateTime; unsigned int year=0; unsigned int month=0; unsigned int day=0; @@ -129,7 +130,7 @@ class MainWindow : public Gtk::ApplicationWindow { void hardware_clock_global(string &local, string &etc); void info_warning_error(int mess); void synopsis_show(); - void entry_hardware_clock(string &cmd); + void entry_hardware_clock(string &cmd, 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 f07b79d..a2e7320 100644 --- a/ubl-settings-datetime.glade +++ b/ubl-settings-datetime.glade @@ -323,7 +323,7 @@ False vertical - + True False vertical From a24fa2071cb1479faca5558f8a976359e62292ca Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Mon, 6 Mar 2023 10:25:59 +0600 Subject: [PATCH 03/13] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=20=D0=B1=D0=B0=D0=B3=20=D1=81=20utc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/ubl-settings-datetime.cc | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index 26fbbc8..d1511fd 100644 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -445,10 +445,10 @@ void MainWindow::hardware_clock_global(string &local, string &etc){ void MainWindow::entry_hardware_clock(string &cmd, string &cmd_default){ struct Result obj_result = this->wrapper_call(cmd); if (obj_result.error == 0){ - if (obj_result.response == "localtime"){ + if (obj_result.response.find("localtime")!=string::npos){ cbHw->set_active(0); } - else if (obj_result.response == "etc"){ + else if (obj_result.response.find("utc")!=string::npos){ cbHw->set_active(1); } } @@ -457,19 +457,20 @@ void MainWindow::entry_hardware_clock(string &cmd, string &cmd_default){ cbHw->set_active(-1); } else{ - struct Result obj_result = this->wrapper_call(cmd_default); - if (obj_result.error == 0){ - if (obj_result.response == "localtime"){ - cbHw->set_active(0); + 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.response == "etc"){ - cbHw->set_active(1); + else if (obj_result_default.error == 3){ + warning_info-=1; + cbHw->set_active(-1); } - } - else if (obj_result.error == 3){ - warning_info-=1; - cbHw->set_active(-1); - } + } } From 4e651540dc36b16c105fef4bface529b52db0551 Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Mon, 6 Mar 2023 11:28:40 +0600 Subject: [PATCH 04/13] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=20=D0=B1=D0=B0=D0=B3=20=D1=81=20=D0=BE=D1=88?= =?UTF-8?q?=D0=B8=D0=B1=D0=BA=D0=BE=D0=B9=20=D1=87=D1=82=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=8F=20=D0=BA=D0=BE=D0=BD=D1=84=D0=B8=D0=B3=D1=83=D1=80=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/ubl-settings-datetime.cc | 8 ++++++-- ubl-settings-datetime.glade | 8 ++++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index d1511fd..00f390d 100644 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -466,7 +466,7 @@ void MainWindow::entry_hardware_clock(string &cmd, string &cmd_default){ cbHw->set_active(1); } } - else if (obj_result_default.error == 3){ + else if (obj_result_default.error != 0){ warning_info-=1; cbHw->set_active(-1); } @@ -937,8 +937,12 @@ void MainWindow::append_region_zone(string region, string zone, Gtk::ComboBoxTex if (region=="Etc" && zone==""){ warning_info-=1; } - else if (region==""){ + else if (region=="" && zone==""){ warning_info+=1; + int error = warning_info; + if (warning_info!=error){ + warning_info=error; + } } } diff --git a/ubl-settings-datetime.glade b/ubl-settings-datetime.glade index a2e7320..83274cc 100644 --- a/ubl-settings-datetime.glade +++ b/ubl-settings-datetime.glade @@ -817,7 +817,7 @@ Format: DD.MM.YYYY 8 5 6 - 6 + 13 Region 0 @@ -829,7 +829,7 @@ Format: DD.MM.YYYY - 167 + 172 True False 5 @@ -851,9 +851,9 @@ Format: DD.MM.YYYY True False - 10 + 5 5 - 10 + 5 5 6 13 From 424a88857c2d5b8611390a8021513bf4aca7dc9e Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Mon, 6 Mar 2023 12:03:12 +0600 Subject: [PATCH 05/13] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=20=D0=B4=D0=B8=D0=B7=D0=B0=D0=B9=D0=BD=20css?= =?UTF-8?q?=20=D0=BA=D0=BD=D0=BE=D0=BF=D0=BE=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/ubl-settings-datetime.cc | 1 + style.css | 20 ++++++-------------- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index 00f390d..bf2e786 100644 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -82,6 +82,7 @@ void MainWindow::settings(){ this->event(); this->parse_text_date(); this->download_local_cfg(); + } else{ btnDownload->set_sensitive(false); diff --git a/style.css b/style.css index 11692ef..ada0e2a 100644 --- a/style.css +++ b/style.css @@ -26,28 +26,34 @@ padding: 3px 10px 5px 5px; } .menuitemtop:hover { + border-radius:3px; background:@theme_bg_color; } .menuitemmiddle:hover { + border-radius:3px; background:@theme_bg_color; } .menuitembottom:hover { + border-radius:3px; background:@theme_bg_color; } .menuitemtop:hover* { + border-radius:3px; margin:2px 2px 0 2px; padding: 5px 10px 3px 5px; background:@theme_selected_bg_color; border-color:transparent; } .menuitemmiddle:hover* { + border-radius:3px; margin:0 2px 0 2px; padding: 3px 10px 3px 5px; background:@theme_selected_bg_color; border-color:transparent; } .menuitembottom:hover* { + border-radius:3px; margin:0 2px 2px 2px; padding: 3px 10px 5px 5px; background:@theme_selected_bg_color; @@ -55,26 +61,12 @@ } .menuitembottom{ margin-top:0px; - border-color:alpha(@theme_text_color, 0.4); - border-style:solid; - border-left-width:1px; - border-bottom-width:1px; - border-right-width:1px; } .menuitemmiddle{ margin-top:0px; margin-bottom:0px; - border-color:alpha(@theme_text_color, 0.4); - border-style:solid; - border-left-width:1px; - border-right-width:1px; } .menuitemtop{ margin-bottom:0px; - border-color:alpha(@theme_text_color, 0.4); - border-style:solid; - border-left-width:1px; - border-top-width:1px; - border-right-width:1px; } \ No newline at end of file From 104bc3a7fd585f5ca9c5a72edcacb8d0d2368e82 Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Mon, 6 Mar 2023 12:58:14 +0600 Subject: [PATCH 06/13] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=20=D0=B1=D0=B0=D0=B3=20=D1=81=20=D0=B2=D1=8B?= =?UTF-8?q?=D0=B2=D0=BE=D0=B4=D0=BE=D0=BC=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BE?= =?UTF-8?q?=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/ubl-settings-datetime.cc | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index bf2e786..27e0b06 100644 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -65,8 +65,6 @@ void MainWindow::settings(){ builder->get_widget("window",window); builder->get_widget("boxButton",boxButton); builder->get_widget("boxSave",boxSave); - - ubl_make_plugs(boxSave,boxButton, socket_ext_id_I, socket_trd_id_I); year=0, month=0, day=0; this->get_builder(); @@ -444,7 +442,8 @@ void MainWindow::hardware_clock_global(string &local, string &etc){ } void MainWindow::entry_hardware_clock(string &cmd, string &cmd_default){ - struct Result obj_result = this->wrapper_call(cmd); + int error = warning_info; + struct Result obj_result = this->wrapper_call(cmd); if (obj_result.error == 0){ if (obj_result.response.find("localtime")!=string::npos){ cbHw->set_active(0); @@ -454,10 +453,13 @@ void MainWindow::entry_hardware_clock(string &cmd, string &cmd_default){ } } else if (obj_result.error == 3){ - warning_info-=1; + if (error!=warning_info){ + warning_info=error; + } cbHw->set_active(-1); } 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){ @@ -468,11 +470,16 @@ void MainWindow::entry_hardware_clock(string &cmd, string &cmd_default){ } } else if (obj_result_default.error != 0){ - warning_info-=1; + if (error_1!=warning_info){ + warning_info=error; + } cbHw->set_active(-1); } + + } + } void MainWindow::hardware_clock(){ @@ -793,7 +800,7 @@ void MainWindow::calendar_show(){ popCalendar->show(); } void MainWindow::fill_in_reg_zone(string &cmd){ - + int error = warning_info; struct Result obj_result_1 = this->wrapper_call(cmd); if (obj_result_1.error==0){ auto arr_reg_zone = this->split_region_zone(obj_result_1.response); @@ -806,7 +813,12 @@ void MainWindow::fill_in_reg_zone(string &cmd){ } else { this->append_region_zone("","",cbRegion,cbZone); - } + } + if (obj_result_1.error==3){ + if (error!=warning_info){ + warning_info=error; + } + } } From b9d529d95c57e62f1d77b58fae4a17ca1e9be7cb Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Mon, 6 Mar 2023 16:35:47 +0600 Subject: [PATCH 07/13] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=20=D0=B1=D0=B0=D0=B3=20=D1=81=20=D0=B4=D1=83?= =?UTF-8?q?=D0=B1=D0=BB=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5?= =?UTF-8?q?=D0=BC=20=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