API reference

Generated from the public header AppCUI/include/AppCUI.hpp (the only header an application includes). Every declaration is listed, documented or not; descriptions come from the /// comments of the header and from docs/doxygen/namespaces.dox.

#include <AppCUI.hpp>

using namespace AppCUI;

Namespaces

  • AppCUI::Application - Application lifetime: initialization (Init, InitializationData), the event loop (Run), desktop windows (AddWindow, ArrangeWindows), menus, themes, settings (<executable>.ini) and custom frontends.

  • AppCUI::Controls - Every visual element: windows, buttons, text fields, lists, trees, grids, splitters, tabs, menus and the base Control class.

  • AppCUI::Controls::Factory - Creation helpers: Factory::<Control>::Create(parent, …, layout, …) creates a control and adds it to its parent (returning a non-owning Reference) or returns an owning Pointer when no parent is given.

  • AppCUI::Controls::Handlers - Event handlers that can be attached to a control (control->Handlers()->OnXXX = …) instead of deriving a new control class: either a pointer to an object that implements the matching On…Interface or a plain function (a lambda without captures).

  • AppCUI::Graphics - Drawing: colors, characters, the Renderer used by Control::Paint, canvases, images, rectangles, clipping, special characters (box drawing, arrows, …), code pages and text formatting.

  • AppCUI::Graphics::ProgressStatus - A modal progress window for long operations.

  • AppCUI::Input - Keyboard and mouse input: key codes and modifiers (Key), mouse buttons and wheel, key bindings, key maps and keyboard modifier profiles (ModifierMap).

  • AppCUI::Utils - General purpose utilities: strings (String, LocalString, UnicodeStringBuilder, FixSizeString), buffers (Buffer, BufferView), INI files (IniObject), number formatting and parsing, smart references (Reference, Pointer), properties (PropertiesInterface) and key helpers (KeyUtils).

  • AppCUI::Utils::Number - Parsing of numbers from strings (decimal, hexadecimal, …).

  • AppCUI::OS - Operating system services: files (File, MemoryFile, DataObject), the clipboard, dynamic libraries, date / time and special folders.

  • AppCUI::Dialogs - Ready made modal dialogs: message boxes, open / save file dialogs, the windows manager and the theme editor.

  • AppCUI::Log - Logging of AppCUI (and application) messages to a file, to stdout / stderr or to the debugger.

  • AppCUI::Endian - Byte order helpers: byte swapping and conversions between the host order and little / big endian.

  • AppCUI - Root namespace of the AppCUI framework (#include <AppCUI.hpp>).

  • AppCUI::StdIncludes - Standard library names (string_view, u16string_view, unique_ptr, vector, optional, …) imported into the AppCUI namespace.