Commit Graph

68 Commits

Author SHA1 Message Date
Christian Kamm
25e04d8ef1 Make QmlJS::Link private. Use Context::build to set up a context. 2010-02-04 10:34:49 +01:00
Roberto Raggi
254c9c8d64 Disable the auto global completion for QML/JS files.
It needs some tuning :(
2010-02-03 16:07:03 +01:00
Roberto Raggi
3ee6a03fc7 Disabled snippet completion. 2010-02-03 16:07:03 +01:00
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