跳转至

Icon-Text Menu Widget

Horizontal scrollable menu for icon+text display. More...

Classes

Name
struct CFBD_IconTextMenuItem
struct _CFBD_IconTextMenuOps
Operation table for icon-text menu.
struct _CFBD_IconTextMenu

Types

Name
enum CFBD_IconTextMenuItemState { CFBD_ICONTEXT_ITEM_NORMAL = 0, CFBD_ICONTEXT_ITEM_FOCUSED = 1, CFBD_ICONTEXT_ITEM_PRESSED = 2, CFBD_ICONTEXT_ITEM_DISABLED = 3}
Menu item visual state enumeration.
enum CFBD_IconTextScrollDirection { CFBD_ICONTEXT_SCROLL_LEFT = -1, CFBD_ICONTEXT_SCROLL_RIGHT = 1, CFBD_ICONTEXT_SCROLL_NONE = 0}
Scroll direction enumeration.
typedef struct _CFBD_IconTextMenuOps CFBD_IconTextMenuOps
Operation table for icon-text menu.
typedef struct _CFBD_IconTextMenu CFBD_IconTextMenu
Forward declaration of icon-text menu structure.

Functions

Name
void CFBD_InitIconTextMenu(CFBD_IconTextMenu * pMenu, CFBD_GraphicDevice * device, CFBDGraphicRect * viewport, CFBD_IconTextMenuItem * items_buffer, size_t capacity)

Defines

Name
CFBD_ICONTEXT_MENU_DEFAULT_ITEM_WIDTH
Configuration constants for icon-text menu.
CFBD_ICONTEXT_MENU_DEFAULT_ITEM_HEIGHT
Height of each menu item.
CFBD_ICONTEXT_MENU_ICON_SIZE
Icon bitmap dimensions.
CFBD_ICONTEXT_MENU_ICON_TEXT_GAP
Gap between icon and text.
CFBD_ICONTEXT_MENU_TEXT_SIZE
Font size for labels.
CFBD_ICONTEXT_MENU_ANIMATION_DURATION_MS
Scroll animation duration.
CFBD_ICONTEXT_MENU_VISIBLE_ITEMS
Number of visible items.

Detailed Description

Horizontal scrollable menu for icon+text display.

Menu system with icon+text items, designed for small screens with smooth animations and gesture-based navigation.

Types Documentation

enum CFBD_IconTextMenuItemState

Enumerator Value Description
CFBD_ICONTEXT_ITEM_NORMAL 0 Default unselected state.
CFBD_ICONTEXT_ITEM_FOCUSED 1 Item has focus/is selected.
CFBD_ICONTEXT_ITEM_PRESSED 2 Item is being pressed/activated.
CFBD_ICONTEXT_ITEM_DISABLED 3 Item is disabled/unavailable.

Menu item visual state enumeration.

Indicates the current visual state of a menu item

enum CFBD_IconTextScrollDirection

Enumerator Value Description
CFBD_ICONTEXT_SCROLL_LEFT -1 Scroll towards previous items.
CFBD_ICONTEXT_SCROLL_RIGHT 1 Scroll towards next items.
CFBD_ICONTEXT_SCROLL_NONE 0 No scrolling.

Scroll direction enumeration.

typedef CFBD_IconTextMenuOps

typedef struct _CFBD_IconTextMenuOps CFBD_IconTextMenuOps;

Operation table for icon-text menu.

Virtual function table for icon-text menu operations

typedef CFBD_IconTextMenu

typedef struct _CFBD_IconTextMenu CFBD_IconTextMenu;

Forward declaration of icon-text menu structure.

Main icon-text menu widget structure.

Manages scrollable menu state including items, animations, selection, and scroll position.

Functions Documentation

function CFBD_InitIconTextMenu

void CFBD_InitIconTextMenu(
    CFBD_IconTextMenu * pMenu,
    CFBD_GraphicDevice * device,
    CFBDGraphicRect * viewport,
    CFBD_IconTextMenuItem * items_buffer,
    size_t capacity
)

Macros Documentation

define CFBD_ICONTEXT_MENU_DEFAULT_ITEM_WIDTH

#define CFBD_ICONTEXT_MENU_DEFAULT_ITEM_WIDTH (60)

Configuration constants for icon-text menu.

Width of each menu item

define CFBD_ICONTEXT_MENU_DEFAULT_ITEM_HEIGHT

#define CFBD_ICONTEXT_MENU_DEFAULT_ITEM_HEIGHT (80)

Height of each menu item.

define CFBD_ICONTEXT_MENU_ICON_SIZE

#define CFBD_ICONTEXT_MENU_ICON_SIZE (48)

Icon bitmap dimensions.

define CFBD_ICONTEXT_MENU_ICON_TEXT_GAP

#define CFBD_ICONTEXT_MENU_ICON_TEXT_GAP (4)

Gap between icon and text.

define CFBD_ICONTEXT_MENU_TEXT_SIZE

#define CFBD_ICONTEXT_MENU_TEXT_SIZE ASCII_6x8

Font size for labels.

define CFBD_ICONTEXT_MENU_ANIMATION_DURATION_MS

#define CFBD_ICONTEXT_MENU_ANIMATION_DURATION_MS (300)

Scroll animation duration.

define CFBD_ICONTEXT_MENU_VISIBLE_ITEMS

#define CFBD_ICONTEXT_MENU_VISIBLE_ITEMS (3)

Number of visible items.


Updated on 2026-02-03 at 13:21:55 +0000