public void mouseReleased(MouseEvent e) { if(e.isPopupTrigger()) { ChartEntity ce = chartPanel.getEntityForPoint(e.getX(), e.getY()); List messages = null; if(ce instanceof CategoryItemEntity) { CategoryItemEntity entity = (CategoryItemEntity)ce; GroupedCategoryDataset dataset = (GroupedCategoryDataset)entity.getDataset(); messages = dataset.getList(entity.getRowKey(), entity.getColumnKey()); } if(ce instanceof PieSectionEntity) { PieSectionEntity entity = (PieSectionEntity)ce; messages = dataset_total.getList(entity.getSectionKey(), entity.getPieIndex()); } if(messages != null) { MessageFilterMenu mpopup = new MessageFilterMenu(tooltab.getPlugin(), (Message[])messages.toArray(new Message[messages.size()])); mpopup.show(e.getComponent(), e.getX(), e.getY()); } } } }