#+TITLE: hgf Roadmap & Changelog
#+AUTHOR: Ben Frankel
#+EMAIL: ben.frankel7@gmail.com
#+STARTUP: showall


* Planned

** Restructuring [0/2]

- [ ] Overhaul of the style / options system to use CSS-style (or a subset) selectors
- [ ] Resolution of refresh / transition order issues in the frame pipeline

** Convenience [0/1]

- [ ] Default values for all built-in configuration

** New Graphical Components [0/3]

- [ ] Scrollbar
- [ ] Frame
- [ ] TextFrame

* Version 0.3.0 (Future)

** Bugs Fixed [0/1]

- [ ] TextField and TextEntryBox don't work

** Restructuring [0/2]

- [ ] SimpleWidget -> MouseState mix-in
- [ ] Decomposition of Widget to LongHover, MultipleClick, and RepeatKey mix-ins

* Version 0.2.1 (In Progress)

** Bugs Fixed [3/3]

- [X] Key events don't propagate to children
- [X] FlatComponents don't get redrawn when they move
- [X] Children of offset transparent components are rendered incorrectly

* Version 0.2.0

** New Graphical Components [6/6]

- [X] TextBox
- [X] TextEntryBox
- [X] TextField
- [X] Widget (old Widget renamed to SimpleWidget)
- [X] DragWidget
- [X] SlideWidget

** New Timing Components [7/7]

- [X] TimingComponent
- [X] Ticker
- [X] Pulse
- [X] Delay
- [X] Gradient
- [X] Switch
- [X] Blink

** Refactoring [4/4]

- [X] Hook functions (by convention, ~on_xxx~)
- [X] Widget -> SimpleWidget
- [X] Component -> Component, GraphicalComponent, FlatComponent, LayeredComponent
- [X] Switch -> ContextSwitcher

** Restructuring [3/3]

- [X] Explicit load step
- [X] ~appdata/<appname>/dir.json~ changed to ~appdata/<appname>.json~
- [X] /Freeze/ now blocks user interaction events, while /pause/ blocks timing updates

** Convenience [4/4]

- [X] Activate / deactivate
- [X] Toggle show / pause / active
- [X] Simultaneously register and load (~register_load~)
- [X] Event loop is handled by hgf on application launch

** Miscellaneous [1/1]

- [X] Style, options and controls can be dynamically reloaded

** Bugs Fixed [1/1]

- [X] Various; was not keeping track
