Example usage for com.intellij.openapi.actionSystem IdeActions ACTION_CHOOSE_LOOKUP_ITEM_REPLACE

List of usage examples for com.intellij.openapi.actionSystem IdeActions ACTION_CHOOSE_LOOKUP_ITEM_REPLACE

Introduction

In this page you can find the example usage for com.intellij.openapi.actionSystem IdeActions ACTION_CHOOSE_LOOKUP_ITEM_REPLACE.

Prototype

String ACTION_CHOOSE_LOOKUP_ITEM_REPLACE

To view the source code for com.intellij.openapi.actionSystem IdeActions ACTION_CHOOSE_LOOKUP_ITEM_REPLACE.

Click Source Link

Usage

From source file:com.intellij.testFramework.fixtures.impl.CodeInsightTestFixtureImpl.java

License:Apache License

@Override
public void type(final char c) {
    assertInitialized();/*from   ww  w  . j av a  2 s . co m*/
    UIUtil.invokeAndWaitIfNeeded(new Runnable() {
        @Override
        public void run() {
            final EditorActionManager actionManager = EditorActionManager.getInstance();
            if (c == '\b') {
                performEditorAction(IdeActions.ACTION_EDITOR_BACKSPACE);
                return;
            }
            if (c == '\n') {
                if (_performEditorAction(IdeActions.ACTION_CHOOSE_LOOKUP_ITEM)) {
                    return;
                }

                performEditorAction(IdeActions.ACTION_EDITOR_ENTER);
                return;
            }
            if (c == '\t') {
                if (_performEditorAction(IdeActions.ACTION_CHOOSE_LOOKUP_ITEM_REPLACE)) {
                    return;
                }
                if (_performEditorAction(IdeActions.ACTION_EXPAND_LIVE_TEMPLATE_BY_TAB)) {
                    return;
                }
                if (_performEditorAction(IdeActions.ACTION_EDITOR_NEXT_TEMPLATE_VARIABLE)) {
                    return;
                }
                if (_performEditorAction(IdeActions.ACTION_EDITOR_TAB)) {
                    return;
                }
            }
            if (c == Lookup.COMPLETE_STATEMENT_SELECT_CHAR) {
                if (_performEditorAction(IdeActions.ACTION_CHOOSE_LOOKUP_ITEM_COMPLETE_STATEMENT)) {
                    return;
                }
            }

            CommandProcessor.getInstance().executeCommand(getProject(), new Runnable() {
                @Override
                public void run() {
                    CommandProcessor.getInstance().setCurrentCommandGroupId(myEditor.getDocument());
                    ActionManagerEx.getInstanceEx().fireBeforeEditorTyping(c, getEditorDataContext());
                    actionManager.getTypedAction().actionPerformed(getEditor(), c, getEditorDataContext());
                }
            }, null, DocCommandGroupId.noneGroupId(myEditor.getDocument()));
        }
    });
}