private StoreFilterField<GPSimpleUser> createServerFilter( StoreFilterField<GPSimpleUser> storeFilterField, ListStore<GPSimpleUser> store, String filterLabel) { storeFilterField = new StoreFilterField<GPSimpleUser>() { @Override protected boolean doSelect( Store<GPSimpleUser> store, GPSimpleUser parent, GPSimpleUser record, String property, String filter) { String name = record.getName().toString().toLowerCase(); if (name.contains(filter.toLowerCase())) { return Boolean.TRUE; } return Boolean.FALSE; } }; storeFilterField.setEmptyText("Type the user to filter"); storeFilterField.bind(store); storeFilterField.setFieldLabel(filterLabel); return storeFilterField; }
/** * Creates, configures and adds the components palette toolbar.<br> * * @param componentsReceiver */ private void addToolbar() { // the toolbar ToolBar gridToolBar = new ToolBar(); setTopComponent(gridToolBar); SelectionListener<ButtonEvent> ttiAddListener = new SelectionListener<ButtonEvent>() { @Override public void componentSelected(ButtonEvent ce) { GridSelectionModel<PaletteModelData> selectionModel = gComponents.getSelectionModel(); List<PaletteModelData> lSelected = selectionModel.getSelectedItems(); if (!lSelected.isEmpty()) { componentsReceiver.receiveComponents(lSelected); hide(); selectionModel.deselectAll(); ttiAddSelected.disable(); } } }; ttiAddSelected = buttonsSupport.addGenericButton( pmsMessages.labelAddSelected(), styles.iNew(), gridToolBar, ttiAddListener); ttiAddSelected.disable(); gridToolBar.add(new FillToolItem()); StoreFilterField<PaletteModelData> filter = new CustomizableStoreFilter<PaletteModelData>( Arrays.asList( new String[] { PaletteModelData.PROPERTY_NAME, PaletteModelData.PROPERTY_DESCRIPTION })); filter.setHideLabel(false); filter.setFieldLabel(messages.labelFilter()); filter.bind(sGrid); gridToolBar.add(filter); setTopComponent(gridToolBar); }