Filtering a multi-select object

Maybe I’m missing something simple here - hope someone can point me in the right direction. I currently have a Select object which I am populating with a list of files. I have added a filter so that users can start typing into the selector and it winnows the list down as you type. I would like to add the ability to let the user select multiple items from the (possibly filtered) list.

It looks like the setMultiSelect() function is deprecated, so I should switch this to a ListSelect object. But ListSelect doesn’t seem to let me add a filter.
What is the correct solution for this?

And a second question - if I turn off the ‘immediate’ flag, how can I tell when all the selections are complete? Does the valueChangeEvent routine get called multiple times as the user makes additional selections? Should I leave the immediate flag on?

My code currently looks like this:

            select sel_RRD = new Select("Choose File");
            sel_RRD.setContainerDataSource(jc_RRD_Record);
	sel_RRD.setItemCaptionMode(Select.ITEM_CAPTION_MODE_PROPERTY);
	sel_RRD.setItemCaptionPropertyId("rrdPath");
	sel_RRD.setFilteringMode(AbstractSelect.Filtering.FILTERINGMODE_CONTAINS);
	sel_RRD.setImmediate(true);
	sel_RRD.setWidth("500px");
	sel_RRD.addListener(new ValueChangeListener(){
		private static final long serialVersionUID = 1L;

		public void valueChange(ValueChangeEvent event) {
			Integer rrdId = (Integer) sel_RRD.getValue();
			Logger.info("Selected = " + rrdId);
			app.setSelected_RRD_Id(rrdId);   // **** I'd like to be able to get a list of files here...
		}
	});

Thanks,

nbc

The special filtering in Select (and ComboBox) is specific to that component. There’s also a generic filtering API where the filter added to the container. See
this example
and the
Book
.

And yes, multi-select is deprecated for Select as it is unsuitable for it.

It’s all in knowing where to look - thanks very much!

nbc