Commit f04e8a55 authored by Philip Makedonski's avatar Philip Makedonski
Browse files

+ added support for formal parameters and functions, #122

parent de3b354d
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -489,8 +489,21 @@ public class TDLtxProposalProvider extends AbstractTDLtxProposalProvider {
				for (Member m : ((StructuredDataType) ((StructuredDataInstance)dataElement).getDataType()).allMembers()) {
					acceptor.accept(createCompletionProposal(prefix+m.getName()+suffix, new StyledString(prefix+m.getName()+suffix).append(description, StyledString.DECORATIONS_STYLER), getImage(m), 100000, "", context));
				}
			} else if (dataElement instanceof FormalParameter) {
				DataType dataType = ((FormalParameter) dataElement).getDataType();
				if (dataType instanceof StructuredDataType) {
					for (Member m : ((StructuredDataType) dataType).allMembers()) {
						acceptor.accept(createCompletionProposal(prefix+m.getName()+suffix, new StyledString(prefix+m.getName()+suffix).append(description, StyledString.DECORATIONS_STYLER), getImage(m), 1000, "", context));
					}
				}
			} else if (dataElement instanceof Function) {
				DataType dataType = ((Function) dataElement).getReturnType();
				if (dataType instanceof StructuredDataType) {
					for (Member m : ((StructuredDataType) dataType).allMembers()) {
						acceptor.accept(createCompletionProposal(prefix+m.getName()+suffix, new StyledString(prefix+m.getName()+suffix).append(description, StyledString.DECORATIONS_STYLER), getImage(m), 1000, "", context));
					}
				}
			}
			//TODO: function / parameter
		} else if (model instanceof StructuredDataType) {
			for (Member m : ((StructuredDataType) model).allMembers()) {
				acceptor.accept(createCompletionProposal(prefix+m.getName()+suffix, new StyledString(prefix+m.getName()+suffix).append(description, StyledString.DECORATIONS_STYLER), getImage(m), 1000, "", context));