private boolean applyFilter(FieldFilter fieldFilter) { if (currentModel == null) return false; boolean result = false; ArrayList filter = (ArrayList) currentModel.getFilter().clone(); if (fieldFilter != null) filter.add(fieldFilter); CustomFilterDialog dialog = new CustomFilterDialog( frame, filter, currentModel.getTags(), dataDictionary.getDataDictionary()); dialog.setVisible(true); filter = dialog.getFilter(); if (filter != null) { currentModel.filter(filter); result = true; } else { menuBar.undo(); result = false; } dialog.dispose(); return result; }