Architecture

    Dark Mode
Search:
Group by:

Author: WhiteDuke

Introduction

This is a small overview of how NGUI works internally. The core of NGUI are three modules:

  • ngui.nim: Where the Widgets (NElements) and procedures are described.
  • ngui_backend_interface.nim: This is a list of functions that serve as the interface between ngui and some guitoolkit. At the moment only GTK3 is supported. ngui.nim will communicate with the backend through internalX functions (for example: internalNewApp, internalGetText, internalAdd ...)
  • ngui_backend_util.nim: A set of util functions to make the implementation of backends simpler.

As an example of an implementation, checkout the module src/backends/ngui_begtk3.nim

GTK3 Backend

Adapters

TODO (Label, img, menu/menubar)

Events

TODO (Event names, closure callbacks, stop propagation, get current event)

Style

TODO (Satanic rituals, object inspection)