https://github.com/unskytoo/litegui
Immediate Mode GUI From Scratch
https://github.com/unskytoo/litegui
csharp-code imgui scratch ui
Last synced: 3 months ago
JSON representation
Immediate Mode GUI From Scratch
- Host: GitHub
- URL: https://github.com/unskytoo/litegui
- Owner: UnSkyToo
- License: mit
- Created: 2018-11-14T11:16:17.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2025-01-03T07:13:11.000Z (6 months ago)
- Last Synced: 2025-03-24T01:11:09.581Z (3 months ago)
- Topics: csharp-code, imgui, scratch, ui
- Language: C#
- Size: 2.51 MB
- Stars: 26
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: Docs/README.md
- License: LICENSE
Awesome Lists containing this project
README
# LiteGui
## Introduction
Immediate Mode GUI from scratch based on .Net Standard 2.0
Currently only bindings WinForm
Plan more platforms in the future
----
## Plan
1. [x] Text
2. [x] Button
3. [x] Frame
1. [x] Clipping
2. [x] Scrollbar
4. [x] Group
5. [x] InputText
1. [x] Input Filter
2. [x] Undo/Redo
3. [x] Selection
4. [x] Copy/Paste/Cut
5. [x] Single/Mulit
6. [ ] History
6. [x] Slider
7. [x] Separator
8. [x] CheckBox
9. [x] Texture
10. [x] RadioButton
11. [x] ToolTips
12. [ ] Menu
13. [ ] DragInput
14. [ ] Layout
1. [x] Vertical
2. [x] Horizontal
3. [ ] Custom
15. [x] SameLine/NextLine
16. [x] ListBox
17. [ ] Tree
18. [ ] FreeType
19. [x] ColorPikcer
20. [x] Popup
21. [x] Selectable
22. [x] Combox
23. [x] Window
1. [x] Drag
2. [x] Title
3. [ ] Sizable
4. [x] Collapse
24. [x] ProgressBar## Usage
Use LGui.XXX() between LGui.Begin() and LGui.End() The next examples to omit this part and variable define
Code
```c#
LGui.Text("Lite Gui {0}", Value);
if (LGui.Button("Click Me"))
{}
LGui.Slider("SliderV", ref Value, 0, 10, 1);
```Result
Code
```c#
if (LGui.ColorButton("ColorButton1", Color, new LGuiVec2(30, 30)))
{
LGui.OpenPopup("Popup 1");
}if (LGui.BeginPopup("Popup 1", new LGuiVec2(260, 310)))
{
LGui.ColorPicker("Color Picker 1", ref Color);
LGui.EndPopup();
}LGui.ListBox("ListBox", ref ItemIndex, Items, new LGuiVec2(100, 150));
LGui.Text("Current Item : {0}", Items[ItemIndex]);
```Result
MemoryEditor & Window
Demo
