本文整理汇总了Java中org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest.getReplacementLength方法的典型用法代码示例。如果您正苦于以下问题:Java ContentAssistRequest.getReplacementLength方法的具体用法?Java ContentAssistRequest.getReplacementLength怎么用?Java ContentAssistRequest.getReplacementLength使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest
的用法示例。
在下文中一共展示了ContentAssistRequest.getReplacementLength方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: addProposal
import org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest; //导入方法依赖的package包/类
private void addProposal(ContentAssistRequest contentAssistRequest, String name, INgBindingType bindingType,
String displayString, Image image, String additionalProposalInfo) {
String alternateMatch = bindingType.formatAttr(name);
StringBuilder replacementString = new StringBuilder(alternateMatch);
if (!hasValue) {
replacementString.append("=\"\"");
}
StringBuilder replacementStringCursor = new StringBuilder(alternateMatch);
replacementStringCursor.append("=\"\"");
int replacementOffset = contentAssistRequest.getReplacementBeginPosition();
int replacementLength = contentAssistRequest.getReplacementLength();
int cursorPosition = getCursorPositionForProposedText(replacementStringCursor.toString());
IContextInformation contextInformation = null;
int relevance = XMLRelevanceConstants.R_XML_ATTRIBUTE_NAME;
ICompletionProposal proposal = new HTMLAngularCompletionProposal(replacementString.toString(),
replacementOffset, replacementLength, cursorPosition, image, displayString, alternateMatch,
contextInformation, additionalProposalInfo, relevance);
contentAssistRequest.addProposal(proposal);
}
示例2: createStaticTextProposalComputerForUiAttribute
import org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest; //导入方法依赖的package包/类
private static IProposalComputer createStaticTextProposalComputerForUiAttribute(
String unprefixedAttrName, Node node,
ContentAssistRequest contentAssistRequest) {
Node uiBinderElement = XmlUtilities.getRootElement(node);
String fullAttrName = XmlUtilities.getName(uiBinderElement.getPrefix(),
unprefixedAttrName);
String proposalText = fullAttrName + "=\"\"";
// The cursor position will be inside the quotes
int replacementBeginPosition = contentAssistRequest.getReplacementBeginPosition();
int cursorPosition = replacementBeginPosition + proposalText.length() - 1;
return new StaticTextProposalComputer(new String[]{proposalText},
contentAssistRequest.getMatchString(), replacementBeginPosition,
contentAssistRequest.getReplacementLength(), cursorPosition,
XmlContentAssistUtilities.getImageForAttribute());
}
示例3: addTagInsertionProposals
import org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest; //导入方法依赖的package包/类
@Override
protected void addTagInsertionProposals(ContentAssistRequest contentAssistRequest,
int childPosition, CompletionProposalInvocationContext context)
{
int offset = contentAssistRequest.getReplacementBeginPosition();
int length = contentAssistRequest.getReplacementLength();
Node node = contentAssistRequest.getNode();
// Current node can be 'parent' when the cursor is just before the end tag of the parent.
Node parentNode = node.getNodeType() == Node.ELEMENT_NODE ? node : node.getParentNode();
if (parentNode.getNodeType() != Node.ELEMENT_NODE)
return;
String tagName = parentNode.getNodeName();
NamedNodeMap tagAttrs = parentNode.getAttributes();
// Result mapping proposals.
if ("resultMap".equals(tagName))
generateResults(contentAssistRequest, offset, length, parentNode,
tagAttrs.getNamedItem("type"));
else if ("collection".equals(tagName))
generateResults(contentAssistRequest, offset, length, parentNode,
tagAttrs.getNamedItem("ofType"));
else if ("association".equals(tagName))
generateResults(contentAssistRequest, offset, length, parentNode,
tagAttrs.getNamedItem("javaType"));
proposeStatementText(contentAssistRequest, parentNode);
}
示例4: addProposal
import org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest; //导入方法依赖的package包/类
private void addProposal(final ContentAssistRequest contentAssistRequest,
String name, DirectiveValue directiveValue, Directive directive,
String displayString, Image image, String additionalProposalInfo,
IDOMNode element, IIDETernProject ternProject) {
StringBuilder replacementString = new StringBuilder(name);
if (directiveValue != DirectiveValue.none)
replacementString.append("=\"\"");
if (directive != null) {
Collection<DirectiveParameter> parameters = directive
.getParameters();
for (DirectiveParameter parameter : parameters) {
if (!parameter.isOptionnal()
&& !hasParameterAttribute(parameter, element)) {
replacementString.append(" ").append(parameter.getName())
.append("=\"\"");
}
}
}
int replacementOffset = contentAssistRequest
.getReplacementBeginPosition();
int replacementLength = contentAssistRequest.getReplacementLength();
int cursorPosition = getCursorPositionForProposedText(replacementString
.toString());
IContextInformation contextInformation = null;
int relevance = XMLRelevanceConstants.R_XML_ATTRIBUTE_NAME;
ICompletionProposal proposal = new HTMLAngularCompletionProposal(
replacementString.toString(), replacementOffset,
replacementLength, cursorPosition, image, displayString,
contextInformation, additionalProposalInfo, relevance,
ternProject);
contentAssistRequest.addProposal(proposal);
}
示例5: populateAngularProposals
import org.eclipse.wst.xml.ui.internal.contentassist.ContentAssistRequest; //导入方法依赖的package包/类
private void populateAngularProposals(
final ContentAssistRequest contentAssistRequest, IDOMNode element,
IDocument document, final AngularType angularType,
final Integer startIndex) {
IFile file = DOMUtils.getFile(element);
IProject eclipseProject = file.getProject();
try {
IIDETernProject ternProject = AngularProject
.getTernProject(eclipseProject);
// get the expression to use for Tern completion
String expression = getExpression(contentAssistRequest, startIndex);
final int replacementOffset = getReplacementOffset(
contentAssistRequest, angularType,
element.getNodeType() != Node.TEXT_NODE);
// Create Tern doc + query
TernAngularQuery query = new TernAngularCompletionsQuery(
angularType);
query.setExpression(expression);
ITernScriptPath scriptPath = AngularScopeHelper.populateScope(
element, file, angularType, query);
// Execute Tern completion
ITernCompletionCollector collector = new ITernCompletionCollector() {
@Override
public void addProposal(TernCompletionProposalRec proposalItem,
Object completion, IJSONObjectHelper jsonObjectHelper) {
ICompletionProposal proposal = null;
if (isModuleOrController(angularType)) {
MarkupAngularCompletionProposal markupPproposal = new MarkupAngularCompletionProposal(
new AngularCompletionProposalRec(proposalItem,
replacementOffset), completion,
jsonObjectHelper, angularType);
// in the case of "module", "controller" completion
// the value must replace the existing value.
String replacementString = "\"" + proposalItem.name
+ "\"";
int replacementLength = contentAssistRequest
.getReplacementLength();
int cursorPosition = getCursorPositionForProposedText(replacementString) - 2;
markupPproposal.setReplacementString(replacementString);
markupPproposal.setReplacementLength(replacementLength);
markupPproposal.setCursorPosition(cursorPosition);
markupPproposal.setReplacementOffset(replacementOffset);
markupPproposal.setImage(HTMLAngularPrinter
.getImage(angularType));
proposal = markupPproposal;
} else {
proposal = new JSAngularCompletionProposal(
new AngularCompletionProposalRec(
proposalItem,
replacementOffset
- (proposalItem.end - proposalItem.start)),
completion, jsonObjectHelper, angularType);
}
contentAssistRequest.addProposal(proposal);
}
};
if (scriptPath != null) {
ternProject.request(query, null, scriptPath, null,
null, collector);
} else {
ITernFile tf = new TernDocumentFile(file, document);
ternProject.request(query, null, null, element, tf,
collector);
}
} catch (Exception e) {
Trace.trace(Trace.SEVERE, "Error while tern completion.", e);
}
}