• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java TemplateContext类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.eclipse.jface.text.templates.TemplateContext的典型用法代码示例。如果您正苦于以下问题:Java TemplateContext类的具体用法?Java TemplateContext怎么用?Java TemplateContext使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



TemplateContext类属于org.eclipse.jface.text.templates包,在下文中一共展示了TemplateContext类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: TweakedTemplateProposal

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
/**
 * Creates a template proposal with a template and its context.
 *
 * @param template
 *            the template
 * @param context
 *            the context in which the template was requested.
 * @param image
 *            the icon of the proposal.
 * @param region
 *            the region this proposal is applied to
 * @param relevance
 *            the relevance of the proposal
 */
public TweakedTemplateProposal(Template template, TemplateContext context, IRegion region, Image image,
		int relevance) {
	Assert.isNotNull(template);
	Assert.isNotNull(context);
	Assert.isNotNull(region);

	fTemplate = template;

	Check.isTrue(context instanceof FtcDocumentTemplateContext);
	fContext = (FtcDocumentTemplateContext) context;

	fImage = image;
	fRegion = region;

	fDisplayString = null;

	fRelevance = relevance;
}
 
开发者ID:curiosag,项目名称:ftc,代码行数:33,代码来源:TweakedTemplateProposal.java


示例2: resolveAll

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
protected String[] resolveAll(TemplateContext context) {

	Check.isTrue(context instanceof FtcDocumentTemplateContext);
	FtcDocumentTemplateContext ftcContext = (FtcDocumentTemplateContext) context;

	String pattern = ftcContext.getCurrentTemplate().getPattern();
	Check.notNull(pattern);
	String currentText = ftcContext.getDocument().get();
	ICompletionProposal[] proposals = createCompletionProposals(ftcContext.getCompletionOffset(), getType(),
			pattern, currentText);

	String[] result = new String[proposals.length];
	for (int i = 0; i < proposals.length; i++)
		result[i] = proposals[i].getDisplayString();
	return result;
}
 
开发者ID:curiosag,项目名称:ftc,代码行数:18,代码来源:FtcVariableResolver.java


示例3: createTemplates

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
protected void createTemplates(final TemplateContext templateContext, final ContentAssistContext context, final ITemplateAcceptor acceptor) {
  if (templateContext.getContextType().getId().equals("com.avaloq.tools.ddk.checkcfg.CheckCfg.ConfiguredCheck")) { //$NON-NLS-1$
    addConfiguredCheckTemplates(templateContext, context, acceptor);
    return;
  } else if (templateContext.getContextType().getId().equals("com.avaloq.tools.ddk.checkcfg.CheckCfg.kw_catalog")) { //$NON-NLS-1$
    addCatalogConfigurations(templateContext, context, acceptor);
  }
  TemplateContextType contextType = templateContext.getContextType();
  Template[] templates = templateStore.getTemplates(contextType.getId());
  for (Template template : templates) {

    if (!acceptor.canAcceptMoreTemplates()) {
      return;
    }
    if (validate(template, templateContext)) {
      acceptor.accept(createProposal(template, templateContext, context, getImage(template), getRelevance(template)));
    }
  }
}
 
开发者ID:dsldevkit,项目名称:dsl-devkit,代码行数:21,代码来源:CheckCfgTemplateProposalProvider.java


示例4: resolve

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
public void resolve(TemplateVariable variable, TemplateContext context) {
  variable.setUnambiguous(true);
  variable.setValue(""); // $NON-NLS-1$

  if (context instanceof JavaContext) {
    JavaContext jc = (JavaContext) context;
    List<String> params = variable.getVariableType().getParams();
    if (params.size() > 0) {
      for (Iterator<String> iterator = params.iterator(); iterator.hasNext(); ) {
        String typeName = iterator.next();
        jc.addImport(typeName);
      }
    }
  } else {
    super.resolve(variable, context);
  }
}
 
开发者ID:eclipse,项目名称:che,代码行数:19,代码来源:ImportsResolver.java


示例5: resolve

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
public void resolve(TemplateVariable variable, TemplateContext context) {
  variable.setUnambiguous(true);
  variable.setValue(""); // $NON-NLS-1$

  if (context instanceof JavaContext) {
    JavaContext jc = (JavaContext) context;
    List<String> params = variable.getVariableType().getParams();
    if (params.size() > 0) {
      for (Iterator<String> iterator = params.iterator(); iterator.hasNext(); ) {
        String qualifiedMemberName = iterator.next();
        jc.addStaticImport(qualifiedMemberName);
      }
    }
  } else {
    super.resolve(variable, context);
  }
}
 
开发者ID:eclipse,项目名称:che,代码行数:19,代码来源:StaticImportResolver.java


示例6: resolve

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
protected String resolve(TemplateContext context) {
  IJavaElement element =
      ((CompilationUnitContext) context).findEnclosingElement(IJavaElement.METHOD);
  if (element == null) return null;

  IMethod method = (IMethod) element;

  try {
    String[] arguments = method.getParameterNames();
    StringBuffer buffer = new StringBuffer();

    for (int i = 0; i < arguments.length; i++) {
      if (i > 0) buffer.append(", "); // $NON-NLS-1$
      buffer.append(arguments[i]);
    }

    return buffer.toString();

  } catch (JavaModelException e) {
    return null;
  }
}
 
开发者ID:eclipse,项目名称:che,代码行数:24,代码来源:CompilationUnitContextType.java


示例7: format

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
/**
 * Formats the template buffer.
 *
 * @param buffer
 * @param context
 * @throws BadLocationException
 */
public void format(TemplateBuffer buffer, TemplateContext context) throws BadLocationException {
  try {
    VariableTracker tracker = new VariableTracker(buffer);
    IDocument document = tracker.getDocument();

    internalFormat(document, context);
    convertLineDelimiters(document);
    if (!(context instanceof JavaDocContext) && !isReplacedAreaEmpty(context))
      trimStart(document);

    tracker.updateBuffer();
  } catch (MalformedTreeException e) {
    throw new BadLocationException();
  }
}
 
开发者ID:eclipse,项目名称:che,代码行数:23,代码来源:JavaFormatter.java


示例8: isReplacedAreaEmpty

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
private boolean isReplacedAreaEmpty(TemplateContext context) {
  // don't trim the buffer if the replacement area is empty
  // case: surrounding empty lines with block
  if (context instanceof DocumentTemplateContext) {
    DocumentTemplateContext dtc = (DocumentTemplateContext) context;
    if (dtc.getStart() == dtc.getCompletionOffset())
      try {
        IDocument document = dtc.getDocument();
        int lineOffset = document.getLineInformationOfOffset(dtc.getStart()).getOffset();
        // only if we are at the beginning of the line
        if (lineOffset != dtc.getStart()) return false;

        // Does the selection only contain whitespace characters?
        if (document.get(dtc.getStart(), dtc.getEnd() - dtc.getStart()).trim().length() == 0)
          return true;
      } catch (BadLocationException x) {
        // ignore - this may happen when the document was modified after the initial invocation,
        // and the
        // context does not track the changes properly - don't trim in that case
        return true;
      }
  }
  return false;
}
 
开发者ID:eclipse,项目名称:che,代码行数:25,代码来源:JavaFormatter.java


示例9: resolve

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
public void resolve(TemplateVariable variable, TemplateContext context) {
  if (!(variable instanceof MultiVariable)) {
    super.resolve(variable, context);
    return;
  }
  MultiVariable mv = (MultiVariable) variable;
  List<String> params = variable.getVariableType().getParams();
  if (params.isEmpty()) {
    super.resolve(variable, context);
    return;
  }

  JavaContext jc = (JavaContext) context;
  String reference = params.get(0);
  TemplateVariable refVar = jc.getTemplateVariable(reference);
  if (refVar instanceof JavaVariable) {
    JavaVariable jvar = (JavaVariable) refVar;
    resolve(mv, jvar, jc);
    return;
  }

  super.resolve(variable, context);
}
 
开发者ID:eclipse,项目名称:che,代码行数:25,代码来源:ElementTypeResolver.java


示例10: resolve

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
public void resolve(TemplateVariable variable, TemplateContext context) {
  if (variable instanceof MultiVariable) {
    JavaContext jc = (JavaContext) context;
    JavaVariable jv = (JavaVariable) variable;
    Variable[] iterables = getVariables(jc);
    if (iterables.length > 0) {
      jv.setChoices(iterables);
      jc.markAsUsed(iterables[0].getName());

      if (iterables.length > 1) variable.setUnambiguous(false);
      else variable.setUnambiguous(isUnambiguous(context));

      return;
    }
  }

  super.resolve(variable, context);
}
 
开发者ID:eclipse,项目名称:che,代码行数:20,代码来源:AbstractJavaContextType.java


示例11: createContext

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
protected TemplateContext createContext(ITextViewer viewer, IRegion region) {
	TemplateContext context = null;
	TemplateContextType contextType= getContextType(viewer, region);
	if (contextType != null) {
		IDocument document= viewer.getDocument();
		context =  new BfTemplateContext(contextType, document, region.getOffset(), region.getLength());
	}
	if (context == null) {
		return null;
	}
	try {
		String prefix = viewer.getDocument().get(region.getOffset(), region.getLength());
		int i = 0;
		for (String param : parseParameters(prefix)) {
			context.setVariable("x" + (i++), param);
		}
	} 
	catch (BadLocationException ex) {
		BfActivator.getDefault().logError("Prefix for Template could not be computed", ex);
	}
	return context;
}
 
开发者ID:RichardBirenheide,项目名称:brainfuck,代码行数:24,代码来源:BfTemplateCompletionProcessor.java


示例12: calculateValue

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
int calculateValue(TemplateContext context) {
	String parseValue = null;
	if (this.isVariable) {
		parseValue = context.getVariable(this.value);
		if (parseValue == null) {
			String contextInfo = "";
			if (context instanceof DocumentTemplateContext) {
				contextInfo = ": '" + ((DocumentTemplateContext) context).getKey() + "'";
			}
			throw new VariableEvaluationException("Variable " + this.value + " is undefined in context"+ contextInfo);
		}
		parseValue = this.sign + parseValue;
	}
	else {
		parseValue = this.value;
	}
	try {
		return Integer.parseInt(parseValue);
	}
	catch (NumberFormatException ex) {
		throw new VariableEvaluationException(ex.getMessage(), ex);
	}
}
 
开发者ID:RichardBirenheide,项目名称:brainfuck,代码行数:25,代码来源:ExpressionEvaluator.java


示例13: resolve

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public void resolve(TemplateVariable variable, TemplateContext context)
{
	if (!variable.getVariableType().getParams().isEmpty())
	{
		String[] values = (String[]) variable.getVariableType().getParams().toArray(new String[0]);
		variable.setValues(values);
		variable.setUnambiguous(false);
		variable.setResolved(true);
	}
	else
	{
		super.resolve(variable, context);
		setEvaluationString(variable.getName());
	}
}
 
开发者ID:apicloudcom,项目名称:APICloud-Studio,代码行数:18,代码来源:TabStopVariableResolver.java


示例14: insertAsTemplate

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
public static void insertAsTemplate(ITextViewer textViewer, final IRegion region, String templateText,
		CommandElement commandElement)
{
	SnippetsCompletionProcessor snippetsCompletionProcessor = new SnippetsCompletionProcessor();
	Template template = new SnippetTemplate(commandElement, templateText);
	TemplateContext context = snippetsCompletionProcessor.createContext(textViewer, region);
	SnippetTemplateProposal completionProposal = (SnippetTemplateProposal) snippetsCompletionProcessor
			.createProposal(template, context, region, 0);
	completionProposal.setTemplateProposals(new ICompletionProposal[] { completionProposal });
	completionProposal.apply(textViewer, '0', SWT.NONE, region.getOffset());

	Point selection = completionProposal.getSelection(textViewer.getDocument());
	if (selection != null)
	{
		textViewer.setSelectedRange(selection.x, selection.y);
		textViewer.revealRange(selection.x, selection.y);
	}
}
 
开发者ID:apicloudcom,项目名称:APICloud-Studio,代码行数:19,代码来源:SnippetsCompletionProcessor.java


示例15: resolve

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
public void resolve(TemplateVariable variable, TemplateContext context) {
	List<String> params= variable.getVariableType().getParams();
	String param;
	if (params.size() == 0)
		param= fDefaultType;
	else
		param= params.get(0);

	JavaContext jc= (JavaContext) context;
	MultiVariable mv= (MultiVariable) variable;

	String reference= jc.addImport(param);
	mv.setValue(reference);
	mv.setUnambiguous(true);
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:17,代码来源:TypeResolver.java


示例16: resolve

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
public void resolve(TemplateVariable variable, TemplateContext context) {
	variable.setUnambiguous(true);
	variable.setValue(""); //$NON-NLS-1$

	if (context instanceof JavaContext) {
		JavaContext jc= (JavaContext) context;
		List<String> params= variable.getVariableType().getParams();
		if (params.size() > 0) {
			for (Iterator<String> iterator= params.iterator(); iterator.hasNext();) {
				String typeName= iterator.next();
				jc.addImport(typeName);
			}
		}
	} else {
		super.resolve(variable, context);
	}
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:19,代码来源:ImportsResolver.java


示例17: resolve

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
@Override
protected String resolve(TemplateContext context) {
	IJavaElement element= ((CompilationUnitContext) context).findEnclosingElement(IJavaElement.METHOD);
	if (element == null)
		return null;

	IMethod method= (IMethod) element;

	try {
		String[] arguments= method.getParameterNames();
		StringBuffer buffer= new StringBuffer();

		for (int i= 0; i < arguments.length; i++) {
			if (i > 0)
				buffer.append(", "); //$NON-NLS-1$
			buffer.append(arguments[i]);
		}

		return buffer.toString();

	} catch (JavaModelException e) {
		return null;
	}
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:25,代码来源:CompilationUnitContextType.java


示例18: getTemplateString

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
/**
 * Returns template string to insert.
 * 
 * @return String to insert or null if none is to be inserted
 */
String getTemplateString() {
	String templateString = null;

	Template template = getSelectedTemplate();
	if (template != null) {
		TemplateContextType contextType = GlassmakerUIPlugin.getDefault().getTemplateContextRegistry().getContextType(CardContextType.CONTEXT_TYPE);
		IDocument document = new Document();
		TemplateContext context = new DocumentTemplateContext(contextType, document, 0, 0);
		try {
			TemplateBuffer buffer = context.evaluate(template);
			templateString = buffer.getString();
		}
		catch (Exception e) {
			GlassmakerUIPlugin.logError("Could not create template for new html", e); 
		}
	}

	return templateString;
}
 
开发者ID:eteration,项目名称:glassmaker,代码行数:25,代码来源:NewCardTemplatesWizardPage.java


示例19: format

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
/**
 * Formats the template buffer.
 * @param buffer
 * @param context
 * @throws BadLocationException
 */
public void format(TemplateBuffer buffer, TemplateContext context) throws BadLocationException {
	try {
		VariableTracker tracker= new VariableTracker(buffer);
		IDocument document= tracker.getDocument();

		internalFormat(document, context);
		convertLineDelimiters(document);
		if (!(context instanceof JavaDocContext) && !isReplacedAreaEmpty(context))
			trimStart(document);

		tracker.updateBuffer();
	} catch (MalformedTreeException e) {
		throw new BadLocationException();
	}
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:22,代码来源:JavaFormatter.java


示例20: isReplacedAreaEmpty

import org.eclipse.jface.text.templates.TemplateContext; //导入依赖的package包/类
private boolean isReplacedAreaEmpty(TemplateContext context) {
	// don't trim the buffer if the replacement area is empty
	// case: surrounding empty lines with block
	if (context instanceof DocumentTemplateContext) {
		DocumentTemplateContext dtc= (DocumentTemplateContext) context;
		if (dtc.getStart() == dtc.getCompletionOffset())
			try {
				IDocument document= dtc.getDocument();
				int lineOffset= document.getLineInformationOfOffset(dtc.getStart()).getOffset();
				//only if we are at the beginning of the line
				if (lineOffset != dtc.getStart())
					return false;

				//Does the selection only contain whitespace characters?
				if (document.get(dtc.getStart(), dtc.getEnd() - dtc.getStart()).trim().length() == 0)
					return true;
			} catch (BadLocationException x) {
				// ignore - this may happen when the document was modified after the initial invocation, and the
				// context does not track the changes properly - don't trim in that case
				return true;
			}
	}
	return false;
}
 
开发者ID:trylimits,项目名称:Eclipse-Postfix-Code-Completion,代码行数:25,代码来源:JavaFormatter.java



注:本文中的org.eclipse.jface.text.templates.TemplateContext类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java IReferenceUpdater类代码示例发布时间:2022-05-21
下一篇:
Java DatasetGroup类代码示例发布时间:2022-05-21
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap