/** * Returns <code>TRUE</code> if the item should be filtered out. * * @param aItem item to check. * @return <code>TRUE</code> if the item should be filtered out. */ private boolean isFiltered(ResultItemPanel aItem) { if (limitTime == -1L) return false; Date date = aItem.getItem().getDate(); return date == null || date.getTime() <= limitTime; }
/** * Removes the panel of the item from the group. * * @param item item to remove the panel of. * @return panel removed or <code>NULL</code> if not found. */ public ResultItemPanel removeItemPanelFor(ResultItem item) { for (ResultItemPanel panel : items) { if (item == panel.getItem()) { // Panel found items.remove(panel); recalcView(); return panel; } } return null; }
/** * Registers item within the group. * * @param item item. * @return index within the group. */ public int register(ResultItemPanel item) { int visibleItemsCount = getVisibleItemsCount(); boolean priority = item.getItem().isPriority(); int index = priority ? 0 : items.size(); items.add(index, item); boolean filtered = isFiltered(item); item.setFiltered(filtered); if (!filtered) recalcView(); if (visibleItemsCount == 0) setVisible(true); return index; }