| <?xml version='1.0' encoding='UTF-8'?> |
| <!-- Schema file written by PDE --> |
| <schema targetNamespace="org.eclipse.jdt.ui" xmlns="http://www.w3.org/2001/XMLSchema"> |
| <annotation> |
| <appInfo> |
| <meta.schema plugin="org.eclipse.jdt.ui" id="javaCompletionProposalComputer" name="Java Completion Proposal Computer"/> |
| </appInfo> |
| <documentation> |
| This extension point allows to contribute Java completion proposal computers to participate in the content assist process of the Java editor. |
| |
| <p> |
| This extension point supports the <code>&lt;enablement&gt;</code> element. |
| <!-- see org.eclipse.jdt.internal.ui.text.java.CompletionProposalCategory#matches(IJavaProject): --> |
| The default variable is the containing <code>org.eclipse.jdt.core.IJavaProject</code>. |
| <br>Defined variables for <code>&lt;with&gt;</code> expressions are: |
| </p> |
| <ul> |
| <li>"project": type <code>org.eclipse.jdt.core.IJavaProject</code>; the current project (same as the default variable)</li> |
| </ul> |
| </documentation> |
| </annotation> |
| |
| <include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/> |
| |
| <element name="extension"> |
| <annotation> |
| <appInfo> |
| <meta.element labelAttribute="name" /> |
| </appInfo> |
| </annotation> |
| <complexType> |
| <choice> |
| <element ref="javaCompletionProposalComputer"/> |
| <element ref="proposalCategory"/> |
| </choice> |
| <attribute name="point" type="string" use="required"> |
| <annotation> |
| <documentation> |
| a fully qualified identifier of the target extension point |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="id" type="string" use="required"> |
| <annotation> |
| <documentation> |
| the proposal category id |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="name" type="string"> |
| <annotation> |
| <documentation> |
| an optional name of the extension instance |
| </documentation> |
| <appInfo> |
| <meta.attribute translatable="true"/> |
| </appInfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="javaCompletionProposalComputer"> |
| <annotation> |
| <documentation> |
| A proposal computer contribution. If no partition types are specified, the computer is added to all partition types. |
| </documentation> |
| </annotation> |
| <complexType> |
| <sequence minOccurs="0" maxOccurs="6"> |
| <element ref="partition"/> |
| </sequence> |
| <attribute name="class" type="string" use="required"> |
| <annotation> |
| <documentation> |
| the name of the class that implements the contributed computer. The |
| class must be public and implement |
| <code>org.eclipse.jdt.ui.text.java.IJavaCompletionProposalComputer</code> |
| and must have a public 0-argument constructor. |
| </documentation> |
| <appInfo> |
| <meta.attribute kind="java" basedOn=":org.eclipse.jdt.ui.text.java.IJavaCompletionProposalComputer"/> |
| </appInfo> |
| </annotation> |
| </attribute> |
| <attribute name="activate" type="boolean" use="default" value="false"> |
| <annotation> |
| <documentation> |
| if the attribute is set to "true" it will force this plug-in to be loaded on content assist invocation. @since 3.8.1 activation will not happen if the enablement expression for the category is not met. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="categoryId" type="string" use="default" value="org.eclipse.jdt.ui.defaultProposalCategory"> |
| <annotation> |
| <documentation> |
| the id of a <tt>proposalCategory</tt> |
| </documentation> |
| <appInfo> |
| <meta.attribute kind="identifier" basedOn="org.eclipse.jdt.ui.javaCompletionProposalComputer/@id"/> |
| </appInfo> |
| </annotation> |
| </attribute> |
| <attribute name="needsSortingAfterFiltering" type="boolean" use="default" value="false"> |
| <annotation> |
| <documentation> |
| if the attribute is set to "true" it forces the content assist processor to resort the list of proposals every time a new token is entered or removed to the completion prefix. |
| |
| @since 3.8 |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="partition"> |
| <annotation> |
| <appInfo> |
| <meta.element labelAttribute="type"/> |
| </appInfo> |
| </annotation> |
| <complexType> |
| <attribute name="type" use="required"> |
| <annotation> |
| <documentation> |
| a Java partition type for which the specified computer can provide completion proposals. See <code>IDocument.DEFAULT_CONTENT_TYPE</code> and <code>IJavaPartitions</code> for valid values. |
| </documentation> |
| </annotation> |
| <simpleType> |
| <restriction base="string"> |
| <enumeration value="__dftl_partition_content_type"> |
| </enumeration> |
| <enumeration value="__java_singleline_comment"> |
| </enumeration> |
| <enumeration value="__java_multiline_comment"> |
| </enumeration> |
| <enumeration value="__java_javadoc"> |
| </enumeration> |
| <enumeration value="__java_string"> |
| </enumeration> |
| <enumeration value="__java_character"> |
| </enumeration> |
| </restriction> |
| </simpleType> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="proposalCategory"> |
| <annotation> |
| <documentation> |
| A proposal category contribution defines categories of proposals used to group them in the UI. |
| </documentation> |
| </annotation> |
| <complexType> |
| <sequence> |
| <element ref="enablement" minOccurs="0" maxOccurs="1"/> |
| </sequence> |
| <attribute name="icon" type="string"> |
| <annotation> |
| <documentation> |
| an optional icon of the category, which can be displayed in the user preferences |
| </documentation> |
| <appInfo> |
| <meta.attribute kind="resource"/> |
| </appInfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="since"/> |
| </appInfo> |
| <documentation> |
| 3.2 |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="examples"/> |
| </appInfo> |
| <documentation> |
| The following is an example of a Java completion proposal computer contribution: |
| |
| <pre> |
| <extension point="org.eclipse.jdt.ui.javaCompletionProposalComputer" |
| id="textual_proposals" |
| name="Text Proposals"> |
| <proposalCategory icon="icons/wordcompletions.png"/> |
| </extension> |
| <extension point="org.eclipse.jdt.ui.javaCompletionProposalComputer" |
| id="WordCompletionProposalComputer" |
| name="Word Completion Proposal Computer"> |
| <javaCompletionProposalComputer |
| class="org.eclipse.jdt.internal.ui.text.java.HippieProposalComputer" |
| categoryId="org.eclipse.ui.texteditor.textual_proposals"> |
| <partition type="__java_javadoc"/> |
| </javaCompletionProposalComputer> |
| </extension> |
| </pre> |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="apiInfo"/> |
| </appInfo> |
| <documentation> |
| The contributed class must extend <code>org.eclipse.jdt.ui.text.java.IJavaCompletionProposalComputer</code> |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="implementation"/> |
| </appInfo> |
| <documentation> |
| see <code>org.eclipse.jdt.internal.ui.text.java.HippieProposalComputer</code> for an example. |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="copyright"/> |
| </appInfo> |
| <documentation> |
| Copyright (c) 2006, 2013 IBM Corporation and others.<br> |
| |
| This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at <a href="https://www.eclipse.org/legal/epl-2.0">https://www.eclipse.org/legal/epl-v20.html</a>/ |
| |
| SPDX-License-Identifier: EPL-2.0 |
| </documentation> |
| </annotation> |
| |
| </schema> |