ServiceBasedSplitLayout extends BaseSplitLayout<ID, T> { @Override public ServiceBasedGridWrapper<ID, T> getGridWrapper() { return (ServiceBasedGridWrapper<ID, T>) super.getGridWrapper(); } ServiceBasedSplitLayout(BaseService<ID, T> service, EntityModel<T> entityModel, QueryType queryType,
			FormOptions formOptions, SortOrder<?> sortOrder, FetchJoinInformation... joins); SerializablePredicate<T> getFilter(); Supplier<SerializablePredicate<T>> getFilterSupplier(); @Override ServiceBasedGridWrapper<ID, T> getGridWrapper(); QueryType getQueryType(); Function<String, SerializablePredicate<T>> getQuickSearchFilterSupplier(); @Override void reload(); void setFilterSupplier(Supplier<SerializablePredicate<T>> filterSupplier); void setQuickSearchFilterSupplier(Function<String, SerializablePredicate<T>> quickSearchFilterSupplier); @SuppressWarnings("unchecked") @Override void setSelectedItems(Object selectedItems);  }
@Test public void testCreateInVerticalMode() { FormOptions fo = new FormOptions().setShowQuickSearchField(true).setScreenMode(ScreenMode.VERTICAL); ServiceBasedSplitLayout<Integer, TestEntity> layout = new ServiceBasedSplitLayout<Integer, TestEntity>(testEntityService, entityModelFactory.getModel(TestEntity.class), QueryType.PAGING, fo, new SortOrder<String>("name", SortDirection.ASCENDING)); layout.build(); layout.getGridWrapper().getGrid().select(e1); assertEquals(e1, layout.getSelectedItem()); TextField tf = (TextField) layout.getEditForm().getField("name"); tf.setValue("NewName"); layout.getEditForm().getSaveButtons().get(0).click(); assertEquals("NewName", e1.getName()); }