feat(sdk): migrate editing context API to kcsdk #351

Closed
opened 2026-02-27 19:30:13 +00:00 by forbes · 0 comments
Owner

Goal

Context/overlay registration goes through SDKRegistryEditingContextResolver, exposed via kcsdk pybind11.

New files

  • src/Gui/SDK/Types.hContextDef, OverlayDef structs

Modified files

  • src/Gui/SDK/SDKRegistry.h/.cpp — Add register_context(), unregister_context(), register_overlay(), unregister_overlay(), inject_commands(), current_context(), refresh()
  • src/Gui/SDK/bindings/kcsdk_py.cpp — Bind context functions with dict-based data exchange
  • mods/sdk/kindred_sdk/context.py — Change from _gui().registerEditingContext(...) to kcsdk.register_context(...) with fallback

Verification

Silo addon still registers contexts. kindred_sdk.current_context() returns correct dict.

Depends on #350. Part of the KCSDK epic (#346). Phase 2 of 8.

## Goal Context/overlay registration goes through `SDKRegistry` → `EditingContextResolver`, exposed via kcsdk pybind11. ## New files - `src/Gui/SDK/Types.h` — `ContextDef`, `OverlayDef` structs ## Modified files - `src/Gui/SDK/SDKRegistry.h/.cpp` — Add `register_context()`, `unregister_context()`, `register_overlay()`, `unregister_overlay()`, `inject_commands()`, `current_context()`, `refresh()` - `src/Gui/SDK/bindings/kcsdk_py.cpp` — Bind context functions with dict-based data exchange - `mods/sdk/kindred_sdk/context.py` — Change from `_gui().registerEditingContext(...)` to `kcsdk.register_context(...)` with fallback ## Verification Silo addon still registers contexts. `kindred_sdk.current_context()` returns correct dict. Depends on #350. Part of the KCSDK epic (#346). Phase 2 of 8.
forbes added the enhancement label 2026-02-27 19:30:13 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kindred/create#351