Reimplementing Signals, Slots, Properties and Bindings from Qt in pure C++17
summary
KDBindings implements signals, slots, properties and data bindings in pure C++17, shipping as a header-only library on GitHub and usable under the MIT license. It recreates Qt-style property bindings, adds deferred evaluation, and cuts boilerplate — a QCameraLens reimplementation shrinks from ~300 lines to ~50–100 while remaining functional in a real project. Limitations: not thread safe, heavier templates increase compile time, and some features (bidirectional bindings, mutable property access) are planned.
AI-written summary · about
chapters (12)
- 0:00Introduction and motivation
- 3:53Qt architecture concepts
- 8:01Limitations of current tools
- 10:46Implementing custom signals
- 15:20Properties and notifications
- 19:22Reactive data binding
- 23:26Deferred evaluation techniques
- 26:45Abstract syntax tree logic
- 30:41Real-world camera lens example
- 36:16Library features and roadmap
- 42:01Setup and integration
- 46:19Q&A session








