Класс LiquidSystem из Arduino библиотеки LiquidMenu для создания меню на LCD дисплее
Данный класс представляет собой коллекцию меню, формирующих систему меню.
#include <LiquidMenu.h>
Система меню состоит из объектов LiquidMenu. Он содержит указатели на них и вызывает их функции в зависимости от того, какое из них активен. Данный класс используется для управления. Данный класс использует такие же публичные методы, как и LiquidMenu, к которым добавлены метод для добавления объекта LiquidMenu и метод для изменения текущего активного меню. Данный класс является опциональным и используется, только если есть необходимость в нескольких меню.
Содержание
Конструкторы
LiquidSystem()-
Основной конструктор. Это главный конструктор, который вызывается каждый раз.
Синтаксис
LiquidSystem::LiquidSystem(uint8_t startingMenu = 1)Параметры
startingMenu– номер меню, которое будет показано первым.
LiquidSystem()-
Конструктор с двумя объектами
LiquidMenu.Синтаксис
LiquidSystem::LiquidSystem(LiquidMenu & liquidMenu1, LiquidMenu & liquidMenu2, uint8_t startingMenu = 1 )Параметры
&liquidMenu1– указатель на объектLiquidMenu;&liquidMenu2– указатель на объектLiquidMenu;startingMenu– номер меню, которое будет показано первым.
LiquidSystem()-
Конструктор с тремя объектами
LiquidMenu.Синтаксис
LiquidSystem::LiquidSystem(LiquidMenu & liquidMenu1, LiquidMenu & liquidMenu2, LiquidMenu & liquidMenu3, uint8_t startingMenu = 1 )Параметры
&liquidMenu1– указатель на объектLiquidMenu;&liquidMenu2– указатель на объектLiquidMenu;&liquidMenu3– указатель на объектLiquidMenu;startingMenu– номер меню, которое будет показано первым.
LiquidSystem()-
Конструктор с четырьмя объектами
LiquidMenu.Синтаксис
LiquidSystem::LiquidSystem(LiquidMenu & liquidMenu1, LiquidMenu & liquidMenu2, LiquidMenu & liquidMenu3, LiquidMenu & liquidMenu4, uint8_t startingMenu = 1 )Параметры
&liquidMenu1– указатель на объектLiquidMenu;&liquidMenu2– указатель на объектLiquidMenu;&liquidMenu3– указатель на объектLiquidMenu;&liquidMenu4– указатель на объектLiquidMenu;startingMenu– номер меню, которое будет показано первым.
Публичные методы
add_menu()-
Добавляет объект
LiquidMenuв систему меню.Синтаксис
bool LiquidSystem::add_menu(LiquidMenu & liquidMenu)Параметры
&liquidMenu– указатель на объектLiquidMenu.Возвращает
trueв случае успеха иfalse, если максимальное количество меню уже было достигнуто.Примечание
Максимальное количество меню в системе меню указывается в LiquidMenu_config.h как
MAX_MENUS. По умолчанию равно 12. call_function()-
Вызывает прикрепленную функцию, указанную номером.
Вызывает функцию, указанную аргументом
numberдля текущего экрана и для выделенной строки.Синтаксис
bool LiquidSystem::call_function(uint8_t number) constПараметры
number– номер функции в массиве.
Возвращает
true, если функция с указанным номером существует.Примечание
Нумерация функций начинается с 1.
change_menu()-
Переключает на указанное меню.
Синтаксис
bool LiquidSystem::change_menu(LiquidMenu & p_liquidMenu)Параметры
&p_liquidMenu– указатель на объектLiquidMenu.
Возвращает
trueв случае успеха иfalse, если меню не найдено. change_screen()-
Переключает на указанный экран.
Синтаксис
bool LiquidSystem::change_screen(LiquidScreen & p_liquidScreen) bool LiquidSystem::change_screen(uint8_t number)Параметры
&p_liquidScreen– указатель на объектLiquidScreen;number– номер экрана.
Возвращает
trueв случае успеха иfalse, если экран не найден, или номер экрана неправильный. next_screen()-
Переключает на следующий экран.
Синтаксис
void LiquidSystem::next_screen() operator++()-
Переключает на следующий экран.
Синтаксис
void LiquidSystem::operator++()Примечание
Оператор префиксного инкремента перезагружен.
operator++()-
Переключает на следующий экран.
Синтаксис
void LiquidSystem::operator++(int)Примечание
Оператор постфиксного инкремента перезагружен.
operator--()-
Переключает на предыдущий экран.
Синтаксис
void LiquidSystem::operator--()Примечание
Оператор префиксного декремента перезагружен.
operator--()-
Переключает на предыдущий экран.
Синтаксис
void LiquidSystem::operator--(int)Примечание
Оператор постфиксного декремента перезагружен.
operator=()-
Переключает на указанный экран.
Синтаксис
bool LiquidSystem::operator=(LiquidScreen & p_liquidScreen) bool LiquidSystem::operator=(uint8_t number)Параметры
&p_liquidScreen– указатель на объектLiquidScreen;number– номер экрана.
Возвращает
trueв случае успеха иfalse, если экран не найден, или номер экрана неправильный. previous_screen()-
Переключает на предыдущий экран.
Синтаксис
void LiquidSystem::previous_screen() set_focusPosition()-
Устанавливает позицию фокуса для всего меню за раз.
Допустимые значения –
LEFTиRIGHT. ПозицияCUSTOMявляется не допустимой для данной функции, поскольку ей необходимо индивидуальное указание строки и столбца для каждой строки.Синтаксис
bool LiquidSystem::set_focusPosition(Position position)Параметры
position–LEFTилиRIGHT.
Возвращает
trueв случае успеха иfalse, если позиция указана неправильно.Примечание
Position– это класс перечисления. При указании позиции используйтеPosition::(член класса). set_focusSymbol()-
Изменяет символ индикатора фокуса.
Символ изменяется для конкретной позиции.
Синтаксис
bool LiquidSystem::set_focusSymbol(Position position, uint8_t symbol[8] )Параметры
position– позиция, для которой должен быть изменен символ;symbol[]– символ.
Возвращает
trueв случае успеха иfalse, если позиция указана неправильно.Примечание
Position– это класс перечисления. При указании позиции используйтеPosition::(член класса). softUpdate()-
Отпечатывает текущий экран на дисплее (без очистки).
Вызывайте данный метод, когда изменение в какой-либо прикрепленной переменной или новые символы полностью покрывают старые символы.
Синтаксис
void LiquidSystem::softUpdate() constПримечание
Данный метод не очищает дисплей.
switch_focus()-
Переключает фокус.
Переключает фоку к следующей или предыдущей строке в соответствии с переданным параметром.
Синтаксис
void LiquidSystem::switch_focus(bool forward = true)Параметры
forward–trueдля движения вперед,falseдля движения назад. update()-
Отпечатывает текущий экран на дисплее.
Вызывайте данный метод при изменении какой-либо прикрепленной переменной.
Синтаксис
void LiquidSystem::update() const
