diff --git a/ubl-settings-datetime/README.md b/ubl-settings-datetime/README.md index 59f7e93..0bea150 100644 --- a/ubl-settings-datetime/README.md +++ b/ubl-settings-datetime/README.md @@ -5,7 +5,7 @@ 1. **ЭТАПЫ И СРОКИ СОЗДАНИЯ ПРИЛОЖЕНИЯ:** Общий срок работ по созданию приложения составляет N дней: - - N дня - макет и дизайн приложения и его утверждение + - N дня - макет и дизайн приложения и его утверждение - N дней - разработка приложения - N дня - тестирование приложения и исправление ошибок @@ -47,40 +47,40 @@ 1. Categories: X-UBL-SettingsManager;X-UBL-SystemSettings 1. Главное окно: 1. Требования к внешнему виду: - - Адаптивный (резиновый) дизайн. - - Минимальный размер окна до прекращения масштабирования 800 на 600 пикселей. - - Шапка в стиле приложений GTK3 с содержимым: - - Кнопка с выпадающим списком "Загрузить" -> ("Загрузить глобальную конфигурацию, Загрузить локальную конфигурацию") - - Заголовок окна, название приложения - - Кнопка с выпадающим списком "Сохранить" -> ("Сохранить глобальную конфигурацию, Сохранить локальную конфигурацию") - - Кнопка с иконкой с выпадающим списком -> "Справка, О приложении" - - Стандартные элементы окна, кнопки "Свернуть, Минимизировать/На весь экран, Закрыть" - - В верхней части крупный логотип утилиты, с права от него краткое описание утилиты. Фон заполнен изображением. - - Срока уведомления, представляющая собой полосу с инфографикой строки уведомлений. - - Рабочая область. + 1. Адаптивный (резиновый) дизайн. + 1. Минимальный размер окна до прекращения масштабирования 800 на 600 пикселей. + 1. Шапка в стиле приложений GTK3 с содержимым: + 1. Кнопка с выпадающим списком "Загрузить" -> ("Загрузить глобальную конфигурацию, Загрузить локальную конфигурацию") + 1. Заголовок окна, название приложения + 1. Кнопка с выпадающим списком "Сохранить" -> ("Сохранить глобальную конфигурацию, Сохранить локальную конфигурацию") + 1. Кнопка с иконкой с выпадающим списком -> "Справка, О приложении" + 1. Стандартные элементы окна, кнопки "Свернуть, Минимизировать/На весь экран, Закрыть" + 1. В верхней части крупный логотип утилиты, с права от него краткое описание утилиты. Фон заполнен изображением. + 1. Срока уведомления, представляющая собой полосу с инфографикой строки уведомлений. + 1. Рабочая область. 1. Требования к "Рабочей области". Выводятся группы настроек запуска: 1. Блок с заголовком "Текущие дата и время" - - лейбл "Время". - - счётчик от 00 до 23 (часы). - - лейбл ":" (разделитель). - - счётчик от 00 до 59 (минуты). - - лейбл "Дата". - - поле ввода. Ввод даты в формате ДД.ММ.ГГГГ - - кнопка с иконкой календаря. Вызов объекта датапикер (визуальное представление выбора даты). - - кнопка "Синхронизировать". Синхронизация выставленных даты и времени с часами и датой системы. Неактивно, если выбраны значения "По умолчанию, DHCP, Вручную" чекбокса в блоке "Синхронизация через NTP". - - кнопка "Синхронизировать аппаратное время". Синхронизация даты и времени с временем BIOS рабочей станции. + 1. лейбл "Время". + 1. счётчик от 00 до 23 (часы). + 1. лейбл ":" (разделитель). + 1. счётчик от 00 до 59 (минуты). + 1. лейбл "Дата". + 1. поле ввода. Ввод даты в формате ДД.ММ.ГГГГ + 1. кнопка с иконкой календаря. Вызов объекта датапикер (визуальное представление выбора даты). + 1. кнопка "Синхронизировать". Синхронизация выставленных даты и времени с часами и датой системы. Неактивно, если выбраны значения "По умолчанию, DHCP, Вручную" чекбокса в блоке "Синхронизация через NTP". + 1. кнопка "Синхронизировать аппаратное время". Синхронизация даты и времени с временем BIOS рабочей станции. 1. Блок с заголовком "Синхронизация через NTP" - - комбобокс с вариантами выбора сервера: "Остановлено, По умолчанию, DHCP, Вручную". При выборе "По умолчанию", второе поле для ввода вручную становится заблокированным для манипуляций - текст введённого поля серый. При выборе "По умолчанию" в конфигурационный файл передаются значения: "NTPSERVERS=default". - - поле ввода для ручного указания серверов. Неактивно, если выбраны значения "Отключено, Остановлено, По умолчанию, DHCP" комбобокса в блоке "Синхронизация через NTP". + 1. комбобокс с вариантами выбора сервера: "Остановлено, По умолчанию, DHCP, Вручную". При выборе "По умолчанию", второе поле для ввода вручную становится заблокированным для манипуляций - текст введённого поля серый. При выборе "По умолчанию" в конфигурационный файл передаются значения: "NTPSERVERS=default". + 1. поле ввода для ручного указания серверов. Неактивно, если выбраны значения "Отключено, Остановлено, По умолчанию, DHCP" комбобокса в блоке "Синхронизация через NTP". 1. Блок с заголовком "Часовой пояс". - - лейбл "Синхронизация аппаратного времени:" - - комбокс с вариантами "Локальное время, Время по UTC" - - вложенный блок с заголовком "Часовой пояс". - - блок с заголовком "Синхронизация через NTP" - - лейбл "Регион:". - - комбобокс. Локализованный перечень регионов. - - лейбл "Зона:". - - комбобокс. Перечень городов с поправкой на часовой пояс. Например, "(UTC +06) Омск". Перечень регионов, локализация стандартными средствами. + 1. лейбл "Синхронизация аппаратного времени:" + 1. комбокс с вариантами "Локальное время, Время по UTC" + 1. вложенный блок с заголовком "Часовой пояс". + 1. блок с заголовком "Синхронизация через NTP" + 1. лейбл "Регион:". + 1. комбобокс. Локализованный перечень регионов. + 1. лейбл "Зона:". + 1. комбобокс. Перечень городов с поправкой на часовой пояс. Например, "(UTC +06) Омск". Перечень регионов, локализация стандартными средствами. 1. **ОСОБЕННОСТИ** 1. При загрузке утилиты по умолчанию загружаются данные из локального конфигурационного файла (выполняются команды блоков "Чтение значений: из локального конфигурационного файла"). 1. Функции записи в локальный конфигурационный файл и чтения-записи в глобальный конфигурационный файл должны проходить процедуру повышения привилегий прав пользователя через polkit. @@ -90,60 +90,60 @@ - песочный, пиктограмма "Птичка", сообщения об удачных загрузках или сохранениях конфигураций системы. - красный, пиктограмма "Восклицательный знак", сообщения об ошибках при сохранении, загрузке параметров конфигурации, при ошибках в работе программы. 1. Окно с выводом информации о программе: - - Заголовок окна по локализованному названию утилиты - - Версия берётся из main.cpp глобальной переменной в исходника: UBAPP_VERSION - - Копирайты, порядок: - - Иконка приложения - - Название утилиты - - Версия программы - - Название утилиты, локализованное - - Ссылка "Домашняя страница проекта" на https://ublinux.ru/ - - Copyright (c) 2023 - UBSoft Software LLC + 1. Заголовок окна по локализованному названию утилиты + 1. Версия берётся из main.cpp глобальной переменной в исходника: UBAPP_VERSION + 1. Копирайты, порядок: + 1. Иконка приложения + 1. Название утилиты + 1. Версия программы + 1. Название утилиты, локализованное + 1. Ссылка "Домашняя страница проекта" на https://ublinux.ru/ + 1. Copyright (c) 2023 - UBSoft Software LLC 1. **КОМАНДЫ** 1. Текущие дата и время - - Чтение значения: - - через средства функции на языке Си - - Установить значение: - - счётчики часы и минуты: `date +%T -s "h:m:sec"` (кнопка "Синхронизировать") - - дата: `date +%Y%m%d -s "2000:06:14"` (кнопка "Синхронизировать") - - Синхронизировать аппаратное время: - - Установить значение: `hwclock --systohc` (кнопка "Синхронизировать аппаратное время") + 1. Чтение значения: + 1. через средства функции на языке Си + 1. Установить значение: + 1. счётчики часы и минуты: `date +%T -s "h:m:sec"` (кнопка "Синхронизировать") + 1. дата: `date +%Y%m%d -s "2000:06:14"` (кнопка "Синхронизировать") + 1. Синхронизировать аппаратное время: + 1. Установить значение: `hwclock --systohc` (кнопка "Синхронизировать аппаратное время") 1. Синхронизация через NTP - - Чтение значения: - - из локального конфигурационного файла: `/usr/bin/ubconfig --source system get network NTPSERVERS` - - из глобального конфигурационного файла: `/usr/bin/ubconfig --source global get network NTPSERVERS` - - Установить значение: - - "Остановлено" + 1. Чтение значения: + 1. из локального конфигурационного файла: `/usr/bin/ubconfig --source system get network NTPSERVERS` + 1. из глобального конфигурационного файла: `/usr/bin/ubconfig --source global get network NTPSERVERS` + 1. Установить значение: + 1. "Остановлено" в локальный конфигурационный файл: `/usr/bin/ubconfig --target system set network NTPSERVERS=stop` в глобальный конфигурационный файл: `/usr/bin/ubconfig --target global set network NTPSERVERS=stop` - - "По умолчанию" + 1. "По умолчанию" в локальный конфигурационный файл: `/usr/bin/ubconfig --target system set network NTPSERVERS=default` в глобальный конфигурационный файл: `/usr/bin/ubconfig --target global set network NTPSERVERS=default` - - "DHCP" + 1. "DHCP" в локальный конфигурационный файл: `/usr/bin/ubconfig --target system set network NTPSERVERS=dhcp` в глобальный конфигурационный файл: `/usr/bin/ubconfig --target global set network NTPSERVERS=dhcp` - - "Вручную" + 1. "Вручную" в локальный конфигурационный файл: `/usr/bin/ubconfig --target system set network NTPSERVERS=$VALUE` в глобальный конфигурационный файл: `/usr/bin/ubconfig --target global set network NTPSERVERS=$VALUE` где $VALUE - перечень серверов, полученных из поля в блоке "Синхронизация через NTP", разделённых "," или ";". - - Проверка запущенных процессов синхронизации (systemd-timesyncd, ntpd, chronyd) и остановка этих сервисов сервисов, осуществляется выполнением команды `/usr/bin/ubconfig remove network NTPSERVERS` при выборе опции "Остановлено" из выпадающего списка блока "Синхронизация через NTP" + 1. Проверка запущенных процессов синхронизации (systemd-timesyncd, ntpd, chronyd) и остановка этих сервисов сервисов, осуществляется выполнением команды `/usr/bin/ubconfig remove network NTPSERVERS` при выборе опции "Остановлено" из выпадающего списка блока "Синхронизация через NTP" 1. Часовой пояс - - Синхронизация аппаратного времени: - - Чтение значений: + 1. Синхронизация аппаратного времени: + 1. Чтение значений: - из локального конфигурационного файла: `/usr/bin/ubconfig --source system get clock HWCLOCK_SYNC` - из глобального конфигурационного файла: `/usr/bin/ubconfig --source global get clock HWCLOCK_SYNC` - - Установить значение: - - "Локальное время" + 1. Установить значение: + 1. "Локальное время" в локальный конфигурационный файл: `/usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=localtime` в глобальный конфигурационный файл: `/usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=localtime` - - "Время по UTC" + 1. "Время по UTC" в локальный конфигурационный файл: `/usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=utc` в глобальный конфигурационный файл: `/usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=utc` - - Комбобокс "Регион", "Зона": - - Чтение значений: + 1. Комбобокс "Регион", "Зона": + 1. Чтение значений: - из локального конфигурационного файла: `/usr/bin/ubconfig --source system get clock ZONE` - из глобального конфигурационного файла: `/usr/bin/ubconfig --source global get clock ZONE` - - Установить значение: + 1. Установить значение: - в локальный конфигурационный файл: `/usr/bin/ubconfig --target system set clock ZONE=$VALUE` - в глобальный конфигурационный файл: `/usr/bin/ubconfig --target global set clock ZONE=$VALUE` где $VALUE - сложение срок-значений из комбобокса "Регион" и "Зона" через символ "/", например "Asia/Omsk".