Commit Graph

65 Commits

Author SHA1 Message Date
Roberto Raggi
976d74ca73 Add support for lazy prototypes.
Done-with: ckamm
2010-02-03 15:42:32 +01:00
Roberto Raggi
1f0b717ad2 Completion for global variables in JS.
* Support for lookup JS vs Qml
* Bind global variables.

Done-with: ckamm
2010-02-03 14:34:06 +01:00
Roberto Raggi
1cbee8cd71 Fixed EnumerateProperties to enumerate properties of the base object.
Done with: ckamm
2010-02-03 11:12:19 +01:00
Christian Kamm
49c43aaab1 Get rid of Environment, introduce external ScopeChain in Link.
Done-with: Roberto
2010-02-03 10:59:52 +01:00
Roberto Raggi
ba18e70034 Introduced QML/JS references.
Done with ckamm
2010-02-03 10:24:25 +01:00
Roberto Raggi
14ffb1e465 Some refactoring needed to create ranges for JavaScript functions. 2010-02-02 16:36:14 +01:00
Christian Kamm
03fa188b41 Bind each QML document after parsing. Link them before use.
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2010-02-02 16:03:43 +01:00
Roberto Raggi
4bb0e85cfe Cleanup 2010-02-02 11:14:30 +01:00
Roberto Raggi
53d1eba3f7 Use the snapshot from the semanticinfo when processign QML/JS documents. 2010-02-02 11:14:30 +01:00
Roberto Raggi
460c47f5c6 Introduced SemanticInfo::declaringMember(pos). 2010-02-01 16:18:26 +01:00
Roberto Raggi
0cf48cb45d Introduced ASTFunctionValue. 2010-02-01 13:54:59 +01:00
Roberto Raggi
4880ae5b94 Don't activate the completion when the token under cursor is a comment or a string literal. 2010-02-01 11:55:19 +01:00
Roberto Raggi
d514949ad5 Removed obsolete code. 2010-02-01 11:41:15 +01:00
Roberto Raggi
cd9d13acac Simplified triggerCompletion(). 2010-02-01 11:40:29 +01:00
Roberto Raggi
18e0777e41 Sort lower case items before upper case items in QML/JS completion.
Done with: Thorbjorn
2010-02-01 11:33:26 +01:00
Roberto Raggi
6fe1f5b96c Made the error recovering more robust. 2010-01-28 16:29:45 +01:00
Roberto Raggi
da81d59e24 Look at the enumerators when populating the completion box. 2010-01-28 15:51:16 +01:00
Roberto Raggi
7bc2ab8ac9 Automagically pop up the completion box (experimental) for QML/JS code (experimental). 2010-01-28 14:57:18 +01:00
Christian Kamm
1d39377fb1 Separate bind into bind, link imports and building the scope chain. 2010-01-28 14:53:53 +01:00
Roberto Raggi
39c2575ab3 Removed obsolete code
Done with: Erik
2010-01-27 14:37:24 +01:00
Erik Verbruggen
8ecc80ec4c Generalized ExpressionUnderCursor and got rid of duplicate code.
Done-with: Roberto Raggi
2010-01-27 12:41:01 +01:00
Erik Verbruggen
bbb63c44d4 Removed unused variable. 2010-01-27 12:41:01 +01:00
Roberto Raggi
9cdca3a92b Some initial support for relative imports. 2010-01-26 17:23:18 +01:00
Roberto Raggi
c1b3f0b120 Coding style. 2010-01-26 16:21:03 +01:00
Roberto Raggi
02ee76b82a Initalize the members of the binder. 2010-01-26 15:51:31 +01:00
Roberto Raggi
f753d3328b Add the snippets to the completion box when the character at the left of the text cursor is a delimiter. 2010-01-26 15:23:19 +01:00
Erik Verbruggen
cf35a0249b Implemented the binding phase for QML.
Done-with: Christian Kamm
2010-01-26 15:20:18 +01:00
Roberto Raggi
5d272795cf Don't add the QML signals to the completion box. 2010-01-26 15:19:19 +01:00
Roberto Raggi
204aeb700e Skip the tokens inside brackets when computing the expression under cursor. 2010-01-26 15:09:04 +01:00
Roberto Raggi
ab8c19f2f8 Some initial work on the type checker for QML/JS. 2010-01-26 14:55:33 +01:00
Roberto Raggi
0e93bf3b96 Activate the global completion when the the character at the left of the text cursor is a delimiter. 2010-01-26 12:36:40 +01:00
Roberto Raggi
cb688f05f3 Disable the QML black magic thingie when working on JS files. 2010-01-26 11:51:44 +01:00
Roberto Raggi
1ba889a1bf Generalized the filtering of completion items. 2010-01-26 11:44:45 +01:00
Roberto Raggi
478907e5c3 Added method defaultValueForBuiltinType(typeName) to the QML/JS interpreter. 2010-01-26 11:15:21 +01:00
Roberto Raggi
2512a684d5 Show the argument names from the method's signature. 2010-01-26 10:50:55 +01:00
Roberto Raggi
bf8c0b8a22 Complete signals, slots and generate slots of QML items. 2010-01-26 10:19:42 +01:00
Roberto Raggi
2a5506b1d0 Show auto generated slots (e.g. onClicked) only when performing a global completion. 2010-01-26 10:10:11 +01:00
Roberto Raggi
c65a028f74 Added the user components to the global completion and fixed completion for the `parent' property. 2010-01-26 09:54:02 +01:00
Roberto Raggi
0969f3b85f Resolve the `import' directives.
Yet another quick and dirty hack while waiting for the real binding pass.
2010-01-25 17:14:23 +01:00
Roberto Raggi
c9b80ae370 Activate the function-like completion only when the character at the left of the text cursor is a `('. 2010-01-25 16:52:10 +01:00
Roberto Raggi
4d0502f414 Just a temporary hack to get completion for user-defined components. It should go away as soon as we have a decent binding pass. 2010-01-25 15:50:21 +01:00
Roberto Raggi
c9efafcb98 Introduced ranges and versioning of QML/JS documents. 2010-01-25 14:18:53 +01:00
Roberto Raggi
6db71d185b Try to get the item under cursor. 2010-01-25 09:31:36 +01:00
Roberto Raggi
24f5a9c0e4 Set up the scope chain. 2010-01-25 09:31:36 +01:00
Roberto Raggi
b4a901aa1e Initial work on global completion for QML/JS files. 2010-01-25 09:31:35 +01:00
Roberto Raggi
feab07de81 Refactored the QML/JS completer 2010-01-25 09:31:35 +01:00
Roberto Raggi
659b2a7ee3 Complete QML properties. 2010-01-25 09:31:35 +01:00
Roberto Raggi
2d2ec2b785 Cleanup 2010-01-25 09:31:34 +01:00
Thorbjørn Lindeijer
d3acff747c Don't try to read the next start element after the root element
There can only be one root element in an XML document, and when we try
to read another one we get a premature end of document error.
2010-01-22 15:54:03 +01:00
Roberto Raggi
099f2072a2 Added a simple scanner to get the expression under cursor. 2010-01-22 14:42:59 +01:00