C-Menu 0.2.9
A User Interface Toolkit
Loading...
Searching...
No Matches
cmenu_help.h
Go to the documentation of this file.
1#pragma once
2
3#ifdef __cplusplus
4extern "C" {
5#endif
6
7#include <stddef.h>
8#include <stdint.h>
9
10// Unique identifiers for every help node context
11typedef uint32_t cmenu_help_id_t;
12
13#define CMENU_HELP_NONE 0
14
15typedef struct {
17 const char *context_key; // For human-readable logging / future localization
18 const char *title;
19 const char *body;
20} cmenu_help_node_t;
21
22// Help Engine Core Lifecycle APIs
23void cmenu_help_init(const cmenu_help_node_t *catalog, size_t count);
24const cmenu_help_node_t *cmenu_help_lookup(cmenu_help_id_t id);
25void cmenu_help_free(void);
26
27// Framework UI Abstract Interfaces
28typedef struct {
29 void (*show_popup)(const char *title, const char *body);
30 void (*clear_hover_help)(void);
31} cmenu_ui_backend_t;
32
33// Context dispatchers inside the main loop
34void cmenu_trigger_f1_help(cmenu_ui_backend_t *ui, cmenu_help_id_t id);
35void cmenu_trigger_hover_help(cmenu_ui_backend_t *ui, cmenu_help_id_t id);
36
37#ifdef __cplusplus
38}
39#endif
uint32_t cmenu_help_id_t
Definition cmenu_help.h:11
void cmenu_help_free(void)
void cmenu_trigger_hover_help(cmenu_ui_backend_t *ui, cmenu_help_id_t id)
const cmenu_help_node_t * cmenu_help_lookup(cmenu_help_id_t id)
void cmenu_trigger_f1_help(cmenu_ui_backend_t *ui, cmenu_help_id_t id)
void cmenu_help_init(const cmenu_help_node_t *catalog, size_t count)
const char * title
Definition cmenu_help.h:18
cmenu_help_id_t id
Definition cmenu_help.h:16
const char * context_key
Definition cmenu_help.h:17
const char * body
Definition cmenu_help.h:19
void(* show_popup)(const char *title, const char *body)
Definition cmenu_help.h:29
void(* clear_hover_help)(void)
Definition cmenu_help.h:30