myReplaceAllCb.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
- final TemplateState templateState = TemplateManagerImpl.getTemplateState(myEditor);
- if (templateState != null) {
- templateState.gotoEnd(true);
- myTypeSelectorManager = new TypeSelectorManagerImpl(myProject, myDefaultParameterTypePointer.getType(), null, myExpr, myOccurrences);
- startIntroduceTemplate(isReplaceAllOccurrences(), myFieldTypePointer.getType());
- }
+ Runnable restartTemplateRunnable = new Runnable() {
+ public void run() {
+ final TemplateState templateState = TemplateManagerImpl.getTemplateState(myEditor);
+ if (templateState != null) {
+ templateState.gotoEnd(true);
+ myTypeSelectorManager = new TypeSelectorManagerImpl(myProject, myDefaultParameterTypePointer.getType(), null, myExpr, myOccurrences);
+ startIntroduceTemplate(isReplaceAllOccurrences(), myFieldTypePointer.getType());
+ }
+ }
+ };
+ CommandProcessor.getInstance().executeCommand(myProject, restartTemplateRunnable, IntroduceConstantHandler.REFACTORING_NAME, IntroduceConstantHandler.REFACTORING_NAME);
}
});
*/
package com.intellij.refactoring.introduceField;
+import com.intellij.codeInsight.CodeInsightBundle;
import com.intellij.codeInsight.intention.impl.TypeExpression;
import com.intellij.codeInsight.template.impl.TemplateManagerImpl;
import com.intellij.codeInsight.template.impl.TemplateState;
import com.intellij.openapi.application.ApplicationManager;
+import com.intellij.openapi.application.Result;
import com.intellij.openapi.command.CommandProcessor;
+import com.intellij.openapi.command.WriteCommandAction;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.editor.RangeMarker;
import com.intellij.openapi.editor.ScrollType;
myIntroduceFieldPanel.addOccurrenceListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
- final TemplateState templateState = TemplateManagerImpl.getTemplateState(myEditor);
- if (templateState != null) {
- templateState.gotoEnd(true);
- myTypeSelectorManager = new TypeSelectorManagerImpl(myProject, myDefaultParameterTypePointer.getType(), null, myInitializerExpression, myOccurrences);
- startTemplate(myIntroduceFieldPanel.isReplaceAllOccurrences(), myFieldTypePointer.getType());
- }
+ final Runnable restartTemplate = new Runnable() {
+ @Override
+ public void run() {
+ final TemplateState templateState =
+ TemplateManagerImpl.getTemplateState(myEditor);
+ if (templateState != null) {
+ templateState.gotoEnd(true);
+ myTypeSelectorManager = new TypeSelectorManagerImpl(myProject, myDefaultParameterTypePointer.getType(), null, myInitializerExpression, myOccurrences);
+ startTemplate(myIntroduceFieldPanel.isReplaceAllOccurrences(), myFieldTypePointer.getType());
+ }
+ }
+ };
+ CommandProcessor.getInstance().executeCommand(myProject, restartTemplate,
+ IntroduceFieldHandler.REFACTORING_NAME,
+ IntroduceFieldHandler.REFACTORING_NAME);
}
});
}
protected void updateControls(JCheckBox[] removeParamsCb) {
super.updateControls(removeParamsCb);
if (myParameterIndex < 0) return;
- final TemplateState templateState = TemplateManagerImpl.getTemplateState(myEditor);
- if (templateState != null) {
- PsiDocumentManager.getInstance(myProject).commitDocument(myEditor.getDocument());
- final PsiParameter parameter = getParameter();
- final boolean hasFinalModifier = parameter.hasModifierProperty(PsiModifier.FINAL);
- templateState.gotoEnd(true);
- startIntroduceTemplate(isReplaceAllOccurences(), hasFinalModifier);
- }
+ Runnable restartTemplateRunnable = new Runnable() {
+ public void run() {
+ final TemplateState templateState = TemplateManagerImpl.getTemplateState(myEditor);
+ if (templateState != null) {
+ PsiDocumentManager.getInstance(myProject).commitDocument(myEditor.getDocument());
+ final PsiParameter parameter = getParameter();
+ final boolean hasFinalModifier = parameter.hasModifierProperty(PsiModifier.FINAL);
+ templateState.gotoEnd(true);
+ startIntroduceTemplate(isReplaceAllOccurences(), hasFinalModifier);
+ }
+ }
+ };
+ CommandProcessor.getInstance().executeCommand(myProject, restartTemplateRunnable, IntroduceParameterHandler.REFACTORING_NAME, IntroduceParameterHandler.REFACTORING_NAME);
}