public SearchDialogPanel(OWLEditorKit editorKit) { this.editorKit = editorKit; setLayout(new BorderLayout()); searchField = new AugmentedJTextField("Enter search string"); searchPanel = new SearchPanel(editorKit); add(searchField, BorderLayout.NORTH); add(searchPanel, BorderLayout.CENTER); searchField.addKeyListener( new KeyAdapter() { public void keyReleased(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_ENTER) { selectEntity(); } } public void keyPressed(KeyEvent e) { if (e.getKeyCode() == KeyEvent.VK_UP) { searchPanel.moveSelectionUp(); e.consume(); } if (e.getKeyCode() == KeyEvent.VK_DOWN) { searchPanel.moveSelectionDown(); e.consume(); } } }); searchField .getDocument() .addDocumentListener( new DocumentListener() { public void changedUpdate(DocumentEvent e) {} public void insertUpdate(DocumentEvent e) { performSearch(); } public void removeUpdate(DocumentEvent e) { performSearch(); } }); searchPanel.setSearchResultClickedListener( new SearchResultClickedListener() { @Override public void handleSearchResultClicked(SearchResult searchResult, MouseEvent e) { if (e.getClickCount() == 2) { selectEntity(); } } }); }