Due to using QTextCursor::columnNumber() instead of
QTextCursor::positionInBlock(), a lot of code would not work correctly
when used with wrapped lines.
In addition, there was an issue with columnNumber() returning 0 right
after inserting a character before the last character of a line.
Reviewed-by: mae
* Context::build was potentially dangerous. Link and ScopeBuilder
went out of scope before their results stopped being used.
* ScopeBuilder: If no function scope object was found, don't add it.
Reviewed-by: Erik Verbruggen
By moving the completion settings into the TextEditor plugin, so that
both the CppTools and the QmlJSEditor plugins can access the settings.
The user-interface to edit the settings is still in the CppTools plugin,
since we're in string freeze at the moment. It should be moved to the
TextEditor plugin later.
For now the QML completion only supports the case-sensitivity and
partial completion options, since there is no automatic insertion of
brackets.
Task-number: QTCREATORBUG-1327
Reviewed-by: Daniel Molkentin <daniel.molkentin@nokia.com>
The plan is to use this to reduce the number of applicable
completion options, for instance for enum completion or property
names.
Done-with: Erik Verbruggen
The Parentheses, TextBlockUserData and TextEditDocumentLayout classes
and their member function implementations were spread around the
BaseTextEditor class. Moving them to their own file to make the code a
bit better organized.
Reviewed-by: mae
Instead of only maintaining a flat list of scopes, actually store the
global, component chain, root object, scope object, function, id and js
scopes separately.