https://github.com/hexaengine/hexa.net.imgui.widgets
https://github.com/hexaengine/hexa.net.imgui.widgets
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/hexaengine/hexa.net.imgui.widgets
- Owner: HexaEngine
- License: mit
- Created: 2024-08-06T16:46:54.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2025-03-29T16:51:33.000Z (about 1 year ago)
- Last Synced: 2025-04-05T19:34:26.646Z (about 1 year ago)
- Language: C#
- Size: 20.7 MB
- Stars: 9
- Watchers: 1
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# ImGui Widget Collection for Hexa.NET.ImGui
This repository contains a variety of custom widgets and utilities designed to extend the capabilities of the [Hexa.NET.ImGui](https://github.com/HexaEngine/Hexa.NET.ImGui) library. Whether you're developing tools, applications, or games, these widgets will help you create more interactive and user-friendly interfaces.
## Table of Contents
- [Installation](#installation)
- [Widgets](#widgets)
- [Contributing](#contributing)
- [License](#license)
## Installation
To use the ImGui Widget Collection in your project, install the NuGet package:
```sh
dotnet add package Hexa.NET.ImGui.Widgets
```
```sh
dotnet add package Hexa.NET.ImGui.Widgets.Extras
```
## Widgets
- ImGuiBufferingBar (a simple buffering bar)
- ImGuiButton
- Toggle Button (a normal button, but when toggled it gets a circle around it to indicate that it' active)
- Transparent Button (a normal button but without a background when not hovered)
- ImGuiSpinner (a simple buffering spinner)
- ImGuiTreeNode (a special tree node with the ability to add a icon with a color)
- ImGuiWidgetFlameGraph (a widget used for drawing a flame graph)
- MessageBox (a message box framework for simple yes no cancel ok dialogs)
- DialogMessageBox (similar to MessageBox, but with the difference that it blocks other windows)
- OpenFileDialog (used for users to select files or folders, multi selection supported)
- RenameFileDialog (used for renaming files and folders)
- SaveFileDialog (used for selecting a path for a file/folder to save to.)
## Helper classes and types
- ComboHelper (a small helper for using enums with combo boxes)
- ImageHelper (a small helper for aligning a image)
- TextHelper (a helper for text alignment)
- TooltipHelper (a helper for tooltips)
- ImGuiName (a struct that provides a unique name useful for cases where multiple things are named the same way)
## Widgets Extra (Requires my math lib)
- ImGuiBezierWidget (a widget for visually modifying bezier curves)
- ImGuiCurveEditor (a curve editor commonly used in color grading)
## Contributing
We welcome contributions to the ImGui Widget Collection! If you have an idea for a new widget or an improvement to an existing one, please submit a pull request.
## License
This project is licensed under the MIT License. See the LICENSE file for details.