execute method

  1. @override
Future<bool?> execute(
  1. String caller,
  2. String propertyOrFunction,
  3. List arguments
)
override

Implementation

@override
Future<bool?> execute(
    String caller, String propertyOrFunction, List<dynamic> arguments) async {
  if (scope == null) return null;
  var function = propertyOrFunction.toLowerCase().trim();

  switch (function) {
    case "check":
      selectedOptions.clear();
      for (var option in options) {
        await setSelectedOption(option);
      }
      return true;

    case "uncheck":
      selectedOptions.clear();
      selectedOptions.addAll(options);
      for (var option in options) {
        await setSelectedOption(option);
      }
      return true;

    case "toggle":
      for (var option in options) {
        await setSelectedOption(option);
      }
      return true;
  }
  return super.execute(caller, propertyOrFunction, arguments);
}