1234567891011121314151617181920212223242526272829 |
- /**
- * @file
- * @author Marek Bel
- */
- #include "MenuStack.h"
- /**
- * @brief Push menu on stack
- * @param menu
- * @param position selected position in menu being pushed
- */
- void MenuStack::push(menuFunc_t menu, uint8_t position)
- {
- if (m_index >= max_depth) return;
- m_stack[m_index].menu = menu;
- m_stack[m_index].position = position;
- ++m_index;
- }
- /**
- * @brief Pop menu from stack
- * @return Record containing menu function pointer and previously selected line number
- */
- MenuStack::Record MenuStack::pop()
- {
- if (m_index != 0) m_index--;
- return m_stack[m_index];
- }
|