Repository navigation
C++: PhaseKit UI library (beta release)
What's New in v2.42
C++ Changes: UI Kit beta
-
New: Full support for
HStack,VStack,ZStacklayouts (with unit tests) -
New:
PadViewlayout -
New:
PageView,SpacerView,TextView,ColorView,View2D -
New:
ToggleButtonControl -
New: "ugly duckling"
DuckDesignSystemfor building basic UIs (work in progress) -
New:
ThemeBuilderfor building themed UIs from a design system -
New:
Slice3TextureRendererfor 3-slice repeating textures -
New:
ImRendererimmediate mode render support (basic functionality: FillRect, drawText) -
New:
ViewBuilderfor dynamic building of views -
ImGuiPlanPainter supports button, text, list select
-
Bug fix and QOL improvements
ViewBuilder Example
QB(root).And("Root View").RootView({ 800, 800 }, [=](auto& vb) {
vb.ZStack({ .buildViewFunc = [=](auto& vb) {
ThemeBuilder(vb).Surface();
vb.VStack({ .spacing = 20, .buildViewFunc = [=](auto& vb) {
vb.HStack({ .buildViewFunc = [=](auto& vb) {
ThemeBuilder(vb)
.Label({ .color = Color::red, .text = "Button" })
.Button({ .label = "Duck UI" });
} });
vb.HStack({ .buildViewFunc = [=](auto& vb) {
ThemeBuilder(vb)
.Label({ .text = "Progress Bar" })
.ProgressBar({ .color = Color::red,
.valueFunc = []() { return 0.3f; } }
);
} });
} });
} });Screenshots
