docs: public final Entry<?> createEntryAt(ZonedDateTime time, Calendar calendar) {
          requireNonNull(time);
          VirtualGrid grid = getVirtualGrid();
          if (grid != null) {
              ZonedDateTime timeA = grid.adjustTime(time, false, getFirstDayOfWeek());
              ZonedDateTime timeB = grid.adjustTime(time, true, getFirstDayOfWeek());
              if (Duration.between(time, timeA).abs().minus(Duration.between(time, timeB).abs()).isNegative()) {
                  time = timeA;
              } else {
                  time = timeB;
              }
          }
  
          if (calendar == null) {
              Callback<DateControl, Calendar> defaultCalendarProvider = getDefaultCalendarProvider();
              calendar = defaultCalendarProvider.call(this);
          }
  
          if (calendar != null) {
              /*
               * We have to ensure that the calendar is visible, otherwise the new
               * entry would not be shown to the user.
               */
              setCalendarVisibility(calendar, true);
              CreateEntryParameter param = new CreateEntryParameter(this, calendar, time);
              Callback<CreateEntryParameter, Entry<?>> factory = getEntryFactory();
              Entry<?> entry = factory.call(param);
              if (entry != null) {
                  /*
                   * This is OK. The factory can return NULL. In this case we
                   * assume that the application does not allow to create an entry
                   * at the given location.
                   */
                  entry.setCalendar(calendar);
              }
  
              return entry;
          } else {
              LoggingDomain.EDITING.warning("No calendar found for adding a new entry."); //$NON-NLS-1$
          }
  
          return null;
      }