[jboss-svn-commits] JBL Code SVN: r5161 - labs/jbossrules/branches/3.0.x/drools-ide/src/main/java/org/drools/ide/editors/completion

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Jul 18 18:46:08 EDT 2006


Author: /services/jbf-svn/code/hooks/commit-email-two.pl: `/opt/subversion/bin/svnlook info /services/jbf-svn/code -r 5161' failed with this output:
Date: svnlook: Inconsistent line ending style
New Revision: 5161

Modified:
   labs/jbossrules/branches/3.0.x/drools-ide/src/main/java/org/drools/ide/editors/completion/RuleCompletionProcessor.java
Log:
2006-07-18 18:46:06 -0400 (Tue, 18 Jul 2006)

Modified: labs/jbossrules/branches/3.0.x/drools-ide/src/main/java/org/drools/ide/editors/completion/RuleCompletionProcessor.java
===================================================================
--- labs/jbossrules/branches/3.0.x/drools-ide/src/main/java/org/drools/ide/editors/completion/RuleCompletionProcessor.java	2006-07-18 22:10:09 UTC (rev 5160)
+++ labs/jbossrules/branches/3.0.x/drools-ide/src/main/java/org/drools/ide/editors/completion/RuleCompletionProcessor.java	2006-07-18 22:46:06 UTC (rev 5161)
@@ -51,6 +51,8 @@
     private static final Image droolsIcon = DroolsPluginImages.getImage(DroolsPluginImages.DROOLS);
     private static final Image dslIcon = DroolsPluginImages.getImage( DroolsPluginImages.DSL_EXPRESSION );
     private static final Image classIcon = DroolsPluginImages.getImage(DroolsPluginImages.CLASS);
+    private static final Pattern END_OF_STATEMENT1 = Pattern.compile(".*then\\s*", Pattern.DOTALL);
+    private static final Pattern END_OF_STATEMENT2 = Pattern.compile(".*[;{}]\\s*", Pattern.DOTALL);
     
     public RuleCompletionProcessor(DRLRuleEditor editor) {
     	super(editor);
@@ -72,19 +74,15 @@
             
         	if (consequence(backText)) {
 	        	List dslConsequences = adapter.listConsequenceItems();
-                addDSLProposals( list,
-                                 prefix,
-                                 dslConsequences );
+                addDSLProposals(list, prefix, dslConsequences);
 	            if (!adapter.hasConsequences()) {
-
-	            	
-                    addRHSCompletionProposals( list,
-                                               prefix );                    
-        			
-        			addRHSFunctionCompletionProposals( viewer,
-                                                       list,
-                                                       prefix );
-        			
+	            	// only add functions and keywords if at the beginning of a new statement
+	            	String backTextWithoutPrefix = backText.substring(0, backText.length() - prefix.length());
+	            	if (END_OF_STATEMENT1.matcher(backTextWithoutPrefix).matches()
+	            			|| END_OF_STATEMENT2.matcher(backTextWithoutPrefix).matches()) {
+            			addRHSCompletionProposals(list, prefix);                    
+            			addRHSFunctionCompletionProposals(viewer, list, prefix);
+	            	}
         			addRHSJavaCompletionProposals(list, backText, prefix);
 	            }
 	        } else if (condition(backText) || query(backText)) {




More information about the jboss-svn-commits mailing list