NAME

Kephra::API::CommandList - external API for calling functions

DESCRIPTION

The CommandList is a dynamically changeable list, that contains all the function calls for every menu item, toolbar button and most other widgets. It holds also the icons, labels, help text and key binding for each command and such things has to changed globally here in a clean way. These commands where used by different gui elements, that allows menu and toolbar definitions to be very compact, readable and and easy changeable.

Names of commands contain dashes as separator of namespaces.

SPECIFICATION

CommandlistItem

  • ID - unique identifier

  • call - CODEREF to run

  • enable - CODEREF that returns value if the command is enabled

  • enable_event - API::EventTable ID when to check to en/disable

  • state - CODEREF that returns state (for switches)

  • state_event - API::EventTable ID when to check is state changed

  • label - short description

  • help - hint string

  • key - numeric keycode

  • icon - Wx::Bitmap