docs: @Override
      public ObservableList<Item> getPropertySheetItems() {
          ObservableList<Item> items = super.getPropertySheetItems();
  
          items.add(new Item() {
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(clickBehaviourProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setClickBehaviour((ClickBehaviour) value);
              }
  
              @Override
              public Object getValue() {
                  return getClickBehaviour();
              }
  
              @Override
              public Class<?> getType() {
                  return ClickBehaviour.class;
              }
  
              @Override
              public String getName() {
                  return "Click Behaviour"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Click behaviour"; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return MONTH_VIEW_CATEGORY;
              }
          });
  
          items.add(new Item() {
  
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(showMonthProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setShowMonth((boolean) value);
              }
  
              @Override
              public Object getValue() {
                  return isShowMonth();
              }
  
              @Override
              public Class<?> getType() {
                  return Boolean.class;
              }
  
              @Override
              public String getName() {
                  return "Show Month"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Show or hide the name of the month"; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return MONTH_VIEW_CATEGORY;
              }
          });
  
          items.add(new Item() {
  
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(showTodayButtonProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setShowTodayButton((boolean) value);
              }
  
              @Override
              public Object getValue() {
                  return isShowTodayButton();
              }
  
              @Override
              public Class<?> getType() {
                  return Boolean.class;
              }
  
              @Override
              public String getName() {
                  return "Show Today Button"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Show or hide the 'today' button"; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return MONTH_VIEW_CATEGORY;
              }
          });
  
          items.add(new Item() {
  
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(showUsageColorsProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setShowUsageColors((boolean) value);
              }
  
              @Override
              public Object getValue() {
                  return isShowUsageColors();
              }
  
              @Override
              public Class<?> getType() {
                  return Boolean.class;
              }
  
              @Override
              public String getName() {
                  return "Show Usage Colors"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Show Usage Colors"; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return MONTH_VIEW_CATEGORY;
              }
          });
  
          items.add(new Item() {
  
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(showYearProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setShowYear((boolean) value);
              }
  
              @Override
              public Object getValue() {
                  return isShowYear();
              }
  
              @Override
              public Class<?> getType() {
                  return Boolean.class;
              }
  
              @Override
              public String getName() {
                  return "Show Year"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Show or hide the year"; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return MONTH_VIEW_CATEGORY;
              }
          });
  
          items.add(new Item() {
  
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(showYearArrowsProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setShowYearArrows((boolean) value);
              }
  
              @Override
              public Object getValue() {
                  return isShowYearArrows();
              }
  
              @Override
              public Class<?> getType() {
                  return Boolean.class;
              }
  
              @Override
              public String getName() {
                  return "Show Year Arrows"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Show or hide the year adjuster arrows"; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return MONTH_VIEW_CATEGORY;
              }
          });
  
          items.add(new Item() {
  
              @Override
              public Optional<ObservableValue<?>> getObservableValue() {
                  return Optional.of(showMonthArrowsProperty());
              }
  
              @Override
              public void setValue(Object value) {
                  setShowMonthArrows((boolean) value);
              }
  
              @Override
              public Object getValue() {
                  return isShowMonthArrows();
              }
  
              @Override
              public Class<?> getType() {
                  return Boolean.class;
              }
  
              @Override
              public String getName() {
                  return "Show Month Arrows"; //$NON-NLS-1$
              }
  
              @Override
              public String getDescription() {
                  return "Show or hide the month adjustment arrows"; //$NON-NLS-1$
              }
  
              @Override
              public String getCategory() {
                  return MONTH_VIEW_CATEGORY;
              }
          });
  
          return items;
      }