|
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 |
|