Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 413346 | Differences between
and this patch

Collapse All | Expand All

(-)a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/text/ScriptSourceViewerConfiguration.java (+2 lines)
Lines 507-512 Link Here
507
507
508
			getContentAssistPreference().configure(assistant, fPreferenceStore);
508
			getContentAssistPreference().configure(assistant, fPreferenceStore);
509
509
510
			assistant.enableColoredLabels(true);
511
510
			return assistant;
512
			return assistant;
511
		}
513
		}
512
514
(-)a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/text/completion/AbstractScriptCompletionProposal.java (-3 / +21 lines)
Lines 48-53 Link Here
48
import org.eclipse.jface.text.contentassist.ICompletionProposalExtension2;
48
import org.eclipse.jface.text.contentassist.ICompletionProposalExtension2;
49
import org.eclipse.jface.text.contentassist.ICompletionProposalExtension3;
49
import org.eclipse.jface.text.contentassist.ICompletionProposalExtension3;
50
import org.eclipse.jface.text.contentassist.ICompletionProposalExtension5;
50
import org.eclipse.jface.text.contentassist.ICompletionProposalExtension5;
51
import org.eclipse.jface.text.contentassist.ICompletionProposalExtension6;
51
import org.eclipse.jface.text.contentassist.IContextInformation;
52
import org.eclipse.jface.text.contentassist.IContextInformation;
52
import org.eclipse.jface.text.link.ILinkedModeListener;
53
import org.eclipse.jface.text.link.ILinkedModeListener;
53
import org.eclipse.jface.text.link.LinkedModeModel;
54
import org.eclipse.jface.text.link.LinkedModeModel;
Lines 56-61 Link Here
56
import org.eclipse.jface.text.link.LinkedModeUI.IExitPolicy;
57
import org.eclipse.jface.text.link.LinkedModeUI.IExitPolicy;
57
import org.eclipse.jface.text.link.LinkedPosition;
58
import org.eclipse.jface.text.link.LinkedPosition;
58
import org.eclipse.jface.text.link.LinkedPositionGroup;
59
import org.eclipse.jface.text.link.LinkedPositionGroup;
60
import org.eclipse.jface.viewers.StyledString;
59
import org.eclipse.swt.SWT;
61
import org.eclipse.swt.SWT;
60
import org.eclipse.swt.custom.StyleRange;
62
import org.eclipse.swt.custom.StyleRange;
61
import org.eclipse.swt.custom.StyledText;
63
import org.eclipse.swt.custom.StyledText;
Lines 76-82 Link Here
76
public abstract class AbstractScriptCompletionProposal implements
78
public abstract class AbstractScriptCompletionProposal implements
77
		IScriptCompletionProposal, ICompletionProposalExtension,
79
		IScriptCompletionProposal, ICompletionProposalExtension,
78
		ICompletionProposalExtension2, ICompletionProposalExtension3,
80
		ICompletionProposalExtension2, ICompletionProposalExtension3,
79
		ICompletionProposalExtension5 {
81
		ICompletionProposalExtension5, ICompletionProposalExtension6 {
80
82
81
	/**
83
	/**
82
	 * A class to simplify tracking a reference position in a document.
84
	 * A class to simplify tracking a reference position in a document.
Lines 178-184 Link Here
178
180
179
	}
181
	}
180
182
181
	private String fDisplayString;
183
	private StyledString fDisplayString;
182
	private String fReplacementString;
184
	private String fReplacementString;
183
	private int fReplacementOffset;
185
	private int fReplacementOffset;
184
	private int fReplacementLength;
186
	private int fReplacementLength;
Lines 451-457 Link Here
451
	 * @see ICompletionProposal#getDisplayString()
453
	 * @see ICompletionProposal#getDisplayString()
452
	 */
454
	 */
453
	public String getDisplayString() {
455
	public String getDisplayString() {
456
		if (fDisplayString != null)
457
			return fDisplayString.toString();
458
		return null;
459
	}
460
461
	/**
462
	 * @since 5.1
463
	 */
464
	public StyledString getStyledDisplayString() {
454
		return fDisplayString;
465
		return fDisplayString;
466
	}
467
468
	/**
469
	 * @since 5.1
470
	 */
471
	public void setStyledDisplayString(StyledString text) {
472
		fDisplayString = text;
455
	}
473
	}
456
474
457
	/*
475
	/*
Lines 973-979 Link Here
973
	}
991
	}
974
992
975
	protected void setDisplayString(String string) {
993
	protected void setDisplayString(String string) {
976
		fDisplayString = string;
994
		fDisplayString = new StyledString(string);
977
	}
995
	}
978
996
979
	@Override
997
	@Override
(-)a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/text/completion/ICompletionProposalLabelProviderExtension.java (+29 lines)
Added Link Here
1
/*******************************************************************************
2
 * Copyright (c) 2005, 2007 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
package org.eclipse.dltk.ui.text.completion;
9
10
import org.eclipse.dltk.core.CompletionProposal;
11
import org.eclipse.jface.viewers.StyledString;
12
13
/**
14
 * @since 5.1
15
 */
16
public interface ICompletionProposalLabelProviderExtension {
17
18
	StyledString createStyledFieldProposalLabel(CompletionProposal proposal);
19
20
	StyledString createStyledLabel(CompletionProposal fProposal);
21
22
	StyledString createStyledKeywordLabel(CompletionProposal proposal);
23
24
	StyledString createStyledSimpleLabel(CompletionProposal proposal);
25
26
	StyledString createStyledTypeProposalLabel(CompletionProposal proposal);
27
28
	StyledString createStyledSimpleLabelWithType(CompletionProposal proposal);
29
}
(-)a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/text/completion/LazyScriptCompletionProposal.java (+29 lines)
Lines 17-22 Link Here
17
import org.eclipse.dltk.ui.DLTKUIPlugin;
17
import org.eclipse.dltk.ui.DLTKUIPlugin;
18
import org.eclipse.jface.text.IDocument;
18
import org.eclipse.jface.text.IDocument;
19
import org.eclipse.jface.text.contentassist.IContextInformation;
19
import org.eclipse.jface.text.contentassist.IContextInformation;
20
import org.eclipse.jface.viewers.StyledString;
20
import org.eclipse.swt.graphics.Image;
21
import org.eclipse.swt.graphics.Image;
21
22
22
public abstract class LazyScriptCompletionProposal extends
23
public abstract class LazyScriptCompletionProposal extends
Lines 48-53 Link Here
48
	 * The invocation context of this completion proposal.
49
	 * The invocation context of this completion proposal.
49
	 */
50
	 */
50
	protected final ScriptContentAssistInvocationContext fInvocationContext;
51
	protected final ScriptContentAssistInvocationContext fInvocationContext;
52
	private boolean fDisplayStyledStringComputed;
51
53
52
	public LazyScriptCompletionProposal(CompletionProposal proposal,
54
	public LazyScriptCompletionProposal(CompletionProposal proposal,
53
			ScriptContentAssistInvocationContext context) {
55
			ScriptContentAssistInvocationContext context) {
Lines 199-204 Link Here
199
	}
201
	}
200
202
201
	@Override
203
	@Override
204
	public final StyledString getStyledDisplayString() {
205
		if (!fDisplayStyledStringComputed) {
206
			setStyledDisplayString(computeStyledDisplayString());
207
		}
208
		return super.getStyledDisplayString();
209
	}
210
211
	@Override
212
	public final void setStyledDisplayString(StyledString string) {
213
		fDisplayStyledStringComputed = true;
214
		super.setStyledDisplayString(string);
215
	}
216
217
	/**
218
	 * @since 5.1
219
	 */
220
	protected StyledString computeStyledDisplayString() {
221
		CompletionProposalLabelProvider labelProvider = fInvocationContext
222
				.getLabelProvider();
223
		if (labelProvider instanceof ICompletionProposalLabelProviderExtension)
224
			return ((ICompletionProposalLabelProviderExtension) labelProvider)
225
					.createStyledLabel(fProposal);
226
		else
227
			return new StyledString(labelProvider.createLabel(fProposal));
228
	}
229
230
	@Override
202
	public final String getAdditionalProposalInfo() {
231
	public final String getAdditionalProposalInfo() {
203
		return super.getAdditionalProposalInfo();
232
		return super.getAdditionalProposalInfo();
204
	}
233
	}
(-)a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/text/completion/ScriptCompletionProposal.java (-2 / +35 lines)
Lines 12-17 Link Here
12
12
13
import org.eclipse.core.runtime.Assert;
13
import org.eclipse.core.runtime.Assert;
14
import org.eclipse.jface.text.IDocument;
14
import org.eclipse.jface.text.IDocument;
15
import org.eclipse.jface.viewers.StyledString;
15
import org.eclipse.swt.graphics.Image;
16
import org.eclipse.swt.graphics.Image;
16
17
17
public class ScriptCompletionProposal extends
18
public class ScriptCompletionProposal extends
Lines 66-71 Link Here
66
	public ScriptCompletionProposal(String replacementString,
67
	public ScriptCompletionProposal(String replacementString,
67
			int replacementOffset, int replacementLength, Image image,
68
			int replacementOffset, int replacementLength, Image image,
68
			String displayString, int relevance, boolean indoc) {
69
			String displayString, int relevance, boolean indoc) {
70
		this(replacementString, replacementOffset, replacementLength, image,
71
				new StyledString(displayString), relevance, false);
72
	}
73
74
	/**
75
	 * Creates a new completion proposal. All fields are initialized based on
76
	 * the provided information.
77
	 * 
78
	 * @param replacementString
79
	 *            the actual string to be inserted into the document
80
	 * @param replacementOffset
81
	 *            the offset of the text to be replaced
82
	 * @param replacementLength
83
	 *            the length of the text to be replaced
84
	 * @param image
85
	 *            the image to display for this proposal
86
	 * @param displayString
87
	 *            the StyledString to be displayed for the proposal If set to
88
	 *            <code>null</code>, the replacement string will be taken as
89
	 *            display string.
90
	 * @param relevance
91
	 *            the relevance
92
	 * @param indoc
93
	 *            <code>true</code> for a javadoc proposal
94
	 * @since 5.1
95
	 * 
96
	 */
97
	public ScriptCompletionProposal(String replacementString,
98
			int replacementOffset, int replacementLength, Image image,
99
			StyledString displayString, int relevance, boolean indoc) {
69
		Assert.isNotNull(replacementString);
100
		Assert.isNotNull(replacementString);
70
		Assert.isTrue(replacementOffset >= 0);
101
		Assert.isTrue(replacementOffset >= 0);
71
		Assert.isTrue(replacementLength >= 0);
102
		Assert.isTrue(replacementLength >= 0);
Lines 74-85 Link Here
74
		setReplacementOffset(replacementOffset);
105
		setReplacementOffset(replacementOffset);
75
		setReplacementLength(replacementLength);
106
		setReplacementLength(replacementLength);
76
		setImage(image);
107
		setImage(image);
77
		setDisplayString(displayString == null ? replacementString
108
		setStyledDisplayString(displayString == null ? new StyledString(
109
				replacementString)
78
				: displayString);
110
				: displayString);
79
		setRelevance(relevance);
111
		setRelevance(relevance);
80
		setCursorPosition(replacementString.length());
112
		setCursorPosition(replacementString.length());
81
		setInDoc(indoc);
113
		setInDoc(indoc);
82
		setSortString(displayString == null ? replacementString : displayString);
114
		setSortString(displayString == null ? replacementString : displayString
115
				.toString());
83
	}
116
	}
84
117
85
	@Override
118
	@Override
(-)a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/ui/text/completion/ScriptCompletionProposalCollector.java (-40 / +165 lines)
Lines 37-42 Link Here
37
import org.eclipse.dltk.ui.viewsupport.ImageDescriptorRegistry;
37
import org.eclipse.dltk.ui.viewsupport.ImageDescriptorRegistry;
38
import org.eclipse.jface.resource.ImageDescriptor;
38
import org.eclipse.jface.resource.ImageDescriptor;
39
import org.eclipse.jface.text.contentassist.IContextInformation;
39
import org.eclipse.jface.text.contentassist.IContextInformation;
40
import org.eclipse.jface.viewers.StyledString;
40
import org.eclipse.swt.graphics.Image;
41
import org.eclipse.swt.graphics.Image;
41
42
42
/**
43
/**
Lines 655-663 Link Here
655
				image, displayString, relevance, false);
656
				image, displayString, relevance, false);
656
	}
657
	}
657
658
659
	@Deprecated
658
	protected ScriptCompletionProposal createScriptCompletionProposal(
660
	protected ScriptCompletionProposal createScriptCompletionProposal(
659
			String completion, int replaceStart, int length, Image image,
661
			String completion, int replaceStart, int length, Image image,
660
			String displayString, int relevance, boolean isInDoc) {
662
			String displayString, int relevance, boolean isInDoc) {
663
		return new ScriptCompletionProposal(completion, replaceStart, length,
664
				image, displayString, relevance, isInDoc);
665
	}
666
667
	/**
668
	 * @since 5.1
669
	 */
670
	protected ScriptCompletionProposal createScriptCompletionProposal(
671
			String completion, int replaceStart, int length, Image image,
672
			StyledString displayString, int relevance, boolean isInDoc) {
661
		return new ScriptCompletionProposal(completion, replaceStart, length,
673
		return new ScriptCompletionProposal(completion, replaceStart, length,
662
				image, displayString, relevance, isInDoc);
674
				image, displayString, relevance, isInDoc);
663
	}
675
	}
Lines 675-691 Link Here
675
		String completion = String.valueOf(proposal.getCompletion());
687
		String completion = String.valueOf(proposal.getCompletion());
676
		int start = proposal.getReplaceStart();
688
		int start = proposal.getReplaceStart();
677
		int length = getLength(proposal);
689
		int length = getLength(proposal);
678
		String label = getLabelProvider().createFieldProposalLabel(proposal);
690
		int relevance = computeRelevance(proposal);
691
692
		ScriptCompletionProposal scriptProposal;
693
694
		CompletionProposalLabelProvider labelProvider = getLabelProvider();
679
		Image image = getImage(getLabelProvider().createFieldImageDescriptor(
695
		Image image = getImage(getLabelProvider().createFieldImageDescriptor(
680
				proposal));
696
				proposal));
681
		int relevance = computeRelevance(proposal);
697
682
		// CompletionContext context = getContext();
698
		if (labelProvider instanceof ICompletionProposalLabelProviderExtension) {
683
		ScriptCompletionProposal scriptProposal = createScriptCompletionProposal(
699
684
				completion, start, length, image, label, relevance, /*
700
			StyledString label = ((ICompletionProposalLabelProviderExtension) getLabelProvider())
685
																	 * context
701
					.createStyledFieldProposalLabel(proposal);
686
																	 * .isInDoc
702
			// CompletionContext context = getContext();
687
																	 * ()
703
			scriptProposal = createScriptCompletionProposal(completion, start,
688
																	 */false);
704
					length, image, label, relevance, /*
705
													 * context .isInDoc ()
706
													 */false);
707
		} else {
708
			String label = getLabelProvider()
709
					.createFieldProposalLabel(proposal);
710
			// CompletionContext context = getContext();
711
			scriptProposal = createScriptCompletionProposal(completion, start,
712
					length, image, label, relevance, /*
713
													 * context .isInDoc ()
714
													 */false);
715
		}
716
689
		if (fScriptProject != null)
717
		if (fScriptProject != null)
690
			scriptProposal.setProposalInfo(new FieldProposalInfo(
718
			scriptProposal.setProposalInfo(new FieldProposalInfo(
691
					fScriptProject, proposal));
719
					fScriptProject, proposal));
Lines 698-708 Link Here
698
		String completion = String.valueOf(proposal.getCompletion());
726
		String completion = String.valueOf(proposal.getCompletion());
699
		int start = proposal.getReplaceStart();
727
		int start = proposal.getReplaceStart();
700
		int length = getLength(proposal);
728
		int length = getLength(proposal);
701
		String label = getLabelProvider().createKeywordLabel(proposal);
702
		Image img = getImage(getLabelProvider().createImageDescriptor(proposal));
703
		int relevance = computeRelevance(proposal);
729
		int relevance = computeRelevance(proposal);
704
		ScriptCompletionProposal scriptProposal = createScriptCompletionProposal(
730
705
				completion, start, length, img, label, relevance);
731
		ScriptCompletionProposal scriptProposal;
732
733
		CompletionProposalLabelProvider labelProvider = getLabelProvider();
734
		Image image = getImage(getLabelProvider().createImageDescriptor(
735
				proposal));
736
737
		if (labelProvider instanceof ICompletionProposalLabelProviderExtension) {
738
739
			StyledString label = ((ICompletionProposalLabelProviderExtension) getLabelProvider())
740
					.createStyledKeywordLabel(proposal);
741
			// CompletionContext context = getContext();
742
			scriptProposal = createScriptCompletionProposal(completion, start,
743
					length, image, label, relevance, /*
744
													 * context .isInDoc ()
745
													 */false);
746
		} else {
747
			String label = getLabelProvider().createKeywordLabel(proposal);
748
			// CompletionContext context = getContext();
749
			scriptProposal = createScriptCompletionProposal(completion, start,
750
					length, image, label, relevance, /*
751
													 * context .isInDoc ()
752
													 */false);
753
		}
706
754
707
		if (fScriptProject != null) {
755
		if (fScriptProject != null) {
708
			scriptProposal.setProposalInfo(new ProposalInfo(fScriptProject,
756
			scriptProposal.setProposalInfo(new ProposalInfo(fScriptProject,
Lines 717-727 Link Here
717
		String completion = String.valueOf(proposal.getCompletion());
765
		String completion = String.valueOf(proposal.getCompletion());
718
		int start = proposal.getReplaceStart();
766
		int start = proposal.getReplaceStart();
719
		int length = getLength(proposal);
767
		int length = getLength(proposal);
720
		String label = getLabelProvider().createSimpleLabel(proposal);
721
		int relevance = computeRelevance(proposal);
768
		int relevance = computeRelevance(proposal);
722
		return createScriptCompletionProposal(completion, start, length,
769
723
				getImage(getLabelProvider().createImageDescriptor(proposal)),
770
		ScriptCompletionProposal scriptProposal;
724
				label, relevance);
771
		
772
		CompletionProposalLabelProvider labelProvider = getLabelProvider();
773
		Image image = getImage(getLabelProvider().createImageDescriptor(
774
				proposal));
775
776
		if (labelProvider instanceof ICompletionProposalLabelProviderExtension) {
777
778
			StyledString label = ((ICompletionProposalLabelProviderExtension) getLabelProvider())
779
					.createStyledSimpleLabel(proposal);
780
			// CompletionContext context = getContext();
781
			scriptProposal = createScriptCompletionProposal(completion, start,
782
					length, image, label, relevance, /*
783
													 * context .isInDoc ()
784
													 */false);
785
		} else {
786
			String label = getLabelProvider().createSimpleLabel(proposal);
787
			// CompletionContext context = getContext();
788
			scriptProposal = createScriptCompletionProposal(completion, start,
789
					length, image, label, relevance, /*
790
													 * context .isInDoc ()
791
													 */false);
792
		}
793
		
794
		return scriptProposal;
725
	}
795
	}
726
796
727
	private IScriptCompletionProposal createLabelProposal(
797
	private IScriptCompletionProposal createLabelProposal(
Lines 729-739 Link Here
729
		String completion = String.valueOf(proposal.getCompletion());
799
		String completion = String.valueOf(proposal.getCompletion());
730
		int start = proposal.getReplaceStart();
800
		int start = proposal.getReplaceStart();
731
		int length = getLength(proposal);
801
		int length = getLength(proposal);
732
		String label = getLabelProvider().createSimpleLabel(proposal);
733
		int relevance = computeRelevance(proposal);
802
		int relevance = computeRelevance(proposal);
734
		return createScriptCompletionProposal(completion, start, length, null,
803
		
735
				label, relevance);
804
		ScriptCompletionProposal scriptProposal;
736
		// return null;
805
		
806
		CompletionProposalLabelProvider labelProvider = getLabelProvider();
807
808
		if (labelProvider instanceof ICompletionProposalLabelProviderExtension) {
809
810
			StyledString label = ((ICompletionProposalLabelProviderExtension) getLabelProvider())
811
					.createStyledSimpleLabel(proposal);
812
			// CompletionContext context = getContext();
813
			scriptProposal = createScriptCompletionProposal(completion, start,
814
					length, null, label, relevance, /*
815
													 * context .isInDoc ()
816
													 */false);
817
		} else {
818
			String label = getLabelProvider().createSimpleLabel(proposal);
819
			// CompletionContext context = getContext();
820
			scriptProposal = createScriptCompletionProposal(completion, start,
821
					length, null, label, relevance, /*
822
													 * context .isInDoc ()
823
													 */false);
824
		}
825
		return scriptProposal;
737
	}
826
	}
738
827
739
	private IScriptCompletionProposal createLocalVariableProposal(
828
	private IScriptCompletionProposal createLocalVariableProposal(
Lines 741-754 Link Here
741
		String completion = String.valueOf(proposal.getCompletion());
830
		String completion = String.valueOf(proposal.getCompletion());
742
		int start = proposal.getReplaceStart();
831
		int start = proposal.getReplaceStart();
743
		int length = getLength(proposal);
832
		int length = getLength(proposal);
833
		int relevance = computeRelevance(proposal);
834
835
		ScriptCompletionProposal scriptProposal;
836
837
		CompletionProposalLabelProvider labelProvider = getLabelProvider();
744
		Image image = getImage(getLabelProvider().createLocalImageDescriptor(
838
		Image image = getImage(getLabelProvider().createLocalImageDescriptor(
745
				proposal));
839
				proposal));
746
		String label = getLabelProvider().createSimpleLabelWithType(proposal);
840
747
		int relevance = computeRelevance(proposal);
841
		if (labelProvider instanceof ICompletionProposalLabelProviderExtension) {
748
		final ScriptCompletionProposal javaProposal = createScriptCompletionProposal(
842
749
				completion, start, length, image, label, relevance);
843
			StyledString label = ((ICompletionProposalLabelProviderExtension) getLabelProvider())
750
		javaProposal.setTriggerCharacters(getVarTrigger());
844
					.createStyledSimpleLabelWithType(proposal);
751
		return javaProposal;
845
			// CompletionContext context = getContext();
846
			scriptProposal = createScriptCompletionProposal(completion, start,
847
					length, image, label, relevance, /*
848
													 * context .isInDoc ()
849
													 */false);
850
		} else {
851
			String label = getLabelProvider().createSimpleLabelWithType(
852
					proposal);
853
			// CompletionContext context = getContext();
854
			scriptProposal = createScriptCompletionProposal(completion, start,
855
					length, image, label, relevance, /*
856
													 * context .isInDoc ()
857
													 */false);
858
		}
859
860
		scriptProposal.setTriggerCharacters(getVarTrigger());
861
		return scriptProposal;
752
	}
862
	}
753
863
754
	/**
864
	/**
Lines 815-838 Link Here
815
	}
925
	}
816
926
817
	protected IScriptCompletionProposal createTypeProposal(
927
	protected IScriptCompletionProposal createTypeProposal(
818
			CompletionProposal typeProposal) {
928
			CompletionProposal proposal) {
819
929
820
		String completion = typeProposal.getCompletion();
930
		String completion = proposal.getCompletion();
821
		int replaceStart = typeProposal.getReplaceStart();
931
		int start = proposal.getReplaceStart();
822
		int length = typeProposal.getReplaceEnd()
932
		int length = proposal.getReplaceEnd() - proposal.getReplaceStart();
823
				- typeProposal.getReplaceStart();
933
		int relevance = computeRelevance(proposal);
934
935
		ScriptCompletionProposal scriptProposal;
936
937
		CompletionProposalLabelProvider labelProvider = getLabelProvider();
824
		Image image = getImage(getLabelProvider().createTypeImageDescriptor(
938
		Image image = getImage(getLabelProvider().createTypeImageDescriptor(
825
				typeProposal));
939
				proposal));
826
940
827
		String displayString = getLabelProvider().createTypeProposalLabel(
941
		if (labelProvider instanceof ICompletionProposalLabelProviderExtension) {
828
				typeProposal);
829
942
830
		ScriptCompletionProposal scriptProposal = createScriptCompletionProposal(
943
			StyledString label = ((ICompletionProposalLabelProviderExtension) getLabelProvider())
831
				completion, replaceStart, length, image, displayString, 0);
944
					.createStyledTypeProposalLabel(proposal);
832
945
			// CompletionContext context = getContext();
833
		scriptProposal.setRelevance(computeRelevance(typeProposal));
946
			scriptProposal = createScriptCompletionProposal(completion, start,
947
					length, image, label, relevance, /*
948
													 * context .isInDoc ()
949
													 */false);
950
		} else {
951
			String label = getLabelProvider().createTypeProposalLabel(proposal);
952
			// CompletionContext context = getContext();
953
			scriptProposal = createScriptCompletionProposal(completion, start,
954
					length, image, label, relevance, /*
955
													 * context .isInDoc ()
956
													 */false);
957
		}
834
		scriptProposal.setProposalInfo(new TypeProposalInfo(fScriptProject,
958
		scriptProposal.setProposalInfo(new TypeProposalInfo(fScriptProject,
835
				typeProposal));
959
				proposal));
960
836
		return scriptProposal;
961
		return scriptProposal;
837
	}
962
	}
838
963

Return to bug 413346