/
pi_coder
/
ByteMachine
Обзор
Документация
Войти
/
pi_coder
/
ByteMachine
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/languages.h
61 строка
2 KB
pimenov-and
Перенос функциональности из старого проекта, в основном это описания узлов
19 июл 2026, 20:13
19 июл 2026, 20:13
cb3c51b
Код
Авторство
О чём код?
//////////////////////////////////////////////////////////////// // ByteMachine // Поддерживаемые языки интерфейса //////////////////////////////////////////////////////////////// #ifndef LANGUAGES_H #define LANGUAGES_H //============================================================== #include <QString> #include <QMetaType> #include <array> //============================================================== // Языки интерфейса //============================================================== enum class Languages { Unknown = -1, English, Russian }; //============================================================== Q_DECLARE_METATYPE(Languages) //============================================================== // Прототипы функций //============================================================== // Конвертация языка в строку [[nodiscard]] QString languageToStr(Languages lang); // Конвертация строки в язык [[nodiscard]] Languages strToLanguage(const QString &str); // Перевод языка в число [[nodiscard]] constexpr inline int languageToInt(Languages lang) noexcept { return static_cast<int>(lang); } // Перевод числа в язык [[nodiscard]] Languages intToLanguage(int value) noexcept; // Получение признака Languages::Unknown [[nodiscard]] constexpr inline bool isUnknown(Languages lang) noexcept { return lang == Languages::Unknown; } // Получение признака Languages::English [[nodiscard]] constexpr inline bool isEnglish(Languages lang) noexcept { return lang == Languages::English; } // Получение признака Languages::Russian [[nodiscard]] constexpr inline bool isRussian(Languages lang) noexcept { return lang == Languages::Russian; } // Получение языков интерфейса [[nodiscard]] std::array<Languages, 3> languageValues(); // Проверка корректности языка [[nodiscard]] bool isCorrect(Languages lang); // Получение количества состояний перечисления [[nodiscard]] constexpr qint32 getLanguageCount() noexcept { return 3; } //============================================================== #endif // LANGUAGES_H