1 /******************************************************************************* 2 * Copyright (c) 2006 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package org.eclipse.jface.text.contentassist; 12 13 import org.eclipse.core.runtime.IProgressMonitor; 14 15 /** 16 * Extends {@link org.eclipse.jface.text.contentassist.ICompletionProposal} with the following 17 * function: 18 * <ul> 19 * <li>Allow background computation of the additional info.</li> 20 * </ul> 21 * 22 * @since 3.2 23 */ 24 public interface ICompletionProposalExtension5 { 25 /** 26 * Returns additional information about the proposal. The additional information will be 27 * presented to assist the user in deciding if the selected proposal is the desired choice. 28 * <p> 29 * This method may be called on a non-UI thread. 30 * </p> 31 * <p> 32 * By default, the returned information is converted to a string and displayed as text; if 33 * {@link ICompletionProposalExtension3#getInformationControlCreator()} is implemented, the 34 * information will be passed to a custom information control for display. 35 * </p> 36 * 37 * @param monitor a monitor to report progress and to watch for 38 * {@link IProgressMonitor#isCanceled() cancelation}. 39 * @return the additional information, <code>null</code> for no information 40 */ 41 Object getAdditionalProposalInfo(IProgressMonitor monitor); 42 } 43