code: @Override
      protected void initView() {
  
          node().setPrefSize(600, 600);
          node().setMaxSize(Region.USE_PREF_SIZE, Region.USE_PREF_SIZE);
          node().setMinSize(Region.USE_PREF_SIZE, Region.USE_PREF_SIZE);
  
          final ObservableList<Slide> items = FXCollections.observableArrayList(model().getSlides());
          node().setItems(items);
  
          node().getSelectionModel().setSelectionMode(SelectionMode.SINGLE);
  
          node().getSelectionModel().select(model().object());
          node().scrollTo(model().object());
  
          node().getSelectionModel().selectedItemProperty().addListener(
                                                                               (final ObservableValue<? extends Slide> ov, final Slide old_val, final Slide new_val) -> {
                                                                                   model().callCommand(ShowSlideCommand.class, WBuilder.waveData(PrezWaves.SLIDE, new_val));
                                                                                   ((Pane) node().getParent()).getChildren().remove(node());
                                                                               });
  
          node().setCellFactory(list -> {
              return new ListCell<Slide>() {
  
                  @Override
                  public void updateItem(final Slide item, final boolean empty) {
                      super.updateItem(item, empty);
                      if (item == null) {
                          setText(null);
                      } else {
                          setText(item.getPage() + ". " + item.getTitle());
                      }
                  }
  
              };
          });
      }
docs: {@inheritDoc}