public Record getSelectedRecord() { try { final int index = messageLedger.getSelectedRow(); return index >= 0 ? application.getFilteredLedger().get(index) : null; } catch (IndexOutOfBoundsException e) { logger.error(e, "Failed to get selected record from ledger."); return null; } }
private void connectListeners() { final ListSelectionModel messageLedgerSelectionModel = messageLedger.getSelectionModel(); messageLedgerSelectionModel.addListSelectionListener(new MessageLedgerListener()); for (Object action : Actions.getActions()) { if (action instanceof ListSelectionListener) { messageLedgerSelectionModel.addListSelectionListener((ListSelectionListener) action); } } }
private JMenu createViewMenu(RecordLedgerTable table) { final JMenu view = new JMenu("View"); view.setMnemonic('v'); view.add(application.getAction(SelectAllRecords.COMMAND)); view.add(application.getAction(ShowAllColumns.COMMAND)); view.addSeparator(); view.add(application.getAction(Filter.COMMAND)); view.add(application.getAction(FilterBySelection.COMMAND)); view.addSeparator(); final JMenu viewColumns = new JMenu("Columns"); viewColumns.setIcon(new ImageIcon("/resources/icons/filter_columns.png")); viewColumns.addMenuListener(new VisibleColumnsMenuManager(table.getTableFormat())); view.add(viewColumns); final JMenu viewTypes = new JMenu("Types"); viewTypes.setIcon(new ImageIcon("/resources/icons/editRecordTypes.png")); viewTypes.addMenuListener(new RecordTypesMenuManager(application)); view.add(viewTypes); return view; }
private RecordLedgerTable createMessageLedger(RecordLedger ledger) { final RecordLedgerTable table = new RecordLedgerTable(ledger, application.getConnections(), recordTypes); columnsPopup.addPopupMenuListener(new VisibleColumnsMenuManager(table.getTableFormat())); return table; }