Bug 125012 [Field Assist] Clarify lifecycle of the ILabelProvider used by ContentProposalAdapter
I20060119-0800 Clients who want to port their field content assistants from jface.text.contentassist to jface.fieldassist would expect to be able to supply an image in IContentProposal, e.g. with a 'Image getImage();' method as in ICompletionProposal. Without icons, e.g. proposals for java type names would look quite different from the ones you get in the java editor. There's also a lot more functionality in ICompletionProposal and the 4 ICompletionProposalExtension* interfaces. Some of those concepts must also be supported in fieldassist if clients such as the Find/Replace dialog and Java type completions in dialogs should switch (e.g. the additionalProposalInfo to show documentation for regex proposals, etc.). I can file separate bugs for these functionalities if you want to discuss them one by one.
bundles/org.eclipse.jface/src/org/eclipse/jface/fieldassist/ContentProposalAdapter.java
}
		/*
		 * Return the current selected proposal.
		 */
		private IContentProposal getSelectedProposal() {
			if (isValid()) {
				int i = proposalTable.getSelectionIndex();
				if (proposals == null || i < 0 || i >= proposals.length)
					return null;
				return proposals[i];
			}
			return null;
		}
		/*
		 * Select the proposal at the given index.
		 */
		private void selectProposal(int index) {
			Assert
					.isTrue(index >= 0,
							"Proposal index should never be negative"); 
			if (!isValid() || proposals == null || index >= proposals.length)
				return;
			proposalTable.setSelection(index);
			proposalTable.showSelection();
			showProposalDescription(proposals[index].getDescription());
		}
		/**
		 * Opens this ContentProposalPopup. This method is extended in order to
		 * add the control listener when the popup is opened and to invoke the
		 * secondary popup if applicable.