private void setupChangeListeners() {
    // update tiles list whenever modules or the pageIndex of this page have changed
    modulesChangedListener = observable -> updateTiles();
    modules.addListener(modulesChangedListener);
    pageIndex.addListener(modulesChangedListener);
    modulesPerPage.addListener(modulesChangedListener);
  }
Constructs a new {@link Tab}.

@param workbench which created this {@link Tab}
workbenchfx-core/src/main/java/com/dlsc/workbenchfx/view/controls/module/Page.java