- 09 Jun, 2014 5 commits
-
-
Denis Steckelmacher authored
ExpressionVisitor and UseBuilder now recognize "anchors.parent" as being an use of the "parent" member of "anchors"
-
Denis Steckelmacher authored
-
Denis Steckelmacher authored
-
Denis Steckelmacher authored
-
Denis Steckelmacher authored
Use injectContext instead of Declaration::setContext so that ContextBuilder can keep track of the declarations encountered in a context This avoids moved declarations from being deleted by the DUChain cleanup logic because they are declared in a context in which they don't appear afterwards.
-
- 08 Jun, 2014 7 commits
-
-
Denis Steckelmacher authored
This will also allow uses before definitions in QML but some other problems first need to be solved.
-
Denis Steckelmacher authored
Update the unit tests now that enumerations are correctly handled, and don't use not-yet-upstreamed features The previous commit should have been named "Declare enumeration values in the enumeration itself, not in a sub-context, and set the propagateDeclarations flag of enumerations".
-
Denis Steckelmacher authored
-
Denis Steckelmacher authored
"onTest: foo" is invalid but "foo" is valid and can be used to provide code- completion items.
-
Denis Steckelmacher authored
"onTest: foo" is invalid but "foo" is valid and can be used to provide code- completion items.
-
Denis Steckelmacher authored
When providing completions for script bindings, don't propose script bindings for properties/signals of the surrounding components While a QML component can access the properties of its surrounding components in a Javascript function or a script binding, it would have no meaning for it to assign a script binding to a property of one of its surrounding components. Label { Button { elide: // Huh? Button musn't see the "elide" property of Labem } }
-
Denis Steckelmacher authored
This avoids a race condition where the background parser queue becomes empty, testFiles stops waiting, but an asynchronous job somehow manages to refill the queue. The greater delay does not slow down the tests, there a just less iterations of the waiting loop executed.
-
- 07 Jun, 2014 7 commits
-
-
Denis Steckelmacher authored
Builtin QML modules are not imported automatically, so import them as dependencies to other QtQuick modules
-
Denis Steckelmacher authored
-
Denis Steckelmacher authored
-
Denis Steckelmacher authored
UiPublicMember has a field that can be used to know whether the type of the property has to be wrapped in an array.
-
Denis Steckelmacher authored
-
Denis Steckelmacher authored
Ensure that the last declaration of ExpressionVisitor is cleared if no pertinent declaration has been found For instance, when the declaration of an object member cannot be found, ensure that ExpressionVisitor will return nothing, and not the declaration of the object. "foo" in "object.foo" is not an use of "object" if "foo" does not exist in "object".
-
Denis Steckelmacher authored
REVIEW: 118600
-
- 06 Jun, 2014 11 commits
-
-
Denis Steckelmacher authored
-
Denis Steckelmacher authored
This prevents variables declared in one block to become visible to the other blocks. Item { onFoo: { var a; } onBar: { a = 2; // this is not onFoo.a } }
-
Denis Steckelmacher authored
Revert "QML components can only see declarations in their context, their imported parent contexts and the top-level context" This reverts commit 4cbe87a9. QML components can see their parents, I should have tested in QtCreator. Conflicts: codecompletion/tests/qmlcompletiontest.cpp duchain/declarationbuilder.cpp tests/files/test.qml
-
Denis Steckelmacher authored
REVIEW: 118596
-
Denis Steckelmacher authored
When the user selects a QML signal in a QML component context, code-complete it using its corresponding slot. In "Item { | }", "changed" is displayed as "onChanged", and selecting this completion item inserts "onChanged: " in the code.
-
Denis Steckelmacher authored
In a QML component, this changes "col|" to "color: " and "property col|" to "property color" (without the colon). This also works in Javascript object literals, but this is not really useful there (but not wrong).
-
Denis Steckelmacher authored
This allows an easy choice of how completion items should be decorated: * item (no decoration) * "item" (quotes) * "item"] (quotes and closing bracket, to change [| to ["foo"]|) * item: (will be used in QML)
-
Denis Steckelmacher authored
If the user types "inexistant: value", it is a mistake and QML/JS should not declare "indexistant" as being a new property. Properties are declared using "property <type> <name>[: <value>]".
-
Denis Steckelmacher authored
If a QML component inherits from NotFound, typeFromClassName will create a StructureType whose DeclarationId is "NotFound". The problem arises if NotFound is later properly declared. declareComponent will therefore create another StructureType, whose Declaration is "module::NotFound". The two StructureType having nearly the same name but one having a declaration and not the other will fight to death and cause random crashes. This patch also modifies declareComponentSubclass so that special components (components, modules, signals, ...) see their parent modules and can therefore use their declarations. This allows "void foo(QtQuick::QModelIndex)" to be properly recognized.
-
Denis Steckelmacher authored
This avoids "Inherited by , , , , " in the navigation widget.
-
Denis Steckelmacher authored
QML components can only see declarations in their context, their imported parent contexts and the top-level context REVIEW: 118575
-
- 05 Jun, 2014 2 commits
-
-
Denis Steckelmacher authored
Move most of visit(UiObjectDefinition) to declareComponentSubclass, so that visit(UiObjectBinding) does not contain duplicated code "Behavior on ... {}" and "Behavior {}" are handled in exactly the same way, so they must use the exact same code.
-
Denis Steckelmacher authored
REVIEW: 118560
-
- 03 Jun, 2014 5 commits
-
-
Denis Steckelmacher authored
-
Denis Steckelmacher authored
object[| lists the members of object in addition to the symbols visible in the current context. object.| does not list the symbols visible in the current context, only the members of object.
-
Denis Steckelmacher authored
CCMAIL: mail@milianw.de
-
Denis Steckelmacher authored
REVIEW: 118493
-
Denis Steckelmacher authored
Completions displayed for "object." must be the local declarations of object, not everything visible from object. var a; var object = {b: "c"}; object.| This snippet should only display "string b", not "mixed a; string b".
-
- 02 Jun, 2014 3 commits
-
-
Denis Steckelmacher authored
Add a method in ExpressionVisitor that will be used when encountering function expressions and object literals
-
Denis Steckelmacher authored
-
Denis Steckelmacher authored
REVIEW: 118465
-