From e4087dc9c1d34eea6509bf414f8eefb7dc711f6e Mon Sep 17 00:00:00 2001 From: Igor Belitskiy Date: Fri, 12 May 2023 17:03:35 +0600 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D1=81=D0=BE=D0=BE=D0=B1=D1=89=D0=B5=D0=BD=D0=B8=D1=8F?= =?UTF-8?q?=20=D0=B2=20=D1=81=D1=82=D0=B0=D1=82=D1=83=D1=81=D0=BD=D0=BE?= =?UTF-8?q?=D0=BC=20=D0=BE=D0=BA=D0=BD=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/ubl-settings-bootloader.cc | 36 ++++++++++++++++++++----------- source/ubl-settings-bootloader.h | 6 ++++++ ubl-settings-bootloader.pot | 11 ++++++++++ ubl-settings-bootloader_ru.po | 12 +++++++++++ 4 files changed, 52 insertions(+), 13 deletions(-) diff --git a/source/ubl-settings-bootloader.cc b/source/ubl-settings-bootloader.cc index 05d66ee..8db25ac 100755 --- a/source/ubl-settings-bootloader.cc +++ b/source/ubl-settings-bootloader.cc @@ -761,7 +761,8 @@ void MainWindow::set_add_data_user(Gtk::TreeModel::Row &row, bool flag, string & row = *(list_store_user->append()); row[m_columns_user.check_button] = flag; row[m_columns_user.name] = name; - row[m_columns_user.password] = password; + row[m_columns_user.password] = password; + len_old_user += 1; } void MainWindow::set_init_data_melody(std::map &map_temp) { @@ -788,7 +789,8 @@ void MainWindow::set_add_data_melody(Gtk::TreeModel::Row &row, bool flag, string row = *(list_store_melody->append()); row[m_columns_melody.check_button] = flag; row[m_columns_melody.title] = name; - row[m_columns_melody.melody_code] = code; + row[m_columns_melody.melody_code] = code; + len_old_melody += 1; } void MainWindow::remove_user() { @@ -803,7 +805,7 @@ void MainWindow::remove_user() { flag_validate_del_user = false; info_status_app(info_box_ok_css); imgInfo->set_from_icon_name(icon_checked, Gtk::ICON_SIZE_MENU); - lblWarning->set_text(""); + lblWarning->set_text(str_del_user); } flag_validate_del_user = false; } @@ -814,7 +816,7 @@ void MainWindow::remove_melody() { flag_validate_del_melody = false; info_status_app(info_box_ok_css); imgInfo->set_from_icon_name(icon_checked, Gtk::ICON_SIZE_MENU); - lblWarning->set_text(""); + lblWarning->set_text(str_del_melody); } flag_validate_del_melody = false; } @@ -829,15 +831,17 @@ void MainWindow::select_line_user(const Gtk::TreeModel::Path&, const Gtk::TreeMo bool flag_error = false; string name = ""; string password = ""; + size_t len_new_user = 0; Glib::RefPtr treeViewUser_model = treeViewUser->get_model(); Gtk::TreeModel::Children children = treeViewUser_model->children(); for(Gtk::TreeModel::iterator iter = children.begin(); iter != children.end(); ++iter) { Gtk::TreeModel::Row row = *iter; name = row[m_columns_user.name] + ""; password = row[m_columns_user.password] + ""; + len_new_user += 1; if (name.length() == 0 || password.length() == 0) { flag_error = true; - break; + } } if (flag_error == true) { @@ -846,10 +850,13 @@ void MainWindow::select_line_user(const Gtk::TreeModel::Path&, const Gtk::TreeMo lblWarning->set_text(str_null_username); } else { - info_status_app(info_box_ok_css); - imgInfo->set_from_icon_name(icon_checked, Gtk::ICON_SIZE_MENU); - lblWarning->set_text(""); + if ((len_old_user-1) != len_new_user) { + info_status_app(info_box_ok_css); + imgInfo->set_from_icon_name(icon_checked, Gtk::ICON_SIZE_MENU); + lblWarning->set_text(str_add_user); + } } + len_old_user = len_new_user; } void MainWindow::select_line_melody(const Gtk::TreeModel::Path&, const Gtk::TreeModel::iterator& iter) { @@ -861,6 +868,7 @@ void MainWindow::select_line_melody(const Gtk::TreeModel::Path&, const Gtk::Tree flag_validate_del_melody = true; string code_melodyes = ""; string melody_title = ""; + size_t len_new_melody = 0; bool flag_error = false; Glib::RefPtr treeViewMelody_model = treeViewMelody->get_model(); Gtk::TreeModel::Children children = treeViewMelody_model->children(); @@ -868,9 +876,9 @@ void MainWindow::select_line_melody(const Gtk::TreeModel::Path&, const Gtk::Tree Gtk::TreeModel::Row row = *iter; code_melodyes = row[m_columns_melody.melody_code] + ""; melody_title = row[m_columns_melody.title] + ""; + len_new_melody += 1; if (code_melodyes.length() == 0 || melody_title.length() == 0) { flag_error = true; - break; } } if (flag_error == true) { @@ -879,12 +887,14 @@ void MainWindow::select_line_melody(const Gtk::TreeModel::Path&, const Gtk::Tree lblWarning->set_text(str_null_melody_name); } else { - info_status_app(info_box_ok_css); - imgInfo->set_from_icon_name(icon_checked, Gtk::ICON_SIZE_MENU); - lblWarning->set_text(""); + if ((len_old_melody-1) != len_new_melody) { + info_status_app(info_box_ok_css); + imgInfo->set_from_icon_name(icon_checked, Gtk::ICON_SIZE_MENU); + lblWarning->set_text(str_add_melody); + } } this->validate_melody(); - + len_old_melody = len_new_melody; } void MainWindow::validate_melody() { diff --git a/source/ubl-settings-bootloader.h b/source/ubl-settings-bootloader.h index 0664385..a981f6d 100644 --- a/source/ubl-settings-bootloader.h +++ b/source/ubl-settings-bootloader.h @@ -145,6 +145,10 @@ void me_thread(string cmd); #define cmd_last_launched_os "/usr/lib/ublinux/scripts/grub-functions exec_get_last_menuentry" #define info_box_ok_css "boxInfoMessOK" #define info_box_error_css "boxInfoMessError" +#define str_add_user _("User added") +#define str_add_melody _("Melody added") +#define str_del_user _("User deleted") +#define str_del_melody _("Melody deleted") class CmdArgParser : public Glib::OptionGroup { @@ -311,6 +315,8 @@ public: size_t size_kernel = 0; size_t size_IPT = 0; size_t size_OTT = 0; + size_t len_old_melody = 0; + size_t len_old_user = 0; Glib::RefPtr boxInfo; string str_cmd_error = ""; template diff --git a/ubl-settings-bootloader.pot b/ubl-settings-bootloader.pot index 8b7d4d4..51cc8f7 100644 --- a/ubl-settings-bootloader.pot +++ b/ubl-settings-bootloader.pot @@ -17,6 +17,17 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +msgid "Melody added" +msgstr "" + +msgid "User added" +msgstr "" + +msgid "Melody deleted" +msgstr "" + +msgid "User deleted" +msgstr "" msgid "Enter the name and code of the tune in the \"Ringtone at startup\" field" msgstr "" diff --git a/ubl-settings-bootloader_ru.po b/ubl-settings-bootloader_ru.po index 8431291..ba664af 100644 --- a/ubl-settings-bootloader_ru.po +++ b/ubl-settings-bootloader_ru.po @@ -367,6 +367,18 @@ msgstr "Введите имя и пароль в поле \"Пользовате msgid "Password" msgstr "Пароль" +msgid "Melody added" +msgstr "Мелодия добавлена" + +msgid "User added" +msgstr "Пользователь добавлен" + +msgid "Melody deleted" +msgstr "Мелодия удалена" + +msgid "User deleted" +msgstr "Пользователь удалён" + msgid "Administrator" msgstr "Администратор"