Code Completion Filter
Identifier:
org.eclipse.cdt.ui.CodeCompletionFilter
Since:
CDT 3.1
Description:
When the user requests code completion for an identifier prefix then proposals are gathered from a variety of sources. It is quite common that several proposals for the same completion are gathered. After gathering it is therefore necessary to filter proposals and present them in an optimal ordering to the user.
The notion of what is "optimal" may vary from one application to another. This extension point allows the contribution of completion filters which best suit the needs of the user in any given situation.
The decision about which filter will actually be used remains with the user who can select his preference from a list of all contributed filters (menu Window - Preferences - C/C++ - Editor - Content Assist).
Configuration Markup:
<!ELEMENT extension (ProposalFilter)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT ProposalFilter EMPTY>
<!ATTLIST ProposalFilter
id CDATA #REQUIRED
name CDATA #REQUIRED
class CDATA #REQUIRED>
- id - The required unique id of the ProposalFilter
- name - The required name of the ProposalFilter. This name will appear in the preferences combo and should therefore be informative for the user.
- class - The required fully qualified name of the implementing class which must implement org.eclipse.cdt.ui.text.contentassist.IProposalFilter
Examples:
See the default implementation in org.eclipse.cdt.internal.ui.text.contentassist.DefaultProposalFilter as an example.
API Information:
ProposalFilters must implement interface org.eclipse.cdt.ui.text.contentassist.IProposalFilter
Supplied Implementation:
The default implementation in org.eclipse.cdt.internal.ui.text.contentassist.DefaultProposalFilter is the default filtering method which is used as long as the user preference is not changed.
Copyright (c) 2006 Norbert Ploett and others.
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html
Contributors:
Norbert Ploett (Siemens) - Initial Contribution