*/
protected void filterApply(String columnId, List<String> values) {
if (!displayerSettings.isFilterEnabled()) return;
// For string column filters, create and notify a group interval selection operation.
DataSetGroup groupOp = dataSetHandler.getGroupOperation(columnId);
DataSetGroup _groupSelect = null;
if (groupOp != null && groupOp.getColumnGroup() != null) {
_groupSelect = groupOp.cloneInstance();
_groupSelect.setSelectedIntervalNames(values);
} else {
_groupSelect = new DataSetGroup();
_groupSelect.setSelectedIntervalNames(values);
_groupSelect.setColumnGroup(new ColumnGroup(columnId, columnId, GroupStrategy.DYNAMIC));
}
// Notify to those interested parties the selection event.
if (displayerSettings.isFilterNotificationEnabled()) {
for (DisplayerListener listener : listenerList) {
listener.onGroupIntervalsSelected(this, _groupSelect);