Skip to content

File syn_menu.c

FileList > src > syntropic > ui > syn_menu.c

Go to the source code of this file

Menu system implementation.

  • #include "../util/syn_assert.h"
  • #include "syn_menu.h"
  • #include <string.h>

Public Functions

Type Name
void syn_menu_back (SYN_Menu * menu)
Back: leave submenu or exit edit mode.
void syn_menu_down (SYN_Menu * menu)
Move selection down. In edit mode: decrement value.
void syn_menu_enter (SYN_Menu * menu)
Enter: navigate into submenu, toggle, start editing, or fire callback.
void syn_menu_init (SYN_Menu * menu, const SYN_MenuItem * root, SYN_MenuRenderFn render, void * ctx)
Initialize menu system.
void syn_menu_render (const SYN_Menu * menu)
Force a render (e.g. after external state change).
void syn_menu_up (SYN_Menu * menu)
Move selection up. In edit mode: increment value.

Public Functions Documentation

function syn_menu_back

Back: leave submenu or exit edit mode.

void syn_menu_back (
    SYN_Menu * menu
) 

Parameters:

  • menu Menu state.

function syn_menu_down

Move selection down. In edit mode: decrement value.

void syn_menu_down (
    SYN_Menu * menu
) 

Parameters:

  • menu Menu state.

function syn_menu_enter

Enter: navigate into submenu, toggle, start editing, or fire callback.

void syn_menu_enter (
    SYN_Menu * menu
) 

Parameters:

  • menu Menu state.

function syn_menu_init

Initialize menu system.

void syn_menu_init (
    SYN_Menu * menu,
    const SYN_MenuItem * root,
    SYN_MenuRenderFn render,
    void * ctx
) 

Parameters:

  • menu Menu state.
  • root Root menu item (should be a SUBMENU).
  • render Render callback (called after each navigation action).
  • ctx Context for render callback.

function syn_menu_render

Force a render (e.g. after external state change).

void syn_menu_render (
    const SYN_Menu * menu
) 

Parameters:

  • menu Menu state.

function syn_menu_up

Move selection up. In edit mode: increment value.

void syn_menu_up (
    SYN_Menu * menu
) 

Parameters:

  • menu Menu state.


The documentation for this class was generated from the following file src/syntropic/ui/syn_menu.c