cigui/README.md
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

71 lines
No EOL
1.1 KiB
Markdown

# cigui
## Goal
```cpp
#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
```
```json5
// 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"
}
```