initControls method

  1. @override
List<ControlModel> initControls()
override

This is a place where to fill all required ControlModels for this Widget. Called during Widget/State initialization phase.

Dependency Injection possibilities: holder.findControls - Returns ControlModels from 'constructor' and 'init' args. getControl - Tries to find specific ControlModel. Looks up in current controls, args and dependency Store. Control.get - Returns object from ControlFactory. Control.init - Initializes object via ControlFactory.

Returns controls to init, subscribe and dispose with Widget.

Implementation

@override
List<ControlModel> initControls() {
  final control = initControl();

  if (control == null) {
    throw 'NULL Control - $this';
  }

  if (autoMountControls) {
    final controls = holder.findControls();

    if (controls.contains(control)) {
      controls.remove(control);
    }

    controls.insert(0, control);

    return controls;
  }

  return [control];
}