API reference
A full description of the core, shell and service interfaces with call examples and common errors.
Four commands, one module class — and an app with docks, tabs and menus is up and running.
// A module declares everything in one descriptor — the shell builds the UI itself
core::ModuleDescriptor describe()
{
core::ModuleDescriptor Module;
Module.Id = QStringLiteral("documents");
Module.Name = QStringLiteral("Documents");
Module.Version = QStringLiteral("1.0.0");
Module.ContractVersion = core::ModuleContractVersion;
Module.Panels = { /* document list, viewer */ };
Module.Commands = { /* "New document", Ctrl+N */ };
Module.Menus = { /* menu items */ };
Module.Themes = { /* custom themes, if needed */ };
return Module;
}
REGISTER_MODULE(describe())
// CMakeLists.txt — a single line:
// dockstudio_add_module(documents PLUGIN)Panels, commands, menus and themes are described in one descriptor. The shell places them in the UI and restores the user's layout on the next launch.
A full description of the core, shell and service interfaces with call examples and common errors.
Starters for an app, a module and a plugin: an enterprise workstation app, an engineering tool, a simple viewer.
A layout inspector, a bus event viewer, a panel profiler and a plugin sandbox.
Step-by-step guides, an SDK video course and walkthroughs of common architectural decisions.
Theme tokens, an icon pack, interface density rules and ready-made control styles.
CI scripts, build signing, installers and an auto-update mechanism for your users.
This section is being filled with SDK walkthrough recordings. For now, here is the outline of the upcoming course.
From a project template to a working panel in the main window.
Saving, exporting and distributing layouts to users.
Restyling the application to match the customer's brand.
We’ll send the distribution, the documentation and a Community edition key, and run introductory training if needed.
We reply during business hours. If it's urgent, Telegram is the fastest way.