Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.jface.text.contentassist
Interface ICompletionProposal

All Known Implementing Classes:
  CompletionProposal, TemplateProposal, TemplateVariableProposal

public interface ICompletionProposal

The interface of completion proposals generated by content assist processors. A completion proposal contains information used to present the proposed completion to the user, to insert the completion should the user select it, and to present context information for the chosen completion once it has been inserted.

In order to provide backward compatibility for clients of `ICompletionProposal`, extension interfaces are used to provide a means of evolution. The following extension interfaces exist:

- `ICompletionProposalExtension` since version 2.0 introducing the following functions:
  - handling of trigger characters other than ENTER
  - completion proposal validation for a given offset
  - context information can be freely positioned
- `ICompletionProposalExtension2` since version 2.1 introducing the following functions:
  - handling of trigger characters with modifiers
  - visual indication for selection of a proposal
- `ICompletionProposalExtension3` since version 3.0 introducing the following functions:
  - provision of a custom information control creator
  - provide a custom completion text and offset for prefix completion

This interface can be implemented by clients. By default, clients use `CompletionProposal` as the standard implementer of this interface.

See Also:
  `IContentAssistProcessor`

Method Summary
`void` | `apply(IDocument document)` Inserts the proposed completion into the given document.
`String` | `getAdditionalProposalInfo()` Returns optional additional information about the proposal.
`IContextInformation` | `getContextInformation()` Returns optional context information associated with this proposal.
`String` | `getDisplayString()` Returns the string to be displayed in the list of completion proposals.
`Image` | `getImage()` Returns the image to be displayed in the list of completion proposals.
`Point` | `getSelection(IDocument document)` Returns the new selection after the proposal has been applied to the given document in absolute document coordinates.

Method Detail

### apply

    public void apply(IDocument document)

  Inserts the proposed completion into the given document.

  Parameters:
    `document` - the document into which to insert the proposed completion

### getSelection

    public Point getSelection(IDocument document)

  Returns the new selection after the proposal has been applied to the given document in absolute document coordinates. If it returns `null`, no new selection is set. A document change can trigger other document changes, which have to be taken into account when calculating the new selection. Typically, this would be done by installing a document listener or by using a document position during `apply(IDocument)`.

  Parameters:
    `document` - the document into which the proposed completion has been inserted
  Returns:
    the new selection in absolute document coordinates

### getAdditionalProposalInfo

    public String getAdditionalProposalInfo()

  Returns optional additional information about the proposal. The additional information will be presented to assist the user in deciding if the selected proposal is the desired choice.

  Returns:
    the additional information or `null`

### getDisplayString

    public String getDisplayString()

  Returns the string to be displayed in the list of completion proposals.

  Returns:
    the string to be displayed

### getImage

    public Image getImage()

  Returns the image to be displayed in the list of completion proposals. The image would typically be shown to the left of the display string.

  Returns:
    the image to be shown or `null` if no image is desired

### getContextInformation

    public IContextInformation getContextInformation()

  Returns optional context information associated with this proposal. The context information will automatically be shown if the proposal has been applied.

  Returns:
    the context information for this proposal or `null`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.