setOption method

  1. @override
Future<ResultCode> setOption(
  1. dynamic option,
  2. WBOptionType type
)
override

Set whiteboard option object.

Parameter option The Option object.

Parameter type WBOptionType enum type.

Returns

设置白板选项对象。

Parameter option 选项对象。

Parameter type WBOptionType 枚举类型。

Returns

Implementation

@override
Future<ResultCode> setOption(option, WBOptionType type) {
  var params = <String, dynamic>{};
  params['type'] = WBOptionTypeConverter(type).value();
  var isValid = true;
  switch (type) {
    case WBOptionType.FileCachePath:
      if (option is String) {
        params['option'] = option;
      } else {
        isValid = false;
      }
      break;
    case WBOptionType.EnableUIResponse:
      if (option is bool) {
        params['option'] = option;
      } else {
        isValid = false;
      }
      break;
    case WBOptionType.ShowDraws:
      if (option is bool) {
        params['option'] = option;
      } else {
        isValid = false;
      }
      break;
    case WBOptionType.ScaleMove:
      if (option is bool) {
        params['option'] = option;
      } else {
        isValid = false;
      }
      break;
    case WBOptionType.AutoSelected:
      if (option is bool) {
        params['option'] = option;
      } else {
        isValid = false;
      }
      break;
    case WBOptionType.CursorPosSync:
      if (option is bool) {
        params['option'] = option;
      } else {
        isValid = false;
      }
      break;
    case WBOptionType.ShowRemoteCursor:
      if (option is bool) {
        params['option'] = option;
      } else {
        isValid = false;
      }
      break;
    case WBOptionType.PCUAExthtml:
      if (defaultTargetPlatform == TargetPlatform.iOS) {
        if (option is bool) {
          params['option'] = option;
        } else {
          isValid = false;
        }
      } else {
        return Future.value(ResultCode.NotSupported);
      }
      break;
    default:
      isValid = false;
  }

  if (!isValid) return Future.value(ResultCode.InvalidArgs);

  return _invokeCodeMethod('setOption', params);
}