package com.jetbrains.lang.dart.ide.surroundWith.statement;
import com.intellij.psi.PsiElement;
import com.jetbrains.lang.dart.psi.DartTryStatement;
import org.jetbrains.annotations.Nullable;
public class DartWithTryCatchFinallySurrounder extends DartBlockStatementSurrounderBase {
@Override
public String getTemplateDescription() {
return "try / catch / finally";
}
@Override
protected String getTemplateText() {
return "try {\n} catch (e) {\ncaret_here: print(e);\n} finally {\n}";
}
@Override
@Nullable
protected PsiElement findElementToDelete(PsiElement surrounder) {
//noinspection ConstantConditions
return ((DartTryStatement)surrounder).getOnPartList().get(0).getBlock().getStatements().getFirstChild(); // todo preselect print(e);
}
}