menu.h File Reference

Menu functions header. More...

#include <sys/types.h>

Include dependency graph for menu.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  menuPoint_t
 Struct for storing a menu point. More...

Defines

#define MENU_MAX_LEVEL   4
 Maximum level of menu depth.
#define MENU_MAX_MENU_ITEMS   255
 Maximum number of menu items on a level.

Typedefs

typedef menuPoint_t menuPoint_t

Functions

void MENU_init (menuPoint_t *rootMenu)
 Initialize menu system.
void MENU_showCurrentMenuItem ()
 Internally used function to print the actual menu item.
uint8_t MENU_getMenuSize (menuPoint_t *menu)
 Internally used function to count the size of a menu.
void MENU_handler (uint8_t buttonPressed)
 This function handles the events which comes from keyboard.

Variables

menuPoint_tcurrentMenu
uint8_t currentMenuNumber
 number of selected menu item
uint8_t currentMenuSize
 number of menu items in actual menu point
int8_t currentMenuLevel
menuPoint_tparentMenu [MENU_MAX_LEVEL]
uint8_t parentMenuNumber [MENU_MAX_LEVEL]


Detailed Description

Menu functions header.

Author:
Peter Ivanov

Definition in file menu.h.


Define Documentation

#define MENU_MAX_LEVEL   4

Maximum level of menu depth.

Definition at line 49 of file menu.h.

#define MENU_MAX_MENU_ITEMS   255

Maximum number of menu items on a level.

Definition at line 51 of file menu.h.


Typedef Documentation

typedef struct menuPoint_t menuPoint_t

Definition at line 21 of file menu.h.


Function Documentation

uint8_t MENU_getMenuSize ( menuPoint_t menu  ) 

Internally used function to count the size of a menu.

Author:
Peter Ivanov
Parameters:
menu Pointer to menu.
Returns:
Number of menu elements.

Definition at line 91 of file menu.c.

void MENU_handler ( uint8_t  buttonPressed  ) 

This function handles the events which comes from keyboard.

Before using this function, you should initialize the menu system.

See also:
MENU_init
Example:
while (1) 
{
    buttonHandler ();
    if (buttonPressed)
    {
        MENU_handler (buttonPressed);
    }
    // ...
}

Author:
Peter Ivanov
Parameters:
buttonPressed The buttons which are pressed meanwhile.

Definition at line 98 of file menu.c.

void MENU_init ( menuPoint_t rootMenu  ) 

Initialize menu system.

After this you should call MENU_handler periodically. Example:

menuPoint_t rootMenu[] = 
{
    //1234567   sub-menu        callback function
    {"NRFTEST", NULL,           rf24lTest},
    {"IR TEST", NULL,           irTest},
    {"SET CLK", setClockMenu,   NULL},
    {"SET ALM", setAlarmMenu,   NULL},
    {NULL,      NULL,           NULL}   // end of menu
};

int main ()
{
    // ...
    MENU_init (rootMenu);
}

Author:
Peter Ivanov
Parameters:
rootMenu Pointer to root menu.

Definition at line 30 of file menu.c.

void MENU_showCurrentMenuItem (  ) 

Internally used function to print the actual menu item.

Author:
Peter Ivanov

Definition at line 45 of file menu.c.


Variable Documentation

menuPoint_t* currentMenu

Definition at line 23 of file menu.c.

int8_t currentMenuLevel

Definition at line 26 of file menu.c.

uint8_t currentMenuNumber

number of selected menu item

Definition at line 24 of file menu.c.

uint8_t currentMenuSize

number of menu items in actual menu point

Definition at line 25 of file menu.c.

menuPoint_t* parentMenu[MENU_MAX_LEVEL]

Definition at line 27 of file menu.c.

uint8_t parentMenuNumber[MENU_MAX_LEVEL]

Definition at line 28 of file menu.c.


Generated on Thu Dec 27 14:21:52 2007 for Sample MSP430-449STK2 project by  doxygen 1.5.1