fix readme in project ubl-settings-datetime

pull/18/head
MiraMaX166 3 years ago
parent 0fd7e257fc
commit c0e72ba944
Signed by: user-166
GPG Key ID: C58520EF14C48E3A

@ -1,7 +1,8 @@
ТЕХНИЧЕСКОЕ ЗАДАНИЕ на разработку утилиты **ubl-settings-datetime** ТЕХНИЧЕСКОЕ ЗАДАНИЕ на разработку утилиты **ubl-settings-datetime**
1. **ОПИСАНИЕ:** 1. **ОПИСАНИЕ:**
Графическое средство настройки даты и времени в ОС UBLinux
Графическое средство настройки даты и времени в ОС UBLinux
1. **ЭТАПЫ И СРОКИ СОЗДАНИЯ ПРИЛОЖЕНИЯ:** 1. **ЭТАПЫ И СРОКИ СОЗДАНИЯ ПРИЛОЖЕНИЯ:**
1. Общий срок работ по созданию приложения составляет N дней: 1. Общий срок работ по созданию приложения составляет N дней:
@ -9,10 +10,10 @@
1. N дней - разработка приложения 1. N дней - разработка приложения
1. N дня - тестирование приложения и исправление ошибок 1. N дня - тестирование приложения и исправление ошибок
1. Перечень этапов разработки приложения: 1. Перечень этапов разработки приложения:
1. Разработка макета и дизайна приложения, самостоятельно 1. Разработка макета и дизайна приложения
1. Утверждение и доработка макета, самостоятельно 1. Утверждение и доработка макета
1. Создание работающего интерфейса, включая полную разработку действующих ярлыков, кнопок и т.д., самостоятельно 1. Создание работающего интерфейса, включая полную разработку действующих ярлыков, кнопок и т.д.
1. Проектирование алгоритма работы приложения, самостоятельно 1. Проектирование алгоритма работы приложения
1. Написание работающего кода приложения, включая полноценно работающие элементы графического интерфейса, а также перевод (поддержка локализации En, Ru), самостоятельно 1. Написание работающего кода приложения, включая полноценно работающие элементы графического интерфейса, а также перевод (поддержка локализации En, Ru), самостоятельно
1. Тестирование и исправление ошибок, самостоятельно 1. Тестирование и исправление ошибок, самостоятельно
1. Публикация 1. Публикация
@ -23,21 +24,24 @@
1. Название приложения, техническое: **ubl-settings-datetime** 1. Название приложения, техническое: **ubl-settings-datetime**
1. Название приложения, публичное: **Дата и время** 1. Название приложения, публичное: **Дата и время**
1. Стек технологий: 1. Стек технологий:
1. Язык программирования: Bash или C++ 1. Язык программирования: Bash или C(++)
1. Приложение для разработки графического интерфейса: Glade 3 1. Приложение для разработки графического интерфейса: Glade 3
1. Графические библиотеки: GTK3 1. Графические библиотеки: GTK3
1. Операционная система разработки: UBLinux DB 1. Операционная система разработки: UBLinux DB
1. Структура: 1. Структура:
1. **/usr/bin/ubl-settings-datetime (скомпилированный бинарный файл)** 1. Bash/C(++): Весь функционал сосредоточен в графической части, вызовы и исполнение процедур написаны на языках Bash, C(++)
Bash/C: Весь функционал сосредоточен в графической части, вызовы и исполнение процедур написаны на языках Bash, C++ **/usr/bin/ubl-settings-datetime (скомпилированный бинарный файл)**
1. Файл **glade** скомпилирован в бинарный файл 1. Графическая часть, фронт
Графическая часть, фронт Файл **glade** скомпилирован в бинарный файл
1. Файл **css** скомпилирован в бинарный файл 1. Стили виджетов GTK
Стили виджетов GTK Файл **css** скомпилирован в бинарный файл
1. **/usr/share/ubl-settings-datetime/images/{\*.png,\*.svg}** 1. Элементы изображений
Элементы изображений **/usr/share/ubl-settings-datetime/images/{\*.png,\*.svg}**
1. **/usr/share/ubl-settings-datetime/locale -> /usr/share/locale** 1. Локализация En/Ru
Локализация En/Ru Для локализации должен быть создан файл-шаблон ***name_programm.pot***, на его основе должны быть созданы сами ***po-файлы*** переводов на необходимые языки, через файл сборки из po-файлов компилируются ***mo-файлы*** и размещаются сценарием установки по указанному пути:
**/usr/share/locale/\${LANG}/LC_MESSAGES/${FILE_MO}**
где ${LANG} - каталог с именем локали, например, "ru" или "ru_RU",
${FILE_MO} - файл локализации программы, например, "name_programm.mo"
1. **ТЕХНИЧЕСКОЕ ЗАДАНИЕ:** 1. **ТЕХНИЧЕСКОЕ ЗАДАНИЕ:**
1. Ярлык (desktop-файл): 1. Ярлык (desktop-файл):
@ -55,7 +59,7 @@
1. Иконка приложения. Статический элемент. Выравнивание по левому краю. 1. Иконка приложения. Статический элемент. Выравнивание по левому краю.
1. Кнопка с выпадающим списком "Загрузить" -> ("Загрузить глобальную конфигурацию, Загрузить локальную конфигурацию"). Статический элемент. Выравнивание по левому краю. 1. Кнопка с выпадающим списком "Загрузить" -> ("Загрузить глобальную конфигурацию, Загрузить локальную конфигурацию"). Статический элемент. Выравнивание по левому краю.
1. Заголовок окна, название приложения. Выравнивание по центру между элементами. 1. Заголовок окна, название приложения. Выравнивание по центру между элементами.
1. Кнопка с выпадающим списком "Сохранить" -> ("Сохранить глобальную конфигурацию, Сохранить локальную конфигурацию"). Статический элемент. Выравнивание по правому краю. 1. Кнопка с выпадающим списком "Сохранить" -> ("Сохранить глобальную и локальную конфигурацию, Сохранить глобальную конфигурацию, Сохранить локальную конфигурацию"). Статический элемент. Выравнивание по правому краю.
1. Кнопка с иконкой с выпадающим списком -> "Справка, О приложении". Статический элемент. Выравнивание по правому краю. 1. Кнопка с иконкой с выпадающим списком -> "Справка, О приложении". Статический элемент. Выравнивание по правому краю.
1. Стандартные элементы окна, кнопки "Свернуть, Минимизировать/На весь экран, Закрыть" 1. Стандартные элементы окна, кнопки "Свернуть, Минимизировать/На весь экран, Закрыть"
1. В верхней части крупный логотип утилиты, с права от него краткое описание утилиты. Фон заполнен изображением. Статические элементы. Выравнивание по левому краю. 1. В верхней части крупный логотип утилиты, с права от него краткое описание утилиты. Фон заполнен изображением. Статические элементы. Выравнивание по левому краю.
@ -82,28 +86,32 @@
1. комбобокс. Локализованный перечень регионов. Динамический элемент. Выравнивание по левому краю. Делит пространство с соседними элементами. 1. комбобокс. Локализованный перечень регионов. Динамический элемент. Выравнивание по левому краю. Делит пространство с соседними элементами.
1. лейбл "Зона:". Статический элемент. Выравнивание по левому краю. 1. лейбл "Зона:". Статический элемент. Выравнивание по левому краю.
1. комбобокс. Перечень городов с поправкой на часовой пояс. Например, "(UTC +06) Омск". Перечень регионов, локализация стандартными средствами. Динамический элемент. Выравнивание по левому краю. Делит пространство с соседними элементами. 1. комбобокс. Перечень городов с поправкой на часовой пояс. Например, "(UTC +06) Омск". Перечень регионов, локализация стандартными средствами. Динамический элемент. Выравнивание по левому краю. Делит пространство с соседними элементами.
1. **ОСОБЕННОСТИ** 1. **ОСОБЕННОСТИ**
1. При загрузке утилиты по умолчанию загружаются данные из локального конфигурационного файла (выполняются команды блоков "Чтение значений: из локального конфигурационного файла"). 1. При загрузке утилиты по умолчанию загружаются данные из локального конфигурационного файла (выполняются команды блоков "Чтение значений: из локального конфигурационного файла").
1. Функции записи в локальный конфигурационный файл и чтения-записи в глобальный конфигурационный файл должны проходить процедуру повышения привилегий прав пользователя через polkit. 1. Функции записи в локальный конфигурационный файл и чтения-записи в глобальный конфигурационный файл должны проходить процедуру повышения привилегий прав пользователя через polkit.
1. Кнопка "Загрузить" -> ("Загрузить глобальную конфигурацию, Загрузить локальную конфигурацию"). При нажатии на кнопку происходит открытие меню с пунктами: "Загрузить глобальную конфигурацию, Загрузить локальную конфигурацию". Загрузка текущей и глобальной конфигурации в системе через скрипт ubconfig (выполняются команды блоков "Чтение значений: из локального конфигурационного файла"), загрузка конфигурации из файла настроек ОС ublinux.ini (выполняются команды блоков "Чтение значений: из глобального конфигурационного файла"). 1. Кнопка "Загрузить" -> ("Загрузить глобальную конфигурацию, Загрузить локальную конфигурацию"). При нажатии на кнопку происходит открытие меню с пунктами: "Загрузить глобальную конфигурацию, Загрузить локальную конфигурацию". Загрузка текущей и глобальной конфигурации в системе через скрипт ubconfig (выполняются команды блоков "Чтение значений: из локального конфигурационного файла"), загрузка конфигурации из файла настроек ОС ublinux.ini (выполняются команды блоков "Чтение значений: из глобального конфигурационного файла").
1. Кнопка "Сохранить" -> ("Cохранить конфигурацию, Сохранить в глобальную конфигурацию, Сохранить в локальную конфигурацию"). Сохраняет текущие настройки через скрипт ubconfig (выполняются команды блоков "Установить значение: в локальный конфигурационный файл") и в конфигурационный файл настроек ОС ublinux.ini (выполняются команды блоков "Установить значение: в глобальный конфигурационный файл"). При выборе пунктов "Сохранить в глобальную конфигурацию, Сохранить в локальную конфигурацию" происходит отдельное сохранение настроек. 1. Кнопка "Сохранить" -> ("Сохранить глобальную и локальную конфигурацию). Сохраняет текущие настройки через скрипт ubconfig (выполняются команды блоков "Установить значение: в локальный конфигурационный файл") и в конфигурационный файл настроек ОС ublinux.ini (выполняются команды блоков "Установить значение: в глобальный конфигурационный файл"). При выборе пунктов "Сохранить глобальную конфигурацию, Сохранить локальную конфигурацию" происходит отдельное сохранение настроек.
1. Обработчик ошибок. Встроенный небольшой обработчик кодов внутренних ошибок, который должен передавать статус возникшей ошибки в строку уведомления. Например: "Невозможно прочитать значение параметра XXXXXX!"
1. Строка уведомлений. Цвет в зависимости от сигнала: 1. Строка уведомлений. Цвет в зависимости от сигнала:
- песочный, пиктограмма "Птичка", сообщения об удачных загрузках или сохранениях конфигураций системы. - песочный, пиктограмма "Птичка", сообщения об удачных загрузках или сохранениях конфигураций системы.
- красный, пиктограмма "Восклицательный знак", сообщения об ошибках при сохранении, загрузке параметров конфигурации, при ошибках в работе программы. - красный, пиктограмма "Восклицательный знак", сообщения об ошибках при сохранении, загрузке параметров конфигурации, при ошибках в работе программы, полученных от обработчика ошибок.
1. Окно с выводом информации о программе: 1. Окно с выводом информации о программе:
1. Заголовок окна по локализованному названию утилиты 1. Заголовок окна по локализованному названию утилиты
1. Версия берётся из main.cpp глобальной переменной в исходника: UBAPP_VERSION
1. Копирайты, порядок: 1. Копирайты, порядок:
1. Иконка приложения 1. Иконка приложения
1. Название утилиты 1. Название утилиты
1. Версия программы 1. Версия программы
1. Название утилиты, локализованное 1. Название утилиты, локализованное
1. Ссылка "Домашняя страница проекта" на https://ublinux.ru/ 1. Ссылка "Домашняя страница проекта" на https://ublinux.ru/
1. Copyright (c) 2023 - UBSoft Software LLC 1. Авторские права © ООО "Юбисофт", 2022 - $LASTYEAR
- локализованный (en_EN) вариант: "Copyright © UBSoft LLC, 2022 - $LASTYEAR"
- где $LASTYEAR - текущий год.
1. **КОМАНДЫ** 1. **КОМАНДЫ**
1. Текущие дата и время 1. Текущие дата и время
1. Чтение значения: 1. Чтение значения:
1. через средства функции на языке Си 1. через средства функции на языке С(++)
1. Установить значение: 1. Установить значение:
1. счётчики часы и минуты: `date +%T -s "h:m:sec"` (кнопка "Синхронизировать") 1. счётчики часы и минуты: `date +%T -s "h:m:sec"` (кнопка "Синхронизировать")
1. дата: `date +%Y%m%d -s "2000:06:14"` (кнопка "Синхронизировать") 1. дата: `date +%Y%m%d -s "2000:06:14"` (кнопка "Синхронизировать")
@ -148,6 +156,7 @@
- в локальный конфигурационный файл: `/usr/bin/ubconfig --target system set clock ZONE=$VALUE` - в локальный конфигурационный файл: `/usr/bin/ubconfig --target system set clock ZONE=$VALUE`
- в глобальный конфигурационный файл: `/usr/bin/ubconfig --target global set clock ZONE=$VALUE` - в глобальный конфигурационный файл: `/usr/bin/ubconfig --target global set clock ZONE=$VALUE`
где $VALUE - сложение срок-значений из комбобокса "Регион" и "Зона" через символ "/", например "Asia/Omsk". где $VALUE - сложение срок-значений из комбобокса "Регион" и "Зона" через символ "/", например "Asia/Omsk".
1. **ПРИБЛИЗИТЕЛЬНЫЙ МАКЕТ ПРИЛОЖЕНИЯ.** 1. **ПРИБЛИЗИТЕЛЬНЫЙ МАКЕТ ПРИЛОЖЕНИЯ.**
1. Главное окно 1. Главное окно

Loading…
Cancel
Save