Search in sources :

Example 1 with ReferenceEditorWithBrowseButton

use of com.intellij.ui.ReferenceEditorWithBrowseButton in project intellij-community by JetBrains.

the class PsiClassControl method createMainComponent.

protected PsiClassPanel createMainComponent(PsiClassPanel boundedComponent, final Project project) {
    if (boundedComponent == null) {
        boundedComponent = new PsiClassPanel();
    }
    ReferenceEditorWithBrowseButton editor = JavaReferenceEditorUtil.createReferenceEditorWithBrowseButton(null, "", project, true);
    Document document = editor.getChildComponent().getDocument();
    PsiCodeFragmentImpl fragment = (PsiCodeFragmentImpl) PsiDocumentManager.getInstance(project).getPsiFile(document);
    assert fragment != null;
    fragment.setIntentionActionsFilter(IntentionFilterOwner.IntentionActionsFilter.EVERYTHING_AVAILABLE);
    fragment.putUserData(ModuleUtil.KEY_MODULE, getDomWrapper().getExistingDomElement().getModule());
    return initReferenceEditorWithBrowseButton(boundedComponent, editor, this);
}
Also used : ReferenceEditorWithBrowseButton(com.intellij.ui.ReferenceEditorWithBrowseButton) Document(com.intellij.openapi.editor.Document) PsiCodeFragmentImpl(com.intellij.psi.impl.source.PsiCodeFragmentImpl)

Example 2 with ReferenceEditorWithBrowseButton

use of com.intellij.ui.ReferenceEditorWithBrowseButton in project intellij-community by JetBrains.

the class TextControl method createMainComponent.

@Override
protected TextPanel createMainComponent(TextPanel boundedComponent, final Project project) {
    if (boundedComponent == null) {
        boundedComponent = new TextPanel();
    }
    boundedComponent.removeAll();
    final Function<String, Document> factory = s -> PsiDocumentManager.getInstance(project).getDocument(PsiFileFactory.getInstance(project).createFileFromText("a.txt", PlainTextLanguage.INSTANCE, "", true, false));
    final TextPanel boundedComponent1 = boundedComponent;
    final EditorTextField editorTextField = new EditorTextField(factory.fun(""), project, FileTypes.PLAIN_TEXT) {

        @Override
        protected EditorEx createEditor() {
            final EditorEx editor = super.createEditor();
            return boundedComponent1 instanceof MultiLineTextPanel ? makeBigEditor(editor, ((MultiLineTextPanel) boundedComponent1).getRowCount()) : editor;
        }

        @Override
        protected boolean isOneLineMode() {
            return false;
        }
    };
    if (boundedComponent instanceof BigTextPanel) {
        final ReferenceEditorWithBrowseButton editor = new ReferenceEditorWithBrowseButton(null, editorTextField, factory);
        boundedComponent.add(editor);
        editor.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                EditorTextField textArea = new EditorTextField(editorTextField.getDocument(), project, FileTypes.PLAIN_TEXT) {

                    @Override
                    protected EditorEx createEditor() {
                        final EditorEx editor = super.createEditor();
                        editor.setEmbeddedIntoDialogWrapper(true);
                        return makeBigEditor(editor, 5);
                    }

                    @Override
                    protected boolean isOneLineMode() {
                        return false;
                    }
                };
                DialogBuilder builder = new DialogBuilder(project);
                builder.setDimensionServiceKey("TextControl");
                builder.setCenterPanel(textArea);
                builder.setPreferredFocusComponent(textArea);
                builder.setTitle(UIBundle.message("big.text.control.window.title"));
                builder.addCloseButton();
                builder.show();
            }
        });
        return boundedComponent;
    }
    boundedComponent.add(editorTextField);
    return boundedComponent;
}
Also used : EditorTextField(com.intellij.ui.EditorTextField) PsiFileFactory(com.intellij.psi.PsiFileFactory) ActionListener(java.awt.event.ActionListener) Document(com.intellij.openapi.editor.Document) ActionEvent(java.awt.event.ActionEvent) java.awt(java.awt) DialogBuilder(com.intellij.openapi.ui.DialogBuilder) ReferenceEditorWithBrowseButton(com.intellij.ui.ReferenceEditorWithBrowseButton) Function(com.intellij.util.Function) FileTypes(com.intellij.openapi.fileTypes.FileTypes) Project(com.intellij.openapi.project.Project) EditorEx(com.intellij.openapi.editor.ex.EditorEx) UIBundle(com.intellij.ui.UIBundle) NotNull(org.jetbrains.annotations.NotNull) PlainTextLanguage(com.intellij.openapi.fileTypes.PlainTextLanguage) PsiDocumentManager(com.intellij.psi.PsiDocumentManager) javax.swing(javax.swing) EditorEx(com.intellij.openapi.editor.ex.EditorEx) ActionEvent(java.awt.event.ActionEvent) Document(com.intellij.openapi.editor.Document) ActionListener(java.awt.event.ActionListener) EditorTextField(com.intellij.ui.EditorTextField) ReferenceEditorWithBrowseButton(com.intellij.ui.ReferenceEditorWithBrowseButton) DialogBuilder(com.intellij.openapi.ui.DialogBuilder)

Aggregations

Document (com.intellij.openapi.editor.Document)2 ReferenceEditorWithBrowseButton (com.intellij.ui.ReferenceEditorWithBrowseButton)2 EditorEx (com.intellij.openapi.editor.ex.EditorEx)1 FileTypes (com.intellij.openapi.fileTypes.FileTypes)1 PlainTextLanguage (com.intellij.openapi.fileTypes.PlainTextLanguage)1 Project (com.intellij.openapi.project.Project)1 DialogBuilder (com.intellij.openapi.ui.DialogBuilder)1 PsiDocumentManager (com.intellij.psi.PsiDocumentManager)1 PsiFileFactory (com.intellij.psi.PsiFileFactory)1 PsiCodeFragmentImpl (com.intellij.psi.impl.source.PsiCodeFragmentImpl)1 EditorTextField (com.intellij.ui.EditorTextField)1 UIBundle (com.intellij.ui.UIBundle)1 Function (com.intellij.util.Function)1 java.awt (java.awt)1 ActionEvent (java.awt.event.ActionEvent)1 ActionListener (java.awt.event.ActionListener)1 javax.swing (javax.swing)1 NotNull (org.jetbrains.annotations.NotNull)1