Java 类javax.activation.DataContentHandler 实例源码

项目:incubator-netbeans    文件:QuickSearch.java   
@Override
public void keyPressed(KeyEvent e) {
    int keyCode = e.getKeyCode();

    if (keyCode == KeyEvent.VK_ESCAPE) {
        removeSearchField();
        searchTextField.requestOriginalFocusOwner();
        ignoreEvents = true;
        try {
            // Clear the text after ESC
            searchTextField.setText("");                                // NOI18N
        } finally {
            ignoreEvents = false;
        }
        //fireQuickSearchCanceled();
        callback.quickSearchCanceled();
        hasSearchText = false;
        e.consume();
    } else if (keyCode == KeyEvent.VK_UP || (keyCode == KeyEvent.VK_F3 && e.isShiftDown())) {
        fireShowNextSelection(false);
        // Stop processing the event here. Otherwise it's dispatched
        // to the tree too (which scrolls)
        e.consume();
    } else if (keyCode == KeyEvent.VK_DOWN || keyCode == KeyEvent.VK_F3) {
        fireShowNextSelection(true);
        // Stop processing the event here. Otherwise it's dispatched
        // to the tree too (which scrolls)
        e.consume();
    } else if (keyCode == KeyEvent.VK_TAB) {
        findMaxPrefix(searchTextField.getText(), new DataContentHandlerFactory() {
            @Override
            public DataContentHandler createDataContentHandler(final String maxPrefix) {
                if (!SwingUtilities.isEventDispatchThread()) {
                    SwingUtilities.invokeLater(new Runnable() {
                        @Override
                        public void run() {
                            createDataContentHandler(maxPrefix);
                            searchTextField.transferFocus();
                        }
                    });
                    return null;
                }
                ignoreEvents = true;
                try {
                    searchTextField.setText(maxPrefix);
                } finally {
                    ignoreEvents = false;
                }
                return null;
            }
        });

        e.consume();
    } else if (keyCode == KeyEvent.VK_ENTER) {
        removeSearchField();
        //fireQuickSearchConfirmed();
        callback.quickSearchConfirmed();

        component.requestFocusInWindow();
        e.consume();
    }
}