static JButton tableDependentButton_extraCondition(JTable table, S text, O action, F0 extraCondition) { final JButton b = jbutton(text, action); onTableSelectionChangedAndNow(table, r { b.setEnabled(table.getSelectedRow() >= 0 && isTrue(callF(extraCondition))) }); ret b; } static JButton tableDependentButton_extraCondition(JTable table, IF0 extraCondition, S text, Runnable action) { JButton b = jbutton(text, action); onTableSelectionChangedAndNow(table, r { b.setEnabled(table.getSelectedRow() >= 0 && (extraCondition == null || extraCondition!)); }); ret b; }