Skip to content

Commit

Permalink
refact: remove usage of deprecated constructors
Browse files Browse the repository at this point in the history
  • Loading branch information
bjansen committed Mar 10, 2024
1 parent 72ff1f4 commit c5c51a5
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 68 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.LangDataKeys;
import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.application.Result;
import com.intellij.openapi.command.WriteCommandAction;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project;
Expand All @@ -25,6 +23,8 @@

import java.util.List;

import static com.intellij.openapi.command.WriteCommandAction.runWriteCommandAction;

public class InlineRuleAction extends AnAction {
@Override
public void update(AnActionEvent e) {
Expand Down Expand Up @@ -74,14 +74,10 @@ public void actionPerformed(AnActionEvent e) {
final String ruleText = ruleText_; // we ref from inner class; requires final

// replace rule refs with rule text
WriteCommandAction setTextAction = new WriteCommandAction(project) {
@Override
protected void run(final Result result) {
// do in a single action so undo works in one go
replaceRuleRefs(doc,tokens,ruleName,rrefNodes,ruleText);
}
};
setTextAction.execute();
runWriteCommandAction(project, () ->
// do in a single action so undo works in one go
replaceRuleRefs(doc,tokens,ruleName,rrefNodes,ruleText)
);
}

public void replaceRuleRefs(Document doc, CommonTokenStream tokens,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.LangDataKeys;
import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.application.Result;
import com.intellij.openapi.command.WriteCommandAction;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project;
Expand All @@ -24,6 +22,8 @@

import java.util.List;

import static com.intellij.openapi.command.WriteCommandAction.runWriteCommandAction;

/** Make every ref to a rule unique by dup'ing the rule and making them
* rule1, rule2, etc...
*/
Expand Down Expand Up @@ -63,14 +63,10 @@ public void actionPerformed(AnActionEvent e) {
if ( ruleDefNameNode==null ) return;

// alter rule refs and dup rules
WriteCommandAction setTextAction = new WriteCommandAction(project) {
@Override
protected void run(final Result result) {
// do in a single action so undo works in one go
dupRuleAndMakeRefsUnique(doc, ruleName, rrefNodes);
}
};
setTextAction.execute();
runWriteCommandAction(project, () ->
// do in a single action so undo works in one go
dupRuleAndMakeRefsUnique(doc, ruleName, rrefNodes)
);
}

public void dupRuleAndMakeRefsUnique(Document doc,
Expand Down
16 changes: 6 additions & 10 deletions src/main/java/org/antlr/intellij/plugin/psi/MyPsiUtils.java
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
package org.antlr.intellij.plugin.psi;

import com.intellij.lang.ASTNode;
import com.intellij.openapi.application.Result;
import com.intellij.openapi.command.WriteCommandAction;
import com.intellij.openapi.project.Project;
import com.intellij.psi.PsiElement;
import com.intellij.psi.PsiFile;
Expand All @@ -23,6 +21,8 @@
import java.util.Iterator;
import java.util.List;

import static com.intellij.openapi.command.WriteCommandAction.runWriteCommandAction;

@SuppressWarnings("SimplifiableIfStatement")
public class MyPsiUtils {
@Nullable
Expand Down Expand Up @@ -101,14 +101,10 @@ public static PsiElement createLeafFromText(Project project, PsiElement context,

public static void replacePsiFileFromText(final Project project, final PsiFile psiFile, String text) {
final PsiFile newPsiFile = createFile(project, text);
WriteCommandAction setTextAction = new WriteCommandAction(project) {
@Override
protected void run(final Result result) {
psiFile.deleteChildRange(psiFile.getFirstChild(), psiFile.getLastChild());
psiFile.addRange(newPsiFile.getFirstChild(), newPsiFile.getLastChild());
}
};
setTextAction.execute();
runWriteCommandAction(project, () -> {
psiFile.deleteChildRange(psiFile.getFirstChild(), psiFile.getLastChild());
psiFile.addRange(newPsiFile.getFirstChild(), newPsiFile.getLastChild());
});
}

public static PsiFile createFile(Project project, String text) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
package org.antlr.intellij.plugin.refactor;

import com.intellij.openapi.application.Result;
import com.intellij.openapi.command.WriteCommandAction;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.project.Project;
import org.antlr.intellij.plugin.parser.ANTLRv4Parser;
import org.antlr.v4.runtime.CommonTokenStream;
import org.antlr.v4.runtime.Parser;
Expand Down Expand Up @@ -134,40 +130,6 @@ public static ParseTree getAncestorWithType(ParseTree t, Class<? extends ParseTr
return null;
}

public static int childIndexOf(ParseTree t, ParseTree child) {
if ( t==null || child==null ) return -1;
for (int i = 0; i < t.getChildCount(); i++) {
if ( child==t.getChild(i) ) return i;
}
return -1;
}

public static void replaceText(final Project project, final Document doc,
final int start, final int stop, // inclusive
final String text)
{
WriteCommandAction setTextAction = new WriteCommandAction(project) {
@Override
protected void run(final Result result) {
doc.replaceString(start, stop+1, text);
}
};
setTextAction.execute();
}

public static void insertText(final Project project, final Document doc,
final int where,
final String text)
{
WriteCommandAction setTextAction = new WriteCommandAction(project) {
@Override
protected void run(final Result result) {
doc.insertString(where, text);
}
};
setTextAction.execute();
}

/** Get start/stop of an entire rule including semi and then clean up
* WS at end.
*/
Expand Down

0 comments on commit c5c51a5

Please sign in to comment.