ТЕХНИЧЕСКОЕ ЗАДАНИЕ на разработку утилиты **ubl-settings-bootloader**
1. **ОПИСАНИЕ:**
Графическое средство настройки загрузчика ОС UBLinux
1. **ЭТАПЫ И СРОКИ СОЗДАНИЯ ПРИЛОЖЕНИЯ:**
Общий срок работ по созданию приложения составляет N дней:
- N дня - макет и дизайн приложения и его утверждение
- N дней - разработка приложения
- N дня - тестирование приложения и исправление ошибок
Перечень этапов разработки приложения:
- Разработка макета и дизайна приложения, самостоятельно
- Утверждение и доработка макета, самостоятельно
- Создание работающего интерфейса, включая полную разработку действующих ярлыков, кнопок и т.д., самостоятельно
- Проектирование алгоритма работы приложения, самостоятельно
- Написание работающего кода приложения, включая полноценно работающие элементы графического интерфейса, а также перевод (поддержка локализации En, Ru), самостоятельно
- Тестирование и исправление ошибок, самостоятельно
- Публикация
1. **ТЕХНОЛОГИЧЕСКИЕ ТРЕБОВАНИЯ:**
1. Приложение разрабатывается под нужды операционной системы UBLinux
1. Использование фирменного логотипа компании
1. Название приложения, техническое: **ubl-settings-bootloader**
1. Название приложения, публичное: **UBConfig - Загрузчик**
1. Стек технологий:
- Язык программирования: Bash или C++
- Приложение для разработки графического интерфейса: Glade 3
ТЕХНИЧЕСКОЕ ЗАДАНИЕ на разработку утилиты **ubl-settings-datetime**
ТЕХНИЧЕСКОЕ ЗАДАНИЕ на разработку утилиты **ubl-settings-datetime**
1. **ОПИСАНИЕ:**
1. **ОПИСАНИЕ:**
@ -23,7 +22,7 @@
1. Приложение разрабатывается под нужды операционной системы UBLinux
1. Приложение разрабатывается под нужды операционной системы UBLinux
1. Использование фирменного логотипа компании
1. Использование фирменного логотипа компании
1. Название приложения, техническое: **ubl-settings-datetime**
1. Название приложения, техническое: **ubl-settings-datetime**
1. Название приложения, публичное: **UBConfig - Дата и время**
1. Название приложения, публичное: **Дата и время**
1. Стек технологий:
1. Стек технологий:
- Язык программирования: Bash или C++
- Язык программирования: Bash или C++
- Приложение для разработки графического интерфейса: Glade 3
- Приложение для разработки графического интерфейса: Glade 3
@ -50,45 +49,68 @@
1. Требования к внешнему виду:
1. Требования к внешнему виду:
- Адаптивный (резиновый) дизайн.
- Адаптивный (резиновый) дизайн.
- Минимальный размер окна до прекращения масштабирования 800 на 600 пикселей.
- Минимальный размер окна до прекращения масштабирования 800 на 600 пикселей.
- Шапка в стиле приложений GTK3.
- Шапка в стиле приложений GTK3 с содержимым:
- Кнопка с выпадающим списком "Загрузить" -> ("Загрузить глобально")
- Заголовок окна, название приложения
- Кнопка с выпадающим списком "Сохранить" -> ("Сохранить глобально, Сохранить локально")
- Кнопка с иконкой с выпадающим списком -> "Справка, О приложении"
- Стандартные элементы окна, кнопки "Свернуть, Минимизировать/На весь экран, Закрыть"
- В верхней части крупный логотип утилиты, с права от него краткое описание утилиты. Фон заполнен изображением.
- В верхней части крупный логотип утилиты, с права от него краткое описание утилиты. Фон заполнен изображением.
- Рабочая область делится на два блока, которые обрамлены рамками с заголовками: «Локальная настройка», «Глобальная настройка».
- Срока уведомления, представляющая собой полосу с инфографикой и элементом для закрытия/скрытия строки уведомлений.
1. Требования к «Рабочей области». Выводятся группы настроек запуска:
- Рабочая область.
1. Локальная настройка
1. Требования к "Рабочей области". Выводятся группы настроек запуска:
1. Блок с заголовком "Текущие дата и время"
- лейбл "Время".
- лейбл "Время".
- счётчик от 00 до 23 (часы).
- счётчик от 00 до 23 (часы).
- лейбл «:» (разделитель).
- лейбл ":" (разделитель).
- счётчик от 00 до 59 (минуты).
- счётчик от 00 до 59 (минуты).
- лейбл «Дата».
- лейбл "Дата".
- поле ввода. Ввод даты в формате ДД.ММ.ГГГГ
- поле ввода. Ввод даты в формате ДД.ММ.ГГГГ
- кнопка с иконкой календаря. Вызов объекта датапикер (визуальное представление выбора даты).
- кнопка с иконкой календаря. Вызов объекта датапикер (визуальное представление выбора даты).
- кнопка «Синхронизировать». Синхронизация выставленных даты и времени с часами и датой системы.
- кнопка "Синхронизировать". Синхронизация выставленных даты и времени с часами и датой системы. Неактивно, если выбраны значения "По умолчанию, DHCP, Вручную" чекбокса в блоке "Синхронизация через NTP".
- кнопка «Синхронизировать аппаратное время». Синхронизация даты и времени с временем BIOS рабочей станции.
- кнопка "Синхронизировать аппаратное время". Синхронизация даты и времени с временем BIOS рабочей станции.
- вложенный блок с заголовком «Часовой пояс».
1. Блок с заголовком "Синхронизация через NTP"
- лейбл «Регион:».
- комбобокс с вариантами выбора сервера: "Остановлено, По умолчанию, DHCP, Вручную". При выборе "По умолчанию", второе поле для ввода вручную становится заблокированным для манипуляций - текст введённого поля серый. Содержание поля - ответ полученный на запрос "ubconfig --source=default get NTPSERVERS\_DEFAULT". При выборе "По умолчанию» в конфиг файл передаются значения: "NTPSERVERS=default".
- поле ввода для ручного указания серверов. Неактивно, если выбраны значения "Отключено, Остановлено, По умолчанию, DHCP" комбобокса в блоке "Синхронизация через NTP".
- лейбл «Зона:».
1. Блок с заголовком "Часовой пояс".
- комбобокс. Перечень городов с поправкой на часовой пояс. Например, «(UTC +06) Омск». Перечень регионов, локализация стандартными средствами.
- лейбл "Синхронизация аппаратного времени:"
1. Глобальная настройка
- комбокс с вариантами "Локальное время, Время по UTC"
- чекбокс "Синхронизоравать через NTP"
- вложенный блок с заголовком "Часовой пояс".
- комбобокс с вариантами выбора сервера: «По умолчанию, DHCP, Вручную». При выборе «По умолчанию», второе поле для ввода вручную становится заблокированным для манипуляций - текст введённого поля серый. Содержание поля - ответ полученный на запрос «ubconfig --source=default get NTPSERVERS\_DEFAULT». При выборе «По умолчанию» в конфиг файл передаются значения: «NTPSERVERS=default». Неактивно, если не включен чекбокс "Синхронизоравать через NTP".
- блок с заголовком "Синхронизация через NTP"
- поле ввода для ручного указания серверов. Неактивно, если не включен чекбокс "Синхронизоравать через NTP", выбрана опция «По умолчанию» в комбобоксе с вариантами выбора сервера.
- комбобокс. Перечень городов с поправкой на часовой пояс. Например, "(UTC +06) Омск". Перечень регионов, локализация стандартными средствами.
- лейбл «Зона:».
1. **ОСОБЕННОСТИ**
- комбобокс. Перечень городов с поправкой на часовой пояс. Например, «(UTC +06) Омск». Перечень регионов, локализация стандартными средствами.
1. Кнопка с выпадающим списком "Загрузить" -> ("Загрузить глобально"). При нажатии на кнопку происходит загрузка текущей конфигурации в системе через скрипт ubconfig (команда get local). При выборе подпункта - загрузка конфигурации из файла настроек ОС ublinux.ini (команда get global).
1. Кнопка с выпадающим списком "Сохранить" -> ("Сохранить глобально, Сохранить локально"). При нажатии сохраняет текущие настройки через скрипт ubconfig (команда set local) и в конфигурационный файл настроек ОС ublinux.ini (команда set global). При выборе подпунктов "Сохранить глобально, Сохранить локально" происходит отдельное сохранение настроек.
1. Строка уведомлений. Цвет в зависимости от сигнала:
- зелёный, пиктограмма "Птичка", сообщения об удачных загрузках или сохранениях конфигураций системы.
- жёлтый, пиктограмма "Восклицательный знак", сообщения о несохранённых изменениях.
- красный, пиктограмма "Крест", сообщения об ошибках при сохранении, загрузке параметров конфигурации, при ошибках в работе программы.
1. Окно с выводом информации о программе:
- Заголовок окна по локализованному названию утилиты
- Версия берётся из main.cpp глобальной переменной в исходника: UBAPP_VERSION
- Копирайты, порядок:
- Иконка приложения
- Название утилиты
- Версия программы
- Название утилиты локализованное
- Ссылка "Домашняя страница проекта" на https://ublinux.ru/