blob: 6d29e458fee5e03c86c6197fffd1a622a8fd4406 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2005 IBM Corporation 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:
* IBM Corporation - initial API and implementation
******************************************************************************/
package org.eclipse.jface.fieldassist;
/**
* IContentProposal describes a content proposal to be shown. It consists of the
* content that will be provided if the proposal is accepted, an optional label
* used to describe the content to the user, and an optional description that
* further elaborates the meaning of the proposal.
*
* <p>
* This API is considered experimental. It is still evolving during 3.2 and is
* subject to change. It is being released to obtain feedback from early
* adopters.
*
* @since 3.2
*/
public interface IContentProposal {
/**
* Return the content represented by this proposal.
*
* @return the String content represented by this proposal.
*/
public String getContent();
/**
* Return the integer position within the contents that the cursor should be
* placed after the proposal is accepted.
*
* @return the zero-based index position within the contents where the
* cursor should be placed after the proposal is accepted.
*/
public int getCursorPosition();
/**
* Return the label used to describe this proposal.
*
* @return the String label used to display the proposal. If
* <code>null</code>, then the content will be displayed as the
* label.
*/
public String getLabel();
/**
* Return a description that describes this proposal.
*
* @return the String label used to further the proposal. If
* <code>null</code>, then no description will be displayed.
*/
public String getDescription();
}