No description
Find a file
noffie b12e608567 Add a standalone style guide document
Moved the CIGUI style guide from `README.md` to a dedicated `StyleGuide.md` file for better organization. This improves readability and ensures the main README remains focused on project goals and usage.
2025-04-20 18:48:25 +02:00
cmake WIP: Rewrite with LLGL 2025-04-13 17:54:14 +02:00
examples Memory safety and Window Events 2025-04-20 17:49:15 +02:00
include/cigui Memory safety and Window Events 2025-04-20 17:49:15 +02:00
src Memory safety and Window Events 2025-04-20 17:49:15 +02:00
tests WIP: Rewrite with LLGL 2025-04-13 17:54:14 +02:00
.gitignore Major Restructuring 2025-04-12 18:09:16 +02:00
CMakeLists.txt CMake for linux 2025-04-13 20:24:19 +02:00
LICENSE Initial commit 2025-04-08 13:38:24 +02:00
README.md Add a standalone style guide document 2025-04-20 18:48:25 +02:00
StyleGuide.md Add a standalone style guide document 2025-04-20 18:48:25 +02:00

cigui

Goal

#include <cigui.hpp>

struct ContentView : public cig::View {
    void body() {
        cig::VStack(
            cig::SystemIcon("globe.fill"),
            cig::Text("Welcome to Cigui")
        )
    }
}

struct SettingsView : public cig::View {
    void body() {
        cig::Tabbed(
            cig::Tab(

            ).tag("Tab 1"),
            cig::Tab(
                cig::VStack(
                    cig::Text("Other Tab")
                )
            )
        );
    }
}

struct MainApp : public cig::App {
    void body() {
        cig::WindowGroup()(
            cig::ViewWindow(new ContentView()),
            cig::SettingsWindow(new SettingsView())
        )
    }
}

Data structures

Runtime

./
|- Themes
|  |- ExampleTheme.json
|  \- themes.txt
|- Settings.json
\- App.json

Themes

# themes.txt

1, ExampleTheme.json
---
default: 1
// ExampleTheme.json
{
  "Name": "Standard Cigui Theme",
  "background-color": [20, 20, 20],
  "primary": [120, 20, 50],
  "other": "auto" // calculates the secondary and any further color automatically based on "primary"
}