Fixed: [ Issue 84 ] Custom options are being considered syntax errors.
https://code.google.com/p/protobuf-dt/issues/detail?id=84
diff --git a/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/contentassist/ProtobufProposalProvider.java b/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/contentassist/ProtobufProposalProvider.java
index fb0a0dc..60a82bc 100644
--- a/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/contentassist/ProtobufProposalProvider.java
+++ b/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/contentassist/ProtobufProposalProvider.java
@@ -70,7 +70,7 @@
proposeAndAccept(proposal, imageHelper.getImage(images.imageFor(Syntax.class)), context, acceptor);
}
- @Override public void completeOption_Name(EObject model, Assignment assignment, ContentAssistContext context,
+ @Override public void completeBuiltInOption_Name(EObject model, Assignment assignment, ContentAssistContext context,
ICompletionProposalAcceptor acceptor) {
if (proposeOptions(model, context, acceptor)) return;
if (model instanceof Option) {
@@ -113,9 +113,10 @@
proposeOption(option, context, acceptor);
}
- @Override public void completeOption_Value(EObject model, Assignment assignment, ContentAssistContext context,
+ @Override public void completeBuiltInOption_Value(EObject model, Assignment assignment, ContentAssistContext context,
ICompletionProposalAcceptor acceptor) {
- Option option = (Option) model;
+ if (!(model instanceof BuiltInOption)) return;
+ BuiltInOption option = (BuiltInOption) model;
ProtoDescriptor descriptor = descriptorProvider.get();
Enum enumType = descriptor.enumTypeOf(option);
if (enumType != null) {
@@ -307,8 +308,8 @@
return imageHelper.getImage(images.defaultImage());
}
- @Override public void completeFieldOption_Name(EObject model, Assignment assignment, ContentAssistContext context,
- ICompletionProposalAcceptor acceptor) {
+ @Override public void completeBuiltInFieldOption_Name(EObject model, Assignment assignment,
+ ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
Field field = extractFieldFrom(context);
proposeCommonFieldOptions(field, context, acceptor);
}
@@ -374,10 +375,10 @@
acceptor.accept(proposal);
}
- @Override public void completeFieldOption_Value(EObject model, Assignment assignment, ContentAssistContext context,
- ICompletionProposalAcceptor acceptor) {
- if (!(model instanceof FieldOption)) return;
- FieldOption option = (FieldOption) model;
+ @Override public void completeBuiltInFieldOption_Value(EObject model, Assignment assignment,
+ ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+ if (!(model instanceof BuiltInFieldOption)) return;
+ BuiltInFieldOption option = (BuiltInFieldOption) model;
if (fieldOptions.isDefaultValueOption(option)) {
proposeDefaultValue(option, context, acceptor);
return;