本文整理汇总了Java中org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection类的典型用法代码示例。如果您正苦于以下问题:Java JavaTextSelection类的具体用法?Java JavaTextSelection怎么用?Java JavaTextSelection使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
JavaTextSelection类属于org.eclipse.jdt.internal.ui.javaeditor包,在下文中一共展示了JavaTextSelection类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: isIntroduceFactoryAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isIntroduceFactoryAvailable(final JavaTextSelection selection)
throws JavaModelException {
final IJavaElement[] elements = selection.resolveElementAtOffset();
if (elements.length == 1 && elements[0] instanceof IMethod)
return isIntroduceFactoryAvailable((IMethod) elements[0]);
// there's no IMethod for the default constructor
if (!Checks.isAvailable(selection.resolveEnclosingElement())) return false;
ASTNode node = selection.resolveCoveringNode();
if (node == null) {
ASTNode[] selectedNodes = selection.resolveSelectedNodes();
if (selectedNodes != null && selectedNodes.length == 1) {
node = selectedNodes[0];
if (node == null) return false;
} else {
return false;
}
}
if (node.getNodeType() == ASTNode.CLASS_INSTANCE_CREATION) return true;
node = ASTNodes.getNormalizedNode(node);
if (node.getLocationInParent() == ClassInstanceCreation.TYPE_PROPERTY) return true;
return false;
}
示例2: isIntroduceIndirectionAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isIntroduceIndirectionAvailable(final JavaTextSelection selection)
throws JavaModelException {
final IJavaElement[] elements = selection.resolveElementAtOffset();
if (elements.length == 1)
return (elements[0] instanceof IMethod)
&& isIntroduceIndirectionAvailable(((IMethod) elements[0]));
ASTNode[] selectedNodes = selection.resolveSelectedNodes();
if (selectedNodes == null || selectedNodes.length != 1) return false;
switch (selectedNodes[0].getNodeType()) {
case ASTNode.METHOD_DECLARATION:
case ASTNode.METHOD_INVOCATION:
case ASTNode.SUPER_METHOD_INVOCATION:
return true;
default:
return false;
}
}
示例3: selectionChanged
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
@Override
public void selectionChanged(ITextSelection selection) {
if (selection instanceof JavaTextSelection) {
try {
JavaTextSelection javaTextSelection= (JavaTextSelection)selection;
IJavaElement[] elements= javaTextSelection.resolveElementAtOffset();
if (elements.length == 1) {
setEnabled(RefactoringAvailabilityTester.isRenameElementAvailable(elements[0]));
} else {
ASTNode node= javaTextSelection.resolveCoveringNode();
setEnabled(node instanceof SimpleName);
}
} catch (CoreException e) {
setEnabled(false);
}
} else {
setEnabled(true);
}
}
示例4: refactorMenuShown
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
private void refactorMenuShown(IMenuManager refactorSubmenu) {
// we know that we have an MenuManager since we created it in
// addRefactorSubmenu.
Menu menu= ((MenuManager)refactorSubmenu).getMenu();
menu.addMenuListener(new MenuAdapter() {
@Override
public void menuHidden(MenuEvent e) {
refactorMenuHidden();
}
});
ITextSelection textSelection= (ITextSelection)fEditor.getSelectionProvider().getSelection();
JavaTextSelection javaSelection= new JavaTextSelection(getEditorInput(), getDocument(), textSelection.getOffset(), textSelection.getLength());
for (Iterator<SelectionDispatchAction> iter= fActions.iterator(); iter.hasNext(); ) {
SelectionDispatchAction action= iter.next();
action.update(javaSelection);
}
refactorSubmenu.removeAll();
if (fillRefactorMenu(refactorSubmenu) == 0)
refactorSubmenu.add(fNoActionAvailable);
}
示例5: isIntroduceIndirectionAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isIntroduceIndirectionAvailable(final JavaTextSelection selection) throws JavaModelException {
final IJavaElement[] elements= selection.resolveElementAtOffset();
if (elements.length == 1)
return (elements[0] instanceof IMethod) && isIntroduceIndirectionAvailable(((IMethod) elements[0]));
ASTNode[] selectedNodes= selection.resolveSelectedNodes();
if (selectedNodes == null || selectedNodes.length != 1)
return false;
switch (selectedNodes[0].getNodeType()) {
case ASTNode.METHOD_DECLARATION:
case ASTNode.METHOD_INVOCATION:
case ASTNode.SUPER_METHOD_INVOCATION:
return true;
default:
return false;
}
}
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion-Juno38,代码行数:17,代码来源:RefactoringAvailabilityTester.java
示例6: isChangeSignatureAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isChangeSignatureAvailable(final JavaTextSelection selection)
throws JavaModelException {
final IJavaElement[] elements = selection.resolveElementAtOffset();
if (elements.length == 1 && (elements[0] instanceof IMethod))
return isChangeSignatureAvailable((IMethod) elements[0]);
final IJavaElement element = selection.resolveEnclosingElement();
return (element instanceof IMethod) && isChangeSignatureAvailable((IMethod) element);
}
示例7: isExtractConstantAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isExtractConstantAvailable(final JavaTextSelection selection) {
return (selection.resolveInClassInitializer()
|| selection.resolveInMethodBody()
|| selection.resolveInVariableInitializer()
|| selection.resolveInAnnotation())
&& Checks.isExtractableExpression(
selection.resolveSelectedNodes(), selection.resolveCoveringNode());
}
示例8: isExtractMethodAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isExtractMethodAvailable(final JavaTextSelection selection) {
return (selection.resolveInMethodBody()
|| selection.resolveInClassInitializer()
|| selection.resolveInVariableInitializer())
&& !selection.resolveInAnnotation()
&& RefactoringAvailabilityTester.isExtractMethodAvailable(selection.resolveSelectedNodes());
}
示例9: isExtractTempAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isExtractTempAvailable(final JavaTextSelection selection) {
final ASTNode[] nodes = selection.resolveSelectedNodes();
return (selection.resolveInMethodBody() || selection.resolveInClassInitializer())
&& !selection.resolveInAnnotation()
&& (Checks.isExtractableExpression(nodes, selection.resolveCoveringNode())
|| (nodes != null && nodes.length == 1 && nodes[0] instanceof ExpressionStatement));
}
示例10: isInlineTempAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isInlineTempAvailable(final JavaTextSelection selection)
throws JavaModelException {
final IJavaElement[] elements = selection.resolveElementAtOffset();
if (elements.length != 1) return false;
return (elements[0] instanceof ILocalVariable)
&& isInlineTempAvailable((ILocalVariable) elements[0]);
}
示例11: isMoveInnerAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isMoveInnerAvailable(final JavaTextSelection selection)
throws JavaModelException {
IType type =
RefactoringAvailabilityTester.getDeclaringType(selection.resolveEnclosingElement());
if (type == null) return false;
return isMoveInnerAvailable(type);
}
示例12: isMoveStaticAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isMoveStaticAvailable(final JavaTextSelection selection)
throws JavaModelException {
final IJavaElement element = selection.resolveEnclosingElement();
if (!(element instanceof IMember)) return false;
return RefactoringAvailabilityTester.isMoveStaticMembersAvailable(
new IMember[] {(IMember) element});
}
示例13: isPromoteTempAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isPromoteTempAvailable(final JavaTextSelection selection)
throws JavaModelException {
final IJavaElement[] elements = selection.resolveElementAtOffset();
if (elements.length != 1) return false;
return (elements[0] instanceof ILocalVariable)
&& isPromoteTempAvailable((ILocalVariable) elements[0]);
}
示例14: isReplaceInvocationsAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isReplaceInvocationsAvailable(final JavaTextSelection selection)
throws JavaModelException {
final IJavaElement[] elements = selection.resolveElementAtOffset();
if (elements.length != 1) return false;
IJavaElement element = elements[0];
return (element instanceof IMethod) && isReplaceInvocationsAvailable(((IMethod) element));
}
示例15: isChangeSignatureAvailable
import org.eclipse.jdt.internal.ui.javaeditor.JavaTextSelection; //导入依赖的package包/类
public static boolean isChangeSignatureAvailable(final JavaTextSelection selection) throws JavaModelException {
final IJavaElement[] elements= selection.resolveElementAtOffset();
if (elements.length == 1 && (elements[0] instanceof IMethod))
return isChangeSignatureAvailable((IMethod) elements[0]);
final IJavaElement element= selection.resolveEnclosingElement();
return (element instanceof IMethod) && isChangeSignatureAvailable((IMethod) element);
}