draw method

void draw(
  1. ConsoleComponent component, {
  2. bool restoreCursor = false,
  3. ConsoleCoordinate? cursor,
})

Implementation

void draw(
  ConsoleComponent component, {
  bool restoreCursor = false,
  ConsoleCoordinate? cursor,
}) {
  if (restoreCursor) {
    cursor ??= getCursorPosition();
  }

  if (component is AbsoluteConsoleComponent) {
    component.draw(this);
  } else if (component is RelativeConsoleComponent) {
    cursor ??= getCursorPosition();
    component.draw(this, cursor);
  }

  if (restoreCursor) {
    moveToCoordinate(cursor!);
  }
}