From 46d42919b308fe261bd84bae2b09305ae1cb7a7e Mon Sep 17 00:00:00 2001
From: Roberto Raggi <roberto.raggi@nokia.com>
Date: Wed, 6 May 2009 17:41:06 +0200
Subject: [PATCH] Add to the completion box the names used in JavaScript
 functions.

---
 src/plugins/duieditor/duieditor.cpp | 34 +++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/src/plugins/duieditor/duieditor.cpp b/src/plugins/duieditor/duieditor.cpp
index 49782d0ee38..134baa059fd 100644
--- a/src/plugins/duieditor/duieditor.cpp
+++ b/src/plugins/duieditor/duieditor.cpp
@@ -133,6 +133,40 @@ protected:
         return true;
     }
 
+    virtual bool visit(AST::FunctionExpression *node)
+    {
+        if (node->name)
+            _words.insert(node->name->asString());
+
+        for (AST::FormalParameterList *it = node->formals; it; it = it->next) {
+            if (it->name)
+                _words.insert(it->name->asString());
+        }
+
+        return true;
+    }
+
+    virtual bool visit(AST::FunctionDeclaration *node)
+    {
+        if (node->name)
+            _words.insert(node->name->asString());
+
+        for (AST::FormalParameterList *it = node->formals; it; it = it->next) {
+            if (it->name)
+                _words.insert(it->name->asString());
+        }
+
+        return true;
+    }
+
+    virtual bool visit(AST::VariableDeclaration *node)
+    {
+        if (node->name)
+            _words.insert(node->name->asString());
+
+        return true;
+    }
+
 private:
     QSet<QString> _words;
 };
-- 
GitLab