Skip to content

Major code reorganization

bzub requested to merge reorg into master

Global

  • Every available component should be completely usable now. :) Check #1 for component plans/status.
  • New() is no longer required to create components. Just initialize the component struct like c := &checkbox.C{}
  • component.Start(c, rootElement) ensures the component is started with the right HTMLElement. Fixes #18 (closed).
  • *_example_test.go now more closely documents usage in a real browser. Helps #11 (closed).
  • Many components have a much more predictable/intuitive API thanks to expanded use of "js" GopherJS struct tags, as well as filling in JS getters/setters where the MDC default adapters did not provide them.
  • Expanded test coverage. Now checks all js tagged struct fields by checking against the perspective of the underlying MDC instance.
  • Too many bug fixes to name. Mostly things that weren't implemented yet.
  • Lots of added/enhanced documentation. Read the GoDoc. :)

component package

  • Added MDComponenter interface whereby implementors provide the bare minimum of information for component.Start() to initialize them
  • Added AfterStarter interface which allows more complex component implementations to perform further configuration after MDC init().
  • Much smaller in scope/code, but slightly more boilerplate in component implementations. Helps #13 (closed).

checkbox

  • No longer attempts to manage state itself, now uses a wrapper that is much thinner over the MDC vanilla adapter.

Removals

The following haven't been getting attention during API changes and have been removed. They will be added back once they have a working implementation.

  • gridlist
  • formfield
  • tab*
Edited by bzub

Merge request reports