The new and cleaner foldingIndent in the block user data will
make it easier to support other kinds of indentation for various
other programming languages (like Python).
When automatic insertion of brackets is disabled in the completion
settings, it is reasonable to expect the automatic matching of brackets
is also disabled.
Task-number: QTCREATORBUG-454
Reviewed-by: Daniel Molkentin <daniel.molkentin@nokia.com>
The actions perform exactly like their counterparts in Eclipse: a new,
indented line is inserted above or below the current line and the text
cursor is moved to the start of the new line. The line where the cursor
was before the action was triggered remains unchanged.
The shortcuts are also like in Eclipse: "Ctrl+Shift+Return" inserts a
line above the current, "Shift+Return" inserts a line below the current.
Merge-request: 140
Reviewed-by: Thorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>
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
We now use two cursors, with the first one being positioned at the
character before the find scope starts. This makes it possible
to extend the scope when typing at the beginning or the end of
it. This is more what the user expects. The effect is noticable
with find&replace of words at the beginning or end of the scope.
On some desktop environments, dragging and dropping a file gives us
the url to the file in multiple mime types, including text/plain. This
causes the url to be inserted as text by default.
Work around this issue by explicitly ignoring drop events for the text
editor when they also come with urls.
Task-number: QTCREATORBUG-728
Reviewed-by: Friedemann Kleint
It was a bit confusing, since it reversed the order of the lines. When
this would be fixed, the added value of this action is very small, since
you can then also simply move your cursor one up before joining the
lines.
* Use id() for methods returning a string used to represent
some type of object.
* Use displayName() for strings that are meant to be user
visible.
* Quieten some warnings while touching the files anyway.
* Move Factories to their products in the plugins where that
was not done before.
Reviewed-by: dt
the fakevim plugin needs access to this method for automatic indenting as the implementation
differs across the different types of editors
Merge-request: 98
Reviewed-by: hjk <qtc-committer@nokia.com>
the new approach makes it possible to use more edit features
inside the rename selection like cut/copy/paste. Furthermore
it compresses rename operations better on the undo stack.
the fix makes the mouse cursor visible when the editor loses focus.
This fixes an issue with the completion box, where on mac and windows
no mouse cursor would be visible (it worked on X11 due to the way
X11 does mouse grabbing for popup windows).
Only checking Ctrl and link availability on mouse release was triggering
the navigation too easily.
Now you have to press and release the mouse on the same link, having
Ctrl pressed all the time. In addition, when changing the text selection
the link is also cleared.
Task-number: QTCREATORBUG-134
Reviewed-by: con
at a later stage we will look into harmonizing context menu among different editors.
The cpp editor had the biggest need, because its context menu features all sorts of
extra refactoring operations, thus the standard Qt context menu became too large.
auto-indentation of pasted text now only happens when complete
lines including a trailing paragraph separator are copied and pasted.
In addition, the reindent() functions ensures that the relative indentation
within the pasted block is preserved. This mechanism is now also used for
moving lines up/down.
Done with thorbjorn
We now exclude brace in ifdefed out sections when calculating,
whether or not the braces match. This requires adjust the brace
levels whenever sections get ifdef'd out or ifdef'd in again.