The OS module provides many utility headers and functions for working with the underlying operating system. The module also includes a wide variety of submodules:
- DBusUtils - Includes the UntitledDBusUtils library to make dealing with the C DBus API safer and easier
- UExec - Includes the UntitledExec library for a cross-platform
exec
-like functions and utilities - UFontUtils - Includes the UntitledFontUtils library to make dealing with system fonts easier
- XDG Integration - Includes the UntitledXDGBasedir library for handling usage of XDG base directories
- Open module - Integrates the UntitledOpen library for opening URIs and files using a default application or native file picker
To enable the module, modify your CMakeLists.txt
file so that the following line:
option(USE_OS_MODULE "Use the operating system module" OFF)
looks like this:
option(USE_OS_MODULE "Use the operating system module" ON)
or enable it through the CMake CLI, like this:
cmake .. -DUSE_OS_MODULE=ON
Finally, enable it in your uvproj.yaml
file like this
name: "MyProject"
version: "1.0.0.0"
engine-version: "1.0.0.0"
enabled-modules:
os: true
The module needs to stay enabled for any submodules to be enabled!
Using the module
Coming soon!
Checking for the module
To check for the module at compile time, use the UIMGUI_OS_MODULE_ENABLED
macro.
Runtime checking can be done using the os
member of the ModuleSettings
struct. More info can be found here.
- 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