COSA
An Object-Oriented Platform for Arduino Programming
|
#include "Cosa/LCD.hh"
#include "Cosa/IOStream.hh"
#include <Rotary.h>
#include "Cosa/Button.hh"
#include "Cosa/Keypad.hh"
Go to the source code of this file.
Classes | |
class | Menu |
struct | Menu::item_t |
struct | Menu::item_list_t |
struct | Menu::one_of_t |
struct | Menu::bcd_range_t |
struct | Menu::int_range_t |
class | Menu::Action |
struct | Menu::action_t |
class | Menu::Walker |
class | Menu::KeypadController |
class | Menu::RotaryController |
Macros | |
#define | MENU_BEGIN(var, name) |
#define | MENU_ITEM(var) &var.item, |
#define | MENU_END(var) |
#define | MENU_SYMB(var, name) |
#define | MENU_ENUM_BEGIN(var) const Menu::item_P var ## _list[] __PROGMEM = { |
#define | MENU_ENUM_ITEM(var) &var, |
#define | MENU_ENUM_END(var) |
#define | MENU_ONE_OF(type, var, name, value) |
#define | MENU_ZERO_OR_MANY(type, var, name, value) |
#define | MENU_INT_RANGE(var, name, low, high, value) |
#define | MENU_ACTION(var, name, obj) |
Copyright (C) 2014-2015, Mikael Patel
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
This file is part of the Arduino Che Cosa project.
Copyright (C) 2013-2015, Mikael Patel
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
This file is part of the Arduino Che Cosa project.
Definition in file Menu.hh.
#define MENU_ACTION | ( | var, | |
name, | |||
obj | |||
) |
Support macro to define a menu action in program memory.
[in] | var | menu action item to create. |
[in] | name | string of menu item. |
[in] | obj | pointer to menu action handler. |
#define MENU_BEGIN | ( | var, | |
name | |||
) |
Support macro to start the definition of a menu in program memory. Used in the form: MENU_BEGIN(var,name) MENU_ITEM(item-1) ... MENU_ITEM(item-n) MENU_END(var)
[in] | var | menu to create. |
[in] | name | string for menu. |
#define MENU_END | ( | var | ) |
Support macro to complete a menu in program memory.
[in] | var | menu to create. |
#define MENU_ENUM_BEGIN | ( | var | ) | const Menu::item_P var ## _list[] __PROGMEM = { |
Support macro to start the definition of an enumeration type in program memory. Used in the form: MENU_SYMB(symb-1) ... MENU_SYMB(symb-n) MENU_ENUM_BEGIN(var,name) MENU_ENUM_ITEM(symb-1) ... MENU_ENUM_ITEM(symb-n) MENU_ENUM_END(var)
[in] | var | menu enumeration variable to create. |
#define MENU_ENUM_END | ( | var | ) |
#define MENU_ENUM_ITEM | ( | var | ) | &var, |
#define MENU_INT_RANGE | ( | var, | |
name, | |||
low, | |||
high, | |||
value | |||
) |
Support macro to define a menu integer range in program memory.
[in] | var | menu range item to create. |
[in] | name | string of menu item. |
[in] | low | range value. |
[in] | high | range value. |
[in] | value | variable name. |
#define MENU_ITEM | ( | var | ) | &var.item, |
#define MENU_ONE_OF | ( | type, | |
var, | |||
name, | |||
value | |||
) |
Support macro to define a menu one-of variable.
[in] | type | enumeration list. |
[in] | var | menu one-of variable to create. |
[in] | name | string for menu one-of variable. |
[in] | value | variable with runtime value. |
#define MENU_SYMB | ( | var, | |
name | |||
) |
Support macro to define a menu symbol in program memory.
[in] | var | menu symbol to create. |
[in] | name | string for menu symbol. |
#define MENU_ZERO_OR_MANY | ( | type, | |
var, | |||
name, | |||
value | |||
) |
Support macro to define a menu zero-or-many variable.
[in] | type | enumeration list. |
[in] | var | menu zero-or-many variable to create. |
[in] | name | string for menu zero-or-many variable. |
[in] | value | variable with runtime value. |