diff --git a/Makefile b/Makefile index 7d04dae..e6d9f93 100644 --- a/Makefile +++ b/Makefile @@ -117,6 +117,10 @@ install: check uninstall @install -Dm644 -t "${pkgdir}/usr/share/${pkgname}/images/" "${pkgname}.svg" @install -Dm644 -t "${pkgdir}/usr/share/${pkgname}/images/" "${pkgname}.png" @install -Dm644 -t "${pkgdir}/usr/share/${pkgname}/images/" bg_top.png + @install -Dm644 -t "${pkgdir}/usr/share/${pkgname}/images/" alert.svg + @install -Dm644 -t "${pkgdir}/usr/share/${pkgname}/images/" checked.svg + @install -Dm644 -t "${pkgdir}/usr/share/${pkgname}/images/" warning.svg + @install -Dm644 -t "${pkgdir}/usr/share/${pkgname}/images/" close.svg @gtk-update-icon-cache -fiq /usr/share/icons/hicolor/ @update-desktop-database --quiet 2>/dev/null @touch /usr/share/applications diff --git a/alert.svg b/alert.svg new file mode 100644 index 0000000..c14c381 --- /dev/null +++ b/alert.svg @@ -0,0 +1,55 @@ + + + + + + image/svg+xml + + + + + + + + diff --git a/checked.svg b/checked.svg new file mode 100644 index 0000000..7956b34 --- /dev/null +++ b/checked.svg @@ -0,0 +1,327 @@ + + + + + + + + + + + + + + + + diff --git a/close.svg b/close.svg new file mode 100644 index 0000000..d869d85 --- /dev/null +++ b/close.svg @@ -0,0 +1,54 @@ + + + + + + image/svg+xml + + + + + + + + diff --git a/source/ubl-settings-datetime.cc b/source/ubl-settings-datetime.cc index 36a39f7..f40b2d7 100644 --- a/source/ubl-settings-datetime.cc +++ b/source/ubl-settings-datetime.cc @@ -78,8 +78,11 @@ void MainWindow::settings(){ btnBoxAboutDialog->set_visible(false); this->event(); this->parse_text_date(); - btnSaveGlobl->set_sensitive(false); + this->download_globl_cfg(); this->download_local_cfg(); + orevrlayInfo->add_overlay(*boxInfoError); + imgInfo->set("/usr/share/ubl-settings-datetime/images/checked.svg"); + imageCloseInfo->set("/usr/share/ubl-settings-datetime/images/close.svg"); } else{ btnSaveLocal->set_sensitive(false); @@ -112,14 +115,6 @@ void MainWindow::settings(){ } -bool MainWindow::gui_set_orientation(GdkEventConfigure* event){ - if (event){} - //int w; - //w = this->get_width(); - //popWarning->set_default_widget(w); - return false; - -} int MainWindow::check_root(){ if (geteuid()!=0){ @@ -131,12 +126,12 @@ int MainWindow::check_root(){ } void MainWindow::lacalization(){ - //aboutWindows->set_title(_("")); - aboutWindows->set_comments(_("Settings the date and time")); + btnSynopsis->set_label(_("Synopsis")); + aboutProgram->set_label(_("About the program")); + aboutWindows->set_comments(_("Setting the date and time")); lblSave->set_label(_("Save")); lblDownload->set_label(_("Download")); btnDownloadGlobal->set_label(_("Download global")); - btnDownloadlocal->set_label(_("Download local")); btnSaveLocal->set_label(_("Save local")); btnSaveGlobl->set_label(_("Save global")); txtDate->set_tooltip_text(_("Date of\nFormat: DD.MM.YYYY")); @@ -155,13 +150,9 @@ void MainWindow::lacalization(){ lblZone->set_text(_("Zone")); lblSynchronizeBtn->set_text(_("Sync by")); this->set_title(_("ubl-settings-datetime")); - windowsNnpClose->set_title(_("Warning!")); mess_sudo->set_title(_("Warning!")); mess_dchp->set_title(_("Warning!")); lblTimeBios->set_text(_("Synchronize hardware time")); - lblBanerStopNtp->set_text(_("Active service detected\nAutomatic time and date synchronization service detected")); - lblNtpStop->set_text(_("Stop the synchronization service")); - lblNtpClose->set_text(_("Close")); //_lblSynchronizebChk->set_text(_("Synchronize via NTP")); } @@ -207,7 +198,22 @@ void MainWindow::add_CSS(){ //Glib::RefPtr context_button = btnHardwareTime->get_style_context(); context->add_class("cssboxColor1"); context_lbl_head->add_class("textHead"); - //context_button->add_class("textHead"); + Glib::RefPtr boxInfo = boxInfoError->get_style_context(); + boxInfo->add_class("boxInfoOK"); + Glib::RefPtr btnWarngingCloseCss = btnWarngingClose->get_style_context(); + btnWarngingCloseCss->add_class("boxInfoOK"); +} + +void MainWindow::info_status_app(string style){ + Glib::RefPtr cssProvider = Gtk::CssProvider::create(); + cssProvider->load_from_path(path_css); + Glib::RefPtr styleContext = Gtk::StyleContext::create(); + Glib::RefPtr screen = Gdk::Screen::get_default();//get default screen + styleContext->add_provider_for_screen(screen, cssProvider, GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);//add provider for screen in all application + Glib::RefPtr boxInfo = boxInfoError->get_style_context(); + boxInfo->add_class(style); + Glib::RefPtr btnWarngingCloseCss = btnWarngingClose->get_style_context(); + btnWarngingCloseCss->add_class(style); } void MainWindow::get_builder(){ @@ -242,12 +248,6 @@ void MainWindow::get_builder(){ builder->get_widget("mess_sudo",mess_sudo); builder->get_widget("lblMessageSudo",lblMessageSudo); builder->get_widget("btnMessCloseSudo",btnMessCloseSudo); - builder->get_widget("windowsNnpClose",windowsNnpClose); - builder->get_widget("btnNtpStop",btnNtpStop); - builder->get_widget("btnNtpWinClose",btnNtpWinClose); - builder->get_widget("lblNtpStop",lblNtpStop); - builder->get_widget("lblNtpClose",lblNtpClose); - builder->get_widget("lblBanerStopNtp",lblBanerStopNtp); builder->get_widget("btnSaveLocal",btnSaveLocal); builder->get_widget("btnSaveGlobl",btnSaveGlobl); builder->get_widget("lblSave",lblSave); @@ -255,12 +255,17 @@ void MainWindow::get_builder(){ builder->get_widget("btnDownload",btnDownload); builder->get_widget("lblDownload",lblDownload); builder->get_widget("btnDownloadGlobal", btnDownloadGlobal); - builder->get_widget("btnDownloadlocal", btnDownloadlocal); builder->get_widget("btnSettings", btnSettings); builder->get_widget("aboutWindows", aboutWindows); builder->get_widget("btnBoxAboutDialog", btnBoxAboutDialog); - - + builder->get_widget("btnSynopsis", btnSynopsis); + builder->get_widget("aboutProgram", aboutProgram); + builder->get_widget("boxInfoError", boxInfoError); + builder->get_widget("orevrlayInfo", orevrlayInfo); + builder->get_widget("btnWarngingClose", btnWarngingClose); + builder->get_widget("lblWarning", lblWarning); + builder->get_widget("imgInfo", imgInfo); + builder->get_widget("imageCloseInfo", imageCloseInfo); this->add_CSS(); } void MainWindow::gui_exit(){ @@ -284,26 +289,37 @@ void MainWindow::event(){ cbRegion->signal_changed().connect(sigc::mem_fun(*this, &MainWindow::append_zone)); cldrDate->signal_day_selected_double_click().connect(sigc::mem_fun(*this, &MainWindow::get_calendar)); mess_sudo->signal_delete_event().connect(sigc::mem_fun(*this, &MainWindow::gui_exit_2)); - btnNtpWinClose->signal_clicked().connect(sigc::mem_fun(*this, &MainWindow::wind_close_ntp)); - btnNtpStop->signal_clicked().connect(sigc::mem_fun(*this, &MainWindow::stop_ntp)); btnDownloadGlobal->signal_activate().connect(sigc::mem_fun(*this, &MainWindow::download_globl_cfg)); btnSaveLocal->signal_activate().connect(sigc::mem_fun(*this, &MainWindow::save_local_cfg)); btnSaveGlobl->signal_activate().connect(sigc::mem_fun(*this, &MainWindow::save_global_cfg)); - btnDownloadlocal->signal_activate().connect(sigc::mem_fun(*this, &MainWindow::download_local_cfg)); - btnSettings->signal_clicked().connect(sigc::mem_fun(*this, &MainWindow::about_Dialog_show)); - signal_configure_event().connect(sigc::mem_fun(*this, &MainWindow::gui_set_orientation), false); + aboutProgram->signal_activate().connect(sigc::mem_fun(*this, &MainWindow::about_Dialog_show)); + btnDownload->signal_toggled().connect(sigc::mem_fun(*this, &MainWindow::download_local_cfg)); + btnSynopsis->signal_activate().connect(sigc::mem_fun(*this, &MainWindow::synopsis_show)); + btnWarngingClose->signal_clicked().connect(sigc::mem_fun(*this, &MainWindow::close_banner_info)); + Glib::signal_timeout().connect(sigc::mem_fun(*this, &MainWindow::close_banner_info_timer), 10000); } -void MainWindow::about_Dialog_show(){ - aboutWindows->show(); +bool MainWindow::close_banner_info_timer(){ + if (bool_close_banner_info==true){ + boxInfoError->hide(); + } + + return false; } +void MainWindow::close_banner_info(){ + boxInfoError->hide(); +} -void MainWindow::download_globl_cfg(){ - this->entry_dhcp_mess(); - string cmd = "/usr/bin/ubconfig --default --source global get clock ZONE"; - this->fill_in_reg_zone(cmd); - btnSaveGlobl->set_sensitive(true); +void MainWindow::synopsis_show(){ + //wrapper_system("xdg-open https://wiki.ublinux.ru/ru/home"); + error_info=0; + warning_info=0; +} + + +void MainWindow::about_Dialog_show(){ + aboutWindows->show(); } void MainWindow::download_local_cfg(){ @@ -311,45 +327,120 @@ void MainWindow::download_local_cfg(){ this->fill_in_reg_zone(cmd); this->update_hour_minute(); this->update_calendar(); + info_warning_error(0); +} + +void MainWindow::download_globl_cfg(){ + this->entry_dhcp_mess(); + string cmd = "/usr/bin/ubconfig --default --source global get clock ZONE"; + this->fill_in_reg_zone(cmd); + info_warning_error(1); } void MainWindow::save_local_cfg(){ string cmd = "ubconfig --target system set clock ZONE="; this->enter_zone(cmd); + info_warning_error(2); } void MainWindow::save_global_cfg(){ string cmd = "/usr/bin/ubconfig --target global set clock ZONE="; this->enter_zone(cmd); this->save_Dhcp(); + info_warning_error(3); } -void MainWindow::wind_close_ntp(){ - windowsNnpClose->hide(); +void MainWindow::info_warning_error(int mess){ + boxInfoError->show(); + if (error_info!=0){ + imgInfo->set("/usr/share/ubl-settings-datetime/images/alert.svg"); + bool_close_banner_info=false; + info_status_app("boxInfoError"); + error_info=0; + warning_info=0; + if (mess == 0){ + lblWarning->set_text(_("Local configuration reading error")); + } + else if (mess == 1){ + lblWarning->set_text(_("Global configuration read error")); + } + else if (mess == 2){ + lblWarning->set_text(_("Local configuration write error")); + } + else if (mess == 3){ + lblWarning->set_text(_("Global configuration write error")); + } + } + else if (warning_info!=0){ + imgInfo->set("/usr/share/ubl-settings-datetime/images/warning.svg"); + bool_close_banner_info=false; + info_status_app("boxInfoWarning"); + error_info=0; + warning_info=0; + if (mess == 0){ + lblWarning->set_text(_("Local configuration reading error")); + } + else if (mess == 1){ + lblWarning->set_text(_("Global configuration read error")); + } + else if (mess == 2){ + lblWarning->set_text(_("Local configuration write error")); + } + else if (mess == 3){ + lblWarning->set_text(_("Global configuration write error")); + } + + } + else{ + imgInfo->set("/usr/share/ubl-settings-datetime/images/checked.svg"); + bool_close_banner_info=true; + info_status_app("boxInfoOK"); + if (mess == 0){ + lblWarning->set_text(_("Local configuration downloaded successfully")); + } + else if (mess == 1){ + lblWarning->set_text(_("Global configuration downloaded successfully")); + } + else if (mess == 2){ + lblWarning->set_text(_("Local configuration successfully written")); + } + else if (mess == 3){ + lblWarning->set_text(_("Global configuration successfully written")); + } + } } + void MainWindow::stop_ntp(){ string cmd = "SEL_SERVICE=\"systemd-timesyncd\"; systemctl --quiet is-active ${SEL_SERVICE}.service &>/dev/null && systemctl stop ${SEL_SERVICE}.service; "; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); cmd ="SEL_SERVICE=\"ntpd\"; systemctl --quiet is-active ${SEL_SERVICE}.service &>/dev/null && systemctl stop ${SEL_SERVICE}.service || pkill -9 ${SEL_SERVICE}; "; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); cmd ="SEL_SERVICE=\"ntpdate\"; systemctl --quiet is-active ${SEL_SERVICE}.service &>/dev/null && systemctl stop ${SEL_SERVICE}.service || pkill -9 ${SEL_SERVICE}; "; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); cmd = "SEL_SERVICE=\"chronyd\"; systemctl --quiet is-active ${SEL_SERVICE}.service &>/dev/null && systemctl stop ${SEL_SERVICE}.service || pkill -9 ${SEL_SERVICE}; "; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); cmd ="SEL_SERVICE=\"openntpd\"; systemctl --quiet is-active ${SEL_SERVICE}.service &>/dev/null && systemctl stop ${SEL_SERVICE}.service || pkill -9 ntpd; "; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); cmd ="SEL_SERVICE=\"ptp4l\"; systemctl --quiet is-active ${SEL_SERVICE}.service &>/dev/null && systemctl stop ${SEL_SERVICE}.service || pkill -9 ${SEL_SERVICE}; "; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); cmd ="SEL_SERVICE=\"phc2sys\"; systemctl --quiet is-active ${SEL_SERVICE}.service &>/dev/null && systemctl stop ${SEL_SERVICE}.service || pkill -9 ${SEL_SERVICE} "; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); + +} + +void MainWindow::wrapper_system(string cmd){ + int response_cmd = system(cmd.c_str()); + if (response_cmd!=0){ + error_info+=1; + } } void MainWindow::hardware_clock(){ string cmd = "hwclock --systohc"; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); } void MainWindow::gui_mess_close(){ @@ -380,7 +471,7 @@ bool MainWindow::focus_ntp(){ } if ((flag_error==false) && (flag_error_check_ntp==false)){ cmd = "/usr/bin/ubconfig set network NTPSERVERS=\"" + str_ntp + "\""; - response_cmd = system(cmd.c_str()); + wrapper_system(cmd); } else{ if (flag_error==true){ @@ -437,7 +528,6 @@ bool MainWindow::check_ntp(string &str_ntp){ for (size_t i = 0; i < str_ntp.size(); i++){ flag_error=false; char_ntp[0] = str_ntp[i]; - cout << char_ntp << endl; for (int index=0;index<11;index++){ if (index==10){ @@ -446,8 +536,6 @@ bool MainWindow::check_ntp(string &str_ntp){ else{ simvol = to_string(index); } - cout << (simvol==char_ntp) << endl; - cout << simvol << " " << char_ntp << endl; if (simvol==char_ntp){ flag_error=false; @@ -487,16 +575,19 @@ struct MainWindow::Result MainWindow::wrapper_call(string cmd){ else{ obj_result.response = response; obj_result.error = 1; + warning_info+=1; } } else{ obj_result.response = response; obj_result.error = 2; + warning_info+=1; } } else{ obj_result.response = response; obj_result.error = 3; + warning_info+=1; } return obj_result; } @@ -569,18 +660,18 @@ void MainWindow::save_Dhcp(){ } else if (activ_index==0){ string cmd = "/usr/bin/ubconfig set network NTPSERVERS=default"; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); } else if (activ_index==1){ string cmd = "/usr/bin/ubconfig set network NTPSERVERS=dhcp"; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); } else if (activ_index==2){ this->focus_ntp(); } else if (activ_index==3){ string cmd = "/usr/bin/ubconfig remove network NTPSERVERS"; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); } } @@ -747,7 +838,7 @@ void MainWindow::enter_zone(string &cmd){ str_zone=zone_text; str_region=reg_text; cmd = cmd + str_region + "/" + str_zone; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); } else{ str_zone=""; @@ -771,7 +862,6 @@ void MainWindow::parse_text_date(){ void MainWindow::append_region_zone(string region, string zone, Gtk::ComboBoxText *tmpCbReg, Gtk::ComboBoxText *tmpCbZone){ str_region=region; - str_region_glob=region; int index = 0; Glib::ustring reg_local = ""; int size_vec = array_region_local.size(); @@ -892,7 +982,7 @@ void MainWindow::update_time_date(){ if (str_data==str_data_entry){ cmd = "date +%Y%m%d -s \"" + to_string(year)+ str_month+str_day+"\""; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); txtDate->set_text(str_data); year=0; month=0; @@ -912,7 +1002,7 @@ void MainWindow::update_time_date(){ cmd = "date +%T -s \""+ to_string(hour) + ":" + to_string(minute) + ":" + to_string(ltm->tm_sec) +"\""; - response_cmd=system(cmd.c_str()); + wrapper_system(cmd); } void MainWindow::post_entry_data(){ diff --git a/source/ubl-settings-datetime.h b/source/ubl-settings-datetime.h index 322d986..5e82786 100644 --- a/source/ubl-settings-datetime.h +++ b/source/ubl-settings-datetime.h @@ -75,42 +75,37 @@ class MainWindow : public Gtk::ApplicationWindow { Gtk::Label *lblTimeBios; Gtk::Label *lblSave; Gtk::Label *lblDownload; - Gtk::Label *lblBanerStopNtp; Gtk::Button *btnHardwareTime; Gtk::CheckButton *cbxSynchronizeNtp; - Gtk::Window *windowsNnpClose; - Gtk::Button *btnNtpStop; - Gtk::Button *btnNtpWinClose; - Gtk::Label *lblNtpStop; - Gtk::Label *lblNtpClose; Gtk::Entry *txtNtpServer; Gtk::Entry *txtDate; - Gtk::Widget *btnDownload; + Gtk::MenuButton *btnDownload; Gtk::MenuItem *btnSaveLocal; - Gtk::MenuItem *btnSaveGlobl; - - + Gtk::MenuItem *btnSaveGlobl; Gtk::MenuItem *btnDownloadGlobal; - Gtk::MenuItem *btnDownloadlocal; Gtk::AboutDialog *aboutWindows; Gtk::ButtonBox *btnBoxAboutDialog; - //Gtk::MenuButton *btnSave; - //Gtk::MenuButton *btnDownload; - Gtk::Button *btnSettings; + Gtk::MenuButton *btnSettings; + Gtk::MenuItem *btnSynopsis; + Gtk::MenuItem *aboutProgram; + Gtk::Widget *boxInfoError; + Gtk::Overlay *orevrlayInfo; + Gtk::Button *btnWarngingClose; + Gtk::Label *lblWarning; + Gtk::Image *imgInfo; + Gtk::Image *imageCloseInfo; std::map > time_reg_map; std::map > time_reg_map_local; unsigned int year=0; unsigned int month=0; unsigned int day=0; + int error_info = 0; + int warning_info = 0; int hour; int minute; string str_region=""; - string str_region_glob=""; - string str_txtDate; - string strtxtNtpServer; string str_zone=""; - string str_zoneGlob; - int response_cmd; + bool bool_close_banner_info=true; template struct Result{ Type response; @@ -123,6 +118,10 @@ class MainWindow : public Gtk::ApplicationWindow { MainWindow(BaseObjectType* obj, Glib::RefPtr const& builder); MainWindow(Glib::RefPtr const& builder); virtual ~MainWindow() = default; + void info_warning_error(int mess); + bool close_banner_info_timer(); + void close_banner_info(); + void synopsis_show(); void fill_in_reg_zone(string &cmd); void download_globl_cfg(); void about_Dialog_show(); @@ -162,8 +161,9 @@ class MainWindow : public Gtk::ApplicationWindow { bool gui_exit_2(GdkEventAny* event); void stop_ntp(); void wind_close_ntp(); + void wrapper_system(string cmd); + void info_status_app(string style); void wrapper_update_time_date(); - bool gui_set_orientation(GdkEventConfigure* event); string zone_file_read(string zone); void sort_zone(vector *time_reg_map_local,vector *time_reg_map); array split_region_zone(string read_reg_zon_cfg); diff --git a/style.css b/style.css index 88c8a58..8a2e785 100644 --- a/style.css +++ b/style.css @@ -4,3 +4,14 @@ .textHead{ text-shadow: 1px 1px #ffffff; } +.boxInfoOK{ + background-color:#6edf64; +} + +.boxInfoWarning{ + background-color: rgba(242, 255, 0, 1); +} + +.boxInfoError{ + background-color: rgba(255, 0, 0, 1); +} diff --git a/ubl-settings-datetime.glade b/ubl-settings-datetime.glade index e4945fe..ce8e835 100644 --- a/ubl-settings-datetime.glade +++ b/ubl-settings-datetime.glade @@ -2,16 +2,6 @@ - - True - False - start - True - vertical - - - - False О Программе @@ -20,7 +10,7 @@ ubl-settings-datetime 1.4 Copyright © 2021 - the ublinux team - Настройка даты времени + Setting the date and time https://ublinux.ru/ www.ublinux.ru UBGroup @@ -50,6 +40,87 @@ + + True + False + start + True + vertical + + + True + False + + + True + False + 5 + 5 + 5 + 5 + 6 + 6 + gtk-dialog-warning + + + False + True + 0 + + + + + True + False + start + center + 6 + 5 + 5 + 5 + 6 + 6 + Warning! + + + + + + + True + True + 1 + + + + + True + False + True + none + + + True + False + gtk-remove + + + + + False + True + end + 3 + + + + + True + True + 0 + + + True False @@ -74,18 +145,30 @@ True False - + + True + False + Download Global + True + + + + + True + False + + True False - Download Local + Synopsis True - + True False - Download Global + About the program True @@ -93,7 +176,7 @@ False - + True False @@ -335,7 +418,7 @@ - 191 + -1 True True Date @@ -348,7 +431,7 @@ Format: DD.MM.YYYY 6 - False + True True 5 @@ -362,7 +445,7 @@ Format: DD.MM.YYYY 5 5 5 - 5 + 7 6 6 @@ -397,7 +480,7 @@ Format: DD.MM.YYYY True 5 5 - 5 + 7 5 6 6 @@ -476,7 +559,7 @@ Format: DD.MM.YYYY 5 10 5 - 10 + 5 6 6 @@ -561,7 +644,7 @@ Format: DD.MM.YYYY 5 5 6 - 5 + 6 False @@ -581,7 +664,7 @@ Format: DD.MM.YYYY 5 10 6 - 5 + 6 True @@ -627,7 +710,7 @@ Format: DD.MM.YYYY 10 5 10 - 6 + 5 0.019999999552965164 in @@ -673,7 +756,7 @@ Format: DD.MM.YYYY 5 5 6 - 13 + 6 False False @@ -711,7 +794,7 @@ Format: DD.MM.YYYY 5 5 6 - 13 + 6 False False @@ -793,16 +876,16 @@ Format: DD.MM.YYYY - + True False - + True True False True - menu1 + menu2 True @@ -817,7 +900,7 @@ Format: DD.MM.YYYY 5 6 6 - go-bottom + media-floppy False @@ -826,7 +909,7 @@ Format: DD.MM.YYYY - + True False 5 @@ -835,7 +918,7 @@ Format: DD.MM.YYYY 5 6 6 - Save + Download False @@ -864,16 +947,16 @@ Format: DD.MM.YYYY - + True False - + True True False True - menu2 + menu1 True @@ -888,7 +971,7 @@ Format: DD.MM.YYYY 5 6 6 - media-floppy + go-bottom False @@ -897,7 +980,7 @@ Format: DD.MM.YYYY - + True False 5 @@ -906,10 +989,7 @@ Format: DD.MM.YYYY 5 6 6 - Download - + Save False @@ -919,6 +999,9 @@ Format: DD.MM.YYYY + False @@ -927,16 +1010,23 @@ Format: DD.MM.YYYY - + True True + False True + menu3 True False + 5 + 5 + 5 + 5 + 6 + 6 gtk-execute - 25 @@ -952,7 +1042,7 @@ Format: DD.MM.YYYY end - 2 + 3 @@ -1148,178 +1238,4 @@ Format: DD.MM.YYYY - - False - - - True - False - vertical - - - True - False - - - True - False - 5 - 5 - 5 - 5 - 6 - 6 - 50 - emblem-important - - - False - True - 0 - - - - - True - False - 5 - 5 - 5 - 5 - 6 - 6 - Active service detected -Automatic time and date synchronization service detected - - - True - True - 1 - - - - - True - True - 0 - - - - - True - False - - - True - True - True - 5 - 5 - 5 - 5 - 6 - 6 - - - True - False - - - True - False - 5 - 5 - 5 - 5 - media-playback-stop - - - False - True - 0 - - - - - True - False - Stop the synchronization service - - - False - True - 1 - - - - - - - True - True - 0 - - - - - True - True - True - 5 - 5 - 5 - 5 - 6 - 6 - - - True - False - - - True - False - 6 - 5 - 5 - 5 - window-close - - - False - True - 0 - - - - - True - False - Close - - - False - True - 1 - - - - - - - True - True - 1 - - - - - False - True - 1 - - - - - diff --git a/ubl-settings-datetime_ru.po b/ubl-settings-datetime_ru.po index ba88644..1bf5130 100644 --- a/ubl-settings-datetime_ru.po +++ b/ubl-settings-datetime_ru.po @@ -49,6 +49,9 @@ msgstr "Введите DHCP!" msgid "OK" msgstr "OK" +msgid "Setting the date and time" +msgstr "Настройка даты времени" + msgid "Settings the date and time" msgstr "Настройки даты и времени" @@ -1640,10 +1643,10 @@ msgid "Save" msgstr "Сохранить" msgid "Save global" -msgstr "Сохранить глобально" +msgstr "Сохранить в глобальную конфигурацию" msgid "Save local" -msgstr "Сохранить локально" +msgstr "Сохранить в локальную конфигурацию" msgid "Download global" msgstr "Загрузить глобально" @@ -1724,4 +1727,35 @@ msgid "EasterIsland" msgstr "Остров Пасхи" msgid "Andorra" -msgstr "Андорра" \ No newline at end of file +msgstr "Андорра" + +msgid "About the program" +msgstr "О программе" + +msgid "Synopsis" +msgstr "Справка" + +msgid "Local configuration reading error" +msgstr "Ошибка чтения локальной конфигурации" + +msgid "Local configuration write error" +msgstr "Ошибка записи локальной конфигурации" + +msgid "Global configuration read error" +msgstr "Ошибка чтения глобальной конфигурации" + +msgid "Global configuration write error" +msgstr "Ошибка записи глобальной конфигурации" + +msgid "Local configuration downloaded successfully" +msgstr "Успешно загружена локальная конфигурация" + +msgid "Global configuration downloaded successfully" +msgstr "Успешно загружена глобальная конфигурация" + +msgid "Global configuration successfully written" +msgstr "Успешно записана глобальная конфигурация" + +msgid "Local configuration successfully written" +msgstr "Успешно записана локальная конфигурация" + diff --git a/warning.svg b/warning.svg new file mode 100644 index 0000000..ab59be1 --- /dev/null +++ b/warning.svg @@ -0,0 +1,55 @@ + + + + + + image/svg+xml + + + + + + + +