PolarisOptions.defaultOptions constructor

PolarisOptions.defaultOptions({
  1. bool readingMode = false,
  2. Color color = Colors.blue,
  3. String? googlePlaceApiKey,
})

Factory that creates a PolarisOptions object with default options.

Implementation

factory PolarisOptions.defaultOptions({
  bool readingMode = false,
  Color color = Colors.blue,
  String? googlePlaceApiKey,
}) {
  return PolarisOptions(
    readingMode: readingMode,
    menu: const MenuOptions(
      enabled: true,
    ),
    area: AreaOptions(
      color: color.withOpacity(0.3),
      isFilled: true,
    ),
    line: LineOptions(
      color: color,
      strokeWidth: 3,
    ),
    draggedLine: LineOptions(
      color: color,
      strokeWidth: 3,
      isDotted: true,
    ),
    point: PointOptions(
      icon: Icon(
        Icons.circle,
        color: color,
        size: 14,
      ),
      lastPointIcon: Stack(
        fit: StackFit.expand,
        children: [
          Icon(
            Icons.circle,
            color: color,
            size: 10,
          ),
          Icon(
            Icons.circle_outlined,
            color: color,
            size: 19,
          ),
        ],
      ),
    ),
    place: googlePlaceApiKey != null
        ? PlaceOptions.googleMapService(apiKey: googlePlaceApiKey)
        : null,
    mouse: const MouseOptions(),
    shortcut: ShortcutOptions(
      undo: !readingMode
          ? [
              [LogicalKeyboardKey.controlLeft, LogicalKeyboardKey.keyZ],
              [LogicalKeyboardKey.metaLeft, LogicalKeyboardKey.keyZ],
            ]
          : [],
      redo: !readingMode
          ? [
              [LogicalKeyboardKey.controlLeft, LogicalKeyboardKey.keyY],
              [LogicalKeyboardKey.metaLeft, LogicalKeyboardKey.keyY],
              [
                LogicalKeyboardKey.controlLeft,
                LogicalKeyboardKey.shiftLeft,
                LogicalKeyboardKey.keyZ
              ],
              [
                LogicalKeyboardKey.metaLeft,
                LogicalKeyboardKey.shiftLeft,
                LogicalKeyboardKey.keyZ
              ],
            ]
          : [],
      search: googlePlaceApiKey != null
          ? [
              [LogicalKeyboardKey.controlLeft, LogicalKeyboardKey.keyF],
              [LogicalKeyboardKey.metaLeft, LogicalKeyboardKey.keyF],
            ]
          : [],
      zoomIn: [
        [LogicalKeyboardKey.controlLeft, LogicalKeyboardKey.add],
        [LogicalKeyboardKey.controlLeft, LogicalKeyboardKey.equal],
        [LogicalKeyboardKey.metaLeft, LogicalKeyboardKey.add],
        [LogicalKeyboardKey.metaLeft, LogicalKeyboardKey.equal],
        [
          LogicalKeyboardKey.controlLeft,
          LogicalKeyboardKey.shiftLeft,
          LogicalKeyboardKey.add
        ],
        [
          LogicalKeyboardKey.metaLeft,
          LogicalKeyboardKey.shiftLeft,
          LogicalKeyboardKey.add
        ],
      ],
      zoomOut: [
        [LogicalKeyboardKey.controlLeft, LogicalKeyboardKey.minus],
        [LogicalKeyboardKey.metaLeft, LogicalKeyboardKey.minus],
      ],
      fitCameraToArea: [
        [LogicalKeyboardKey.controlLeft, LogicalKeyboardKey.keyH],
        [LogicalKeyboardKey.metaLeft, LogicalKeyboardKey.keyH],
      ],
      deletePoint: !readingMode
          ? [
              [LogicalKeyboardKey.controlLeft],
            ]
          : [],
    ),
  );
}