ChartEngineSwitchable constructor

ChartEngineSwitchable(
  1. Set<ChartEngine> engines, {
  2. Type? mainEngineType,
  3. ChartEngine? mainEngine,
})

Implementation

ChartEngineSwitchable(this.engines,
    {Type? mainEngineType, ChartEngine? mainEngine}) {
  if (engines.isEmpty) throw ArgumentError('Should have 1 or more engines');

  if (mainEngine != null) {
    _mainEngine = mainEngine;
  } else if (mainEngineType != null) {
    _mainEngine = getEngineByType(mainEngineType);
  } else {
    throw ArgumentError('No main engine defined in arguments.');
  }

  for (var engine in engines) {
    engine.onLoad.listen((event) {
      if (isLoaded) {
        onLoad.add(event);
      }
    });
  }
}