Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/loudoweb/gsui
UI for Openfl with set of tools and utils
https://github.com/loudoweb/gsui
haxe openfl ui
Last synced: 25 days ago
JSON representation
UI for Openfl with set of tools and utils
- Host: GitHub
- URL: https://github.com/loudoweb/gsui
- Owner: loudoweb
- License: mit
- Created: 2019-05-17T12:07:23.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-11-09T08:33:13.000Z (almost 1 year ago)
- Last Synced: 2023-11-09T10:04:43.333Z (almost 1 year ago)
- Topics: haxe, openfl, ui
- Language: Haxe
- Size: 183 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gsui
UI for Openfl with set of tools and utils.
Made in 2014/2015 for openfl legacy and now upgraded for openfl next and open sourced to make improvement easily.# Use Case
Create your UI for a specific orientation (landscape or portrait) and the highest resolution you can, then GSUI will resize proportionnaly you UI to fit the screen for lower resolutions.
For now, if the screen ratio of the screen is different from the default one, you will have your ui letter-boxed.
There is no automatic repositioning of ui elements except for few components.# component
- [x] group, vbox, hbox
- [x] render (group that uses item renderer)
- [x] img
- [x] grid9
- [x] text
- [x] simple Button
- [x] button
- [x] checkbox
- [x] radio
- [x] slider
- [x] progress bar
- [x] slot (place holder)
- [ ] scroll bar
# xml## game state configuration
```
```
## interface description
```
```
# Positioning on xml:
| position | xml attribute | value | warning |
| ------------- | ------------- | ------------- | ------------- |
| align center | x, y | center | need to set parent width or height |
| align right minus width | right | width | need to set parent width or height |
| align bottom minus height | bottom | height | need to set parent width or height |# Fonts:
Must be in fonts folder and have lowercase extension in ttf only.
# TODO
- [x] transitions
- [x] actuate tween
- [x] actuate transform
- [x] actuate effects
- [x] actuate apply
- [x] on added
- [x] on removed
- [x] on hover
- [x] on back to up
- [x] other lib than actuate should be ok to used
- [ ] allow value 'auto' for width and height to make the parent width or height equal to children
- [ ] hot reload
- [ ] some responsiveness to avoid letterbox and better looking in mobile
- [ ] samples
- [ ] haxe 4 support
- [ ] documentation
- [ ] remove bindx2 dependency ?
- [ ] add macros to include classes from xml
- [ ] Render should also handle CheckBox and Radio
- [X] Textfield should inherits Base to allow repositioning if in boxB or boxV
- [ ] forbids setting x in boxH and y in boxV
- [X] add app scroller
- [ ] add size="+1" and size="-1" to change size of default font relatively
- [ ] add margin
- [ ] add sticky elements
- [ ] GuiRender should have auto gap
- [ ] Bind states for group only when on screen# dependencies
- actuate
- bindx2
- openfl