Before we get into modules, here is a great place to introduce you to the internal even system and event safety.
Event safety is documented both on the wiki and in code as comments. If you find a class or function missing such information, please make an issue or submit a pull request.
Internal Events
Currently, we have the following internal events:
- Startup - This is when the application first starts, the constructor of the Instance is called at this point
- Post-Startup - At any point after startup
- Begin - Window, renderer and modules are instantiated
- Post-begin - At any point after begin
- GUI - Before or during GUI layer initialization(doesn't mean it's initialized, and any UI code will break here), i.e.
Instance::onEventConfigureStyle
- All ready - After all initial setup is done, this includes tick events
- Pre-destruct - Before all systems are shut down
- Destruct - When the destructor of the Instance is called
Additionally, you may notice and event named Any time
, which means that the given function can be called safely at any point.
- Home
- Beginner content
- Install guide
- Creating and using the UI components
- The Instance
- The Init Info struct
- Additional features
- Custom type definitions
- C API development
- Config files and Folders
- Interfaces
- Internal Event safety
- Modules system
- I18N
- Plotting
- Knobs
- Spinners
- Toggles
- Text Utils
- Undo/Redo
- CLI Parser
- Theming
- OS
- Opening URLs and using file pickers
- Exec integration
- Fonts
- Unix
- DBus utilities
- XDG integration
- Collaborating with others
- Advanced content
- Loading dynamic libraries at runtime
- Understanding the library layout
- Compilation mode modifiers
- Adding plugin support to your application
- Production export and deployment
- Developer and contributor resources
- Misc