OxyEngine icon indicating copy to clipboard operation
OxyEngine copied to clipboard

Implement complex OO UI

Open seclerp opened this issue 6 years ago • 1 comments

Add ability to create UI using OxyEngine.

Diagram

Widget structure

Layout widgets:

  • [ ] HorizontalLayout
  • [ ] VerticalLayout
  • [ ] GridLayout
  • [ ] PixelLayout

Visual widgets:

  • [ ] Text
  • [ ] Image
  • [ ] Button
  • [ ] InputBox
  • [ ] InputArea
  • [ ] CheckBox
  • [ ] RadioButton
  • [ ] Slider
  • [ ] ProgressBar
  • [ ] ScrollBar

Also introduce EventSystem for controls:

Keyboard:

  • keypress - keyboard key is changing state to 'down'
  • keyrelease - keyboard key is changing state to 'up'
  • keydown - fires while keyboard key is in down state

Mouse:

  • mousepress - mouse button is changing state to 'down'
  • mouserelease - mouse button is changing state to 'up'
  • mousedown - fires while mouse button is in 'down' state
  • mousemove - fires if mouse pointer moves inside widget's Rectangle.
  • mouseenter - fires if mouse pointer enters widget's Rectangle.
  • mouseexit - fires if mouse pointer exits widget's Rectangle.

seclerp avatar Apr 29 '18 17:04 seclerp

Task going to backlog, because of complex implementation

seclerp avatar May 14 '18 13:05 seclerp