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

Java CompletionProposal类代码示例

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

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



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

示例1: getNamespaceCompletionProposals

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
private static List<CompletionProposal> getNamespaceCompletionProposals(final CompletionContext context) {
    final List<CompletionProposal> proposals = new ArrayList<>();
    //todo: rewrite to use index later
    Model sourceModel = context.getSourceModel();
    sourceModel.runReadTask(new Model.ModelTask() {
        @Override
        public void run(StyleSheet styleSheet) {
            Namespaces namespaces = styleSheet.getNamespaces();
            if (namespaces == null) {
                return;
            }
            for (Namespace ns : namespaces.getNamespaces()) {
                proposals.add(
                        new NamespaceCompletionItem(ns.getNamespacePrefixName().getContent().toString(),
                        ns.getResourceIdentifier().getContent().toString(), context.getAnchorOffset()));
            }
        }
    });
    return proposals;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:21,代码来源:NamespacesModule.java


示例2: wrapProperties

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
public static List<CompletionProposal> wrapProperties(Collection<PropertyDefinition> props, int anchor, int stripLen) {
    Set<String> names = new HashSet<>();
    List<CompletionProposal> proposals = new ArrayList<>(props.size());
    for (PropertyDefinition p : props) {
        String propName = p.getName();
        //filter out non-public properties
        if (!GrammarElement.isArtificialElementName(propName)) {
            if(names.add(propName)) { //do not list same name more times
                CssElement handle = new CssPropertyElement(p);
                String insertPrefix = stripLen == 0
                        ? propName
                        : propName.substring(stripLen);
                CompletionProposal proposal = CssCompletionItem.createPropertyCompletionItem(handle, p, insertPrefix, anchor, false);
                proposals.add(proposal);
            }
        } 
    }
    return proposals;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:20,代码来源:Utilities.java


示例3: getConstructorsProposals

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
public List<CompletionProposal> getConstructorsProposals(String className) {
    className = isListOrMap(className);
    List<ProposalItem> items = CLASS_MAP.get(className.toLowerCase());
    List<CompletionProposal> resultItems = new ArrayList<CompletionProposal>();
    if (items != null) {
        for (ProposalItem item : items) {
            if (item.getProposalType().equals(ProposalType.CONSTRUCTOR)) {
                item.setAnchorOffset(offset);
                resultItems.add(item);
            }
        }

        return resultItems;
    }
    return null;
}
 
开发者ID:fundacionjala,项目名称:oblivion-netbeans-plugin,代码行数:17,代码来源:ApexDocumentation.java


示例4: complete

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
void complete(List<CompletionProposal> proposals, CompletionContext completionRequest, int anchor) {
    String filter = completionRequest.getPrefix();
    GoloModule module = ((GoloParser.GoloParserResult) completionRequest.getParserResult()).getModule();
    Set<GoloFunction> functions = module.getFunctions();
    Source source = completionRequest.getParserResult().getSnapshot().getSource();
    BaseDocument doc = (BaseDocument) source.getDocument(true);
    for (GoloFunction fn : functions) {
        if (!fn.getName().startsWith("__$$_") && fn.hasASTNode()) {
            GoloASTNode astNode = fn.getASTNode();
            OffsetRange range = GoloASTUtils.getRange(astNode, doc);
            if (range.containsInclusive(anchor)) {
                List<ASTLetOrVar> variablesNodes = getVariablesNodes(astNode);
                for (ASTLetOrVar variablesNode : variablesNodes) {
                    OffsetRange rangeVarLet = GoloASTUtils.getRange(variablesNode, doc);
                    if (rangeVarLet.getEnd() <= anchor) {
                        if (filter != null && variablesNode.getName().startsWith(filter)) {
                            proposals.add(new CompletionItem.VariableElementItem(new VariableElementHandle(variablesNode, source), anchor, module.getPackageAndClass().toString(), fn.getName()));
                        }
                    }
                }
            }

        }
    }

}
 
开发者ID:golo-lang,项目名称:golo-netbeans,代码行数:27,代码来源:VariableCompletion.java


示例5: complete

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
void complete(List<CompletionProposal> proposals, CompletionContext completionRequest, int anchor) {
    String filter = completionRequest.getPrefix();
    GoloModule module = ((GoloParser.GoloParserResult) completionRequest.getParserResult()).getModule();
    Set<GoloFunction> functions = module.getFunctions();
    BaseDocument doc = (BaseDocument) completionRequest.getParserResult().getSnapshot().getSource().getDocument(true);
    FileObject fo = completionRequest.getSourceFile();
    for (GoloFunction fn : functions) {
        if (!fn.getName().startsWith("__$$_") && fn.hasASTNode()) {
            GoloASTNode astNode = fn.getASTNode();
            OffsetRange range = GoloASTUtils.getRange(astNode, doc);
            if (range.containsInclusive(anchor)) {
                List<String> parameterNames = fn.getParameterNames();
                if (parameterNames != null && parameterNames.size() > 0) {
                    for (String parameterName : parameterNames) {
                        if (filter != null && parameterName.startsWith(filter)) {
                            proposals.add(new CompletionItem.SimpleParameterElementItem(new GoloParameterElementHandle(fo, module.getPackageAndClass().toString(), fn.getName(), parameterName), anchor));
                        }
                    }
                }
            }

        }
    }

}
 
开发者ID:golo-lang,项目名称:golo-netbeans,代码行数:26,代码来源:ParameterCompletion.java


示例6: complete

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
void complete(List<CompletionProposal> proposals, CompletionContext context, int anchor) {
    String filter = context.getPrefix();
    GoloClassLoader classLoader = context.getGoloClassLoader();

    if (classLoader == null) {
        return;
    }

    Map<Class<?>, FileObject> goloSources = null;
    try {
        goloSources = context.loadGoloFiles(context.getSourceFile(), classLoader);
    } catch (Throwable t) {
    }
    
    if (goloSources != null) {
        for (Class<?> moduleName : goloSources.keySet()) {
            FileObject goloFile = goloSources.get(moduleName);
            if (goloFile != context.getSourceFile()) {
                if (moduleName.getSimpleName().toLowerCase().startsWith(filter.toLowerCase())) {
                    proposals.add(new CompletionItem.ModuleItem(new SimpleGoloElementHandle(goloFile, goloFile.getNameExt(), moduleName.getSimpleName(), ElementKind.MODULE, null), moduleName, anchor));
                }
            }
        }
    }
}
 
开发者ID:golo-lang,项目名称:golo-netbeans,代码行数:26,代码来源:ModuleCompletion.java


示例7: proposePods

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
/**
 * Complete imports (using)
 * If not in an import do nothing and return false
 * Forms of imports:
 * using id('. id)* eos    // whole pod
 * using id('. id)* '::' id eos   // Particular type
 * using ([id])? id('.' id)* '::' id eos  // FFI
 * using ([id])? id('.' id)* '::' (id | '$') as id eos  // with 'as'
 * @param proposals
 * @param anchor
 * @return
 */
private void proposePods(ArrayList<CompletionProposal> proposals, int anchor, String prefix)
{
    Vector<String> names = FanType.findAllPodNames();
    if (prefix.length() == 0)
    {
        proposals.add(new FanImportProposal("[java] ", anchor - prefix.length(), true));
    }
    for (String name : names)
    {
        if (name.toLowerCase().startsWith(prefix) && !name.startsWith("__"))
        {
            proposals.add(new FanImportProposal(name, anchor - prefix.length(), false));
            docType = DocTypes.POD;
        }
    }
}
 
开发者ID:tcolar,项目名称:fantomidemodule,代码行数:29,代码来源:FanCompletionHandler.java


示例8: proposeTypes

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
/**
 * Propose Types (class, enum, mixin)
 * @param podName null means all
 * @param proposals
 * @param anchor
 * @param prefix
 */
private void proposeTypes(String podName, ArrayList<CompletionProposal> proposals, int anchor, String prefix)
{
    Vector<FanType> types;
    if (podName == null)
    {
        types = FanType.findAllFantomTypes(prefix);
    } else
    {
        types = FanType.findPodTypes(podName, prefix);
    }
    for (FanType type : types)
    {
        // TODO: filter out internals / private ?
        proposals.add(new FanTypeProposal(type, anchor - prefix.length(), null));
    }
    docType = DocTypes.TYPE;
}
 
开发者ID:tcolar,项目名称:fantomidemodule,代码行数:25,代码来源:FanCompletionHandler.java


示例9: proposeDefinedTypes

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
/**
 * Propose defined types (fan.sys) + whatever listed in using + current pod
 */
private void proposeDefinedTypes(ArrayList<CompletionProposal> proposals, int anchor, String prefix/*, FanRootScope rootScope*/)
{
    /*ArrayList<CompletionProposal> props = new ArrayList<CompletionProposal>();
    Hashtable<String, FanResolvedType> usings = rootScope.getUsing();
    for (String key : usings.keySet())
    {
    if (key.startsWith(prefix))
    {
    FanResolvedType type = usings.get(key);
    if (type.isResolved())
    {
    props.add(new FanTypeProposal(type.getDbType(), anchor - prefix.length(), key));
    }
    }
    }
    // propose all the types from the same pod (don't need a using)
    proposeTypes(rootScope.getPod(), props, anchor, prefix);
    // propose sys types, don't need a 'using'
    proposeTypes("sys", props, anchor, prefix);
    proposals.addAll(props);*/
}
 
开发者ID:tcolar,项目名称:fantomidemodule,代码行数:25,代码来源:FanCompletionHandler.java


示例10: DelegatedItem

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
private DelegatedItem(ParserResult info,
        CodeCompletionResult completionResult,
        org.netbeans.modules.csl.api.CompletionProposal item) {
    super(item.getAnchorOffset());
    this.item = item;
    this.completionResult = completionResult;
    this.info = info;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:9,代码来源:GsfCompletionItem.java


示例11: addCodeCompletionItems

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
private void addCodeCompletionItems(ParserResult controller, CodeCompletionHandler completer, int offset, String prefix) {
    QueryType qtype = queryType == 9 ? QueryType.ALL_COMPLETION : QueryType.COMPLETION;
    CodeCompletionContext context = new CodeCompletionContextImpl(offset, controller, prefix, true, qtype);
    CodeCompletionResult result = completer.complete(context);

    if (result == null) {
        Logger.getLogger(this.getClass().getName()).log(Level.WARNING, completer.getClass().getName() + " should return CodeCompletionResult.NONE rather than null");
        result = CodeCompletionResult.NONE;
    }

    if (result != CodeCompletionResult.NONE) {
        if (result.isTruncated()) {
            isTruncated = true;
        }
        if (!result.isFilterable()) {
            isFilterable = false;
        }

        for (CompletionProposal proposal : result.getItems()) {
            GsfCompletionItem item = GsfCompletionItem.createItem(proposal, result, controller);

            if (item != null) {
                results.add(item);
            }
        }

        
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:30,代码来源:GsfCompletionProvider.java


示例12: filterCompletionProposals

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
public static List<CompletionProposal> filterCompletionProposals(List<CompletionProposal> proposals, CharSequence prefix, boolean ignoreCase) {
    List<CompletionProposal> filtered = new ArrayList<CompletionProposal>();
    for (CompletionProposal proposal : proposals) {
        if (startsWith(proposal.getInsertPrefix(), prefix, ignoreCase, false)) {
            filtered.add(proposal);
        }
    }
    return filtered;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:10,代码来源:JavaFXEditorUtils.java


示例13: getMediaFeatures

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
private static List<CompletionProposal> getMediaFeatures(final CompletionContext context) {
    final List<CompletionProposal> proposals = new ArrayList<>();
    for(String mtype : getMediaFeatures()) {
        proposals.add(CssCompletionItem.createRAWCompletionItem(null, mtype, ElementKind.FIELD, context.getAnchorOffset(), true));
    }
    return proposals;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:8,代码来源:MediaQueriesModule.java


示例14: getMediaTypes

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
private static List<CompletionProposal> getMediaTypes(final CompletionContext context) {
    final List<CompletionProposal> proposals = new ArrayList<>();
    for(String mtype : MEDIA_TYPES) {
        proposals.add(CssCompletionItem.createRAWCompletionItem(null, mtype, ElementKind.OTHER, context.getAnchorOffset(), true));
    }
    return proposals;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:8,代码来源:MediaQueriesModule.java


示例15: createRAWCompletionProposals

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
public static  List<CompletionProposal> createRAWCompletionProposals(Collection<String> props, ElementKind kind, int anchor, String addPrefix) {
    List<CompletionProposal> proposals = new ArrayList<>(props.size());
    for (String value : props) {
        if(addPrefix != null) {
            value = addPrefix + value;
        }
        CssElement handle = new CssElement(value);
        CompletionProposal proposal = CssCompletionItem.createRAWCompletionItem(handle, value, kind, anchor, false);
        proposals.add(proposal);
    }
    return proposals;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:13,代码来源:Utilities.java


示例16: filterCompletionProposals

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
/**
 * @since 1.46
 * @param proposals
 * @param prefix
 * @param ignoreCase
 * @return 
 */
public static List<CompletionProposal> filterCompletionProposals(List<CompletionProposal> proposals, CharSequence prefix, boolean ignoreCase) {
    List<CompletionProposal> filtered = new ArrayList<>();
    for(CompletionProposal proposal : proposals) {
        if(LexerUtils.startsWith(proposal.getInsertPrefix(), prefix, ignoreCase, false)) {
            filtered.add(proposal);
        }
    }
    return filtered;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:17,代码来源:Utilities.java


示例17: getCompletionProposals

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
public static List<CompletionProposal> getCompletionProposals(CompletionContext context) {
    List<CompletionProposal> all = new ArrayList<>();
    for (CssEditorModule module : getModules()) {
        all.addAll(module.getCompletionProposals(context));
    }
    return all;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:8,代码来源:CssModuleSupport.java


示例18: completeHtmlSelectors

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
private List<CompletionProposal> completeHtmlSelectors(CompletionContext context, String prefix, int offset) {
    List<CompletionProposal> proposals = new ArrayList<>(20);
    Collection<String> items = new ArrayList(Arrays.asList(HtmlTags.getTags()));
    items.add(UNIVERSAL_SELECTOR);
    for (String tagName : items) {
        if (tagName.startsWith(prefix.toLowerCase(Locale.ENGLISH))) {
            proposals.add(CssCompletionItem.createSelectorCompletionItem(new CssElement(context.getSource().getFileObject(), tagName),
                    tagName,
                    offset,
                    true));
        }
    }
    return proposals;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:15,代码来源:CssCompletion.java


示例19: afterInsert

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
@Override
public void afterInsert(CompletionProposal item) {
    Caret c = EditorRegistry.lastFocusedComponent().getCaret();
    if(moveCaretBack > 0) {
        c.setDot(c.getDot() - moveCaretBack);
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:8,代码来源:CssCompletion.java


示例20: assertCompletionItemNames

import org.netbeans.modules.csl.api.CompletionProposal; //导入依赖的package包/类
private void assertCompletionItemNames(String[] expected, CodeCompletionResult ccresult, Match type) {
    Collection<String> real = new ArrayList<>();
    for (CompletionProposal ccp : ccresult.getItems()) {
        real.add(getCompletionItemText(ccp));
    }
    Collection<String> exp = new ArrayList<>(Arrays.asList(expected));

    if (type == Match.EXACT) {
        assertEquals(exp, real);
    } else if (type == Match.CONTAINS) {
        exp.removeAll(real);
        assertTrue("Expected " + arrayToString(exp.toArray(new String[0])) + ", but was " + arrayToString(real.toArray(new String[0])), exp.isEmpty());
    } else if (type == Match.EMPTY) {
        assertEquals("The unexpected element(s) '" + arrayToString(real.toArray(new String[]{})) + "' are present in the completion items list", 0, real.size());
    } else if (type == Match.NOT_EMPTY) {
        assertTrue(real.size() > 0);
    } else if (type == Match.DOES_NOT_CONTAIN) {
        int originalRealSize = real.size();
        real.removeAll(exp);
        assertEquals("The unexpected element(s) '" + arrayToString(expected) + "' are present in the completion items list", originalRealSize, real.size());
    } else if (type == Match.CONTAINS_ONCE) {
        for(String e : expected) {
            assertTrue(String.format("Expected item '%s' not found!", e), real.contains(e));
            real.remove(e);
            assertTrue(String.format("Expected item '%s' is contained multiple times!", e), !real.contains(e));
        }
    }

}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:30,代码来源:CssModuleTestBase.java



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

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

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

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

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

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