docs: @Override
      public ObservableList<Item> getPropertySheetItems() {
          ObservableList<Item> items = super.getPropertySheetItems();
  
          items.add(new Item() {
  
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(showNavigationProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setShowNavigation((boolean) value);
              }
  
              @Override
              public Object getValue() {
                  return isShowNavigation();
              }
  
              @Override
              public Class<?> getType() {
                  return Boolean.class;
              }
  
              @Override
              public String getName() {
                  return "Show Navigation"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Navigation controls (back, forward, today)"; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return PAGE_BASE_CATEGORY;
              }
          });
  
          items.add(new Item() {
  
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(showDateProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setShowDate((boolean) value);
              }
  
              @Override
              public Object getValue() {
                  return isShowDateHeader();
              }
  
              @Override
              public Class<?> getType() {
                  return Boolean.class;
              }
  
              @Override
              public String getName() {
                  return "Show Date"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Header with current month, day, or year."; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return PAGE_BASE_CATEGORY;
              }
          });
  
          items.add(new Item() {
  
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(dateTimeFormatterProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setDateTimeFormatter((DateTimeFormatter) value);
              }
  
              @Override
              public Object getValue() {
                  return getDateTimeFormatter();
              }
  
              @Override
              public Class<?> getType() {
                  return DateTimeFormatter.class;
              }
  
              @Override
              public String getName() {
                  return "Date Time Formatter"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Date time formatter"; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return PAGE_BASE_CATEGORY;
              }
          });
  
          items.add(new Item() {
  
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(hiddenProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setHidden((boolean) value);
              }
  
              @Override
              public Object getValue() {
                  return isHidden();
              }
  
              @Override
              public Class<?> getType() {
                  return Boolean.class;
              }
  
              @Override
              public String getName() {
                  return "Hidden"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Hides the page from the user."; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return PAGE_BASE_CATEGORY;
              }
          });
  
          return items;
      }