Commit Graph

673 Commits

Author SHA1 Message Date
Orgad Shaneh
04f0891fb4 TextEditor: Avoid repetitive calls
Change-Id: Iae1e32c1c078bbc6605b8baa8d856cd30f84b239
Reviewed-by: David Schulz <david.schulz@digia.com>
2014-05-21 07:40:28 +02:00
Orgad Shaneh
245c0deb69 TextEditor: Pass some const values by reference
Change-Id: I059ee93d986425ebf6896bfad92845246d351831
Reviewed-by: David Schulz <david.schulz@digia.com>
2014-05-20 11:43:47 +02:00
Orgad Shaneh
86319398b6 TextEditor: Remove duplicate condition
Change-Id: I606276670bb78f5e705bbe98cd4c7e5f59a7723e
Reviewed-by: David Schulz <david.schulz@digia.com>
2014-05-20 11:42:09 +02:00
Vicken Simonian
abe4bff86a Editor: Utilize Current Line Number background color
Task-number: QTCREATORBUG-12170
Change-Id: Ib27962a6f72b903fa2caadc441cd6ef51b5b1810
Reviewed-by: David Schulz <david.schulz@digia.com>
2014-05-13 12:28:13 +02:00
David Schulz
adb5a7a708 Editor: Set correct title to the print job.
Fix proposed by Alex Sokolov.

Task-number: QTCREATORBUG-12161
Change-Id: I1a7d4e9579dbb518970ea7bdb76a740e8e5d870d
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-05-12 08:19:41 +02:00
Wiebe Cazemier
b63d9c6df0 Adds option to make editor not scroll on debugging
Added an option to change the behavior of the debuggercore so that
the current editor isn't always centered on the current line, to stop
unnecessary jumping of the code.

Change-Id: I9406df518bb1b977e39a0265ee7fd6fae2069ed9
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-05-08 15:20:48 +02:00
jkobus
671ffc8f73 Fix a warning about a position out of range.
May happen when selecting a text in diff editor.

Change-Id: I2c4790c42c91623fc8b4cabef8a4604de9fd4cef
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: David Schulz <david.schulz@digia.com>
2014-05-07 08:07:42 +02:00
Mitch Curtis
243362b774 Highlight single character search results.
The logic behind the old code was that it was pointless to highlight
single characters, but it didn't explain why. This is useful for
searching for single character variable names, for instance.

Change-Id: Ic8cf60190c1a9caa1eb4441921e60f377fbee8d4
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-03-19 17:30:47 +01:00
Oswald Buddenhagen
52bf71fbdf Merge remote-tracking branch 'origin/3.1'
Conflicts:
	README
	tests/auto/debugger/tst_dumpers.cpp

Change-Id: Ib9aef37a246bc3bb9bca0c32a902af3b09ef3146
2014-03-11 13:39:55 +01:00
Eike Ziller
12b25ebd2e TextEditors: remove unused variables
Change-Id: Id0d2115c7d8819d35dc626d5605650f7b450ee87
Reviewed-by: David Schulz <david.schulz@digia.com>
2014-03-07 12:53:13 +01:00
Eike Ziller
32a017122b Merge remote-tracking branch 'origin/3.1'
Conflicts:
	qtcreator.pri

Change-Id: Iae83884b818a3d2d812936f463d7d52cd1f7b42a
2014-02-27 09:44:20 +01:00
David Schulz
b4394dabdb Editor: fix upper and lower case on blockselection.
Task-number: QTCREATORBUG-11546

Change-Id: I2e8b5b05ff0044e5ab159119f24dff873be949d7
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-02-27 06:49:07 +01:00
David Schulz
6cac6f0ef6 Editor: Optimize out viewport update.
Change-Id: If4661d68d30e5ba36efbba3376242631ec0402d4
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-02-27 06:48:56 +01:00
Frantisek Vacek
fa998d2d2c Improve Copy/CutLine actions usability
This patch implements two features:
1. Reimplement CopyLine to move text cursor at the beginning of line
2. Add copy/cutLine action to Advanced Edit menu, to make it
   discoverable for editor users.

Change-Id: I0bf336ebee4dbf5afd2c759e47b1830271bd9d18
Reviewed-by: David Schulz <david.schulz@digia.com>
2014-02-26 10:26:44 +01:00
Lorenz Haas
ac70c168da Optimize usage of QPalette
setPalette() does not replace the old one but rather adds the
difference. Thus a previous copy of the palette is unnecessary.

Change-Id: I5c06da456b76144efc4a984ccda13c7d2243a7bc
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-02-21 08:53:28 +01:00
Eike Ziller
f335da7a75 Editors: Add option to not hide the mouse cursor when typing
Task-number: QTCREATORBUG-3584

Change-Id: Iae5551d36b72c5712f3276b15dfa85982a776dcf
Reviewed-by: David Schulz <david.schulz@digia.com>
2014-02-18 11:53:45 +01:00
Eike Ziller
30719c68fa TextEditors: update parentheses highlighting when font settings change
Change-Id: Ia9c43d52116a337abee8704f9fbbe80a56029caa
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-02-06 13:41:27 +01:00
Eike Ziller
99dec87406 TextEditors: Generalize update mechanism when editors become visible
Generalizes the special handling of font settings, which should only be
applied (on the document) when an editor is or becomes visible.

Change-Id: Icd1e3ba4355e1ff4a837c9679b537cc3f5ed7ea9
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2014-02-06 13:14:56 +01:00
Eike Ziller
7e30653f8f TextEditors: Update block revisions only once per document
Instead of once per editor.
Also remove a related unused function.

Change-Id: I4bcd86b9b0ec61b87500e546cf2138ec5d854561
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-29 11:22:44 +01:00
Eike Ziller
0ec2a02fd4 TextEditors: Avoid multiple highlighting runs when changing font setting
And remove some unnecessary code in Python editor

Change-Id: I86cde74c244a16d1b36b0ac0e841ef8110ba832f
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-24 08:00:45 +01:00
Eike Ziller
c99464dd9b TextEditors: Remove unnecessary duplicated caching
Change-Id: I3800360e3b9bd6874d6852dabcfc7a9a066e52c2
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-24 08:00:28 +01:00
Eike Ziller
3fa6b6737c TextEditors: Move font settings to document
Change-Id: I325764cbaa9684fa2758b0ea6c6ea58de142cb73
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-24 08:00:07 +01:00
Eike Ziller
5deb0f367e Editors: Add at least some short documentation.
Change-Id: I7fc7946405d3cbb1af0cf29a9d328d857eb8304a
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-23 09:21:15 +01:00
Eike Ziller
4eff289e03 TextEditors: Remove widget's setTabSettings method
Change-Id: If212b45e2d526534b7853f3fa23b170f61e1976e
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2014-01-21 11:22:16 +01:00
Eike Ziller
c06e68c439 TextEditors: Remove tabSettings() from widget
It's part of the document.

Change-Id: I7288b09a0792fdae9c741016594e129f6b21f8e7
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2014-01-21 10:53:37 +01:00
Eike Ziller
83c61f2eaf Revert "BaseTextEditWidget: Forward everything with ControlModifier to QPTE"
Lead to annoying behavior that pressing any disabled shortcut with control
modifier would lead to unwanted characters in the editor.
This reverts commit c1ff105a0c.

Change-Id: If61e52be9f11cabeafb46f5d71b901b4eab8e169
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2014-01-20 13:41:07 +01:00
Eike Ziller
61b0aacb12 TextEditors: Remove unused signal
Change-Id: Iee8d9393b9f203f3a43d7dcc000f4a01d3e3710f
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-16 17:11:42 +01:00
Eike Ziller
3bc4bb3cb9 TextEditors: Move manual (un)indent code to document
Change-Id: I01e93a15b8280a55c31db6be28fe6eb39c7babb0
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-16 15:51:18 +01:00
Eike Ziller
8aedff7f22 TextEditors: Move some auto-indentation code to document
From the editor widget. Also name them autoIndent/autoReindent to
distinguish from the manual indent functions.

Change-Id: I4e1b9d503f53870b669fee66467e5e567eacefec
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-16 15:50:56 +01:00
Eike Ziller
7422b47942 TextEditors: Remove "optimization"
I couldn't find a situation where this code actually resulted in
performance improvement.

Change-Id: I7d905af36ef11dcba43030dc83670c3d1558f650
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2014-01-16 15:50:26 +01:00
Eike Ziller
3ad3876611 TextEditors: Move indenter to document.
Change-Id: I8bdf7134562d007aa16cc63a34f5a15a708577ae
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-15 15:02:25 +01:00
Daniel Teske
c1ff105a0c BaseTextEditWidget: Forward everything with ControlModifier to QPTE
Task-number: QTCREATORBUG-11137
Change-Id: Icd1bd55cb8bb3087667b01e18b6774987971601b
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-15 12:46:36 +01:00
Eike Ziller
b7ce718d4c TextEditors: Make function static
Change-Id: I4297651458f6efb28a3bbeb83b4c038956d64305
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-15 10:44:12 +01:00
Eike Ziller
4d99f6e9ad BaseTextEditor: Make internally used function static
Change-Id: I365e4c56b45dda205caa009e7733579d40bca9d0
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-14 09:05:34 +01:00
Eike Ziller
2a2837a683 BaseTextEditor: Remove unused method and member
Change-Id: I9b9081df454aae35c42744f4bbd385e8bd6c50d2
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-14 09:05:18 +01:00
Eike Ziller
355f104d0e BaseTextEditor: Remove some unnecessary indirections through widget
Change-Id: I4f71448d6788a4e553b1495b72263a004e65d8c0
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-14 09:05:06 +01:00
Eike Ziller
cfad9bdc3c TextEditors: Move contentsChanged signal from editor to document
Change-Id: Ic935a8971705cb3238deda71aa2b5d19e4f62593
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-14 09:03:58 +01:00
hjk
4d96fa7aba Core: Merge Find and Locator into Core plugin
Change-Id: I7053310272235d854c9f409670ff52a10a7add8b
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-14 07:43:00 +01:00
Eike Ziller
2251958375 TextEditors: Avoid changing document after construction.
Also when duplicating editors, we don't want to change the document
after construction. Actually at some places (e.g. CppEditorSupport
creation) we don't handle document changes correctly, and we are only
lucky that things still (more or less?) work. Get rid of
BaseTextEditorWidget::duplicateFrom and use copy-constructor style instead.

Change-Id: I7f688b7fcc51d1bb5e222bb333f0d28479b597a6
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2014-01-10 14:38:36 +01:00
Eike Ziller
a3608f595a Editors: Remove BaseTextEditorWidget::setBaseTextDocument
First step in never changing the text document after construction,
because that is actually not really supported.
Second step will be to fix that for the editor duplicate() methods too.

Change-Id: I3d112ba0895e7ee7ac6dd8ae2318f0de7d2cebc9
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2014-01-10 14:31:11 +01:00
Erik Verbruggen
02314e24f0 Editor: add margin displaying to project settings.
This patch also moves the showMargin and marginColumn settings into a
new settings class.

Change-Id: I676447be751c13ee438edc1e31e5998b999c6771
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-10 12:11:24 +01:00
Eike Ziller
f9ce335a6d Editors: Remove useless parent widget argument from create/duplicate
It was never called with a sensible value anyhow, and only complicates things.

Change-Id: I005848700b6c00114d91495670d4a0e15a2d2e64
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-08 11:46:11 +01:00
Eike Ziller
236ea9efb9 Merge remote-tracking branch 'origin/3.0'
Conflicts:
	share/qtcreator/debugger/dumper.cpp
	share/qtcreator/debugger/dumper_p.h
	share/qtcreator/debugger/test/main.cpp
	src/plugins/debugger/gdb/classicgdbengine.cpp
	src/plugins/debugger/gdb/pythongdbengine.cpp
	src/plugins/debugger/lldblib/guest/lldbengineguest.cpp
	src/plugins/debugger/lldblib/guest/lldbengineguest.h
	src/plugins/debugger/lldblib/guest/main.cpp
	src/plugins/debugger/lldblib/ipcengineguest.cpp
	src/plugins/debugger/lldblib/ipcengineguest.h
	src/plugins/debugger/lldblib/ipcenginehost.cpp
	src/plugins/debugger/lldblib/ipcenginehost.h
	src/plugins/debugger/lldblib/lldbenginehost.cpp
	src/plugins/debugger/lldblib/lldboptionspage.cpp
	src/plugins/qbsprojectmanager/qbsstep.cpp
	src/plugins/qbsprojectmanager/qbsstep.h
	src/plugins/qmlprofiler/canvas/qdeclarativecanvas.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativecanvas_p.h
	src/plugins/qmlprofiler/canvas/qdeclarativecontext2d.cpp
	src/plugins/qmlprofiler/canvas/qdeclarativecontext2d_p.h
	src/plugins/qmlprofiler/canvas/qmlprofilercanvas.cpp
	src/plugins/qnx/blackberrycheckdevmodestep.cpp
	src/plugins/qtsupport/debugginghelper.cpp

Change-Id: Ie9fd0a885fb6264a6a8a72daee071b75bcbd2e9d
2014-01-08 11:01:06 +01:00
Robert Loehning
746c5d8863 Incremented year in copyright info
Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-01-08 08:29:47 +01:00
Eike Ziller
f161f1a25d Move some BaseTextDocument setup from BaseTextEditorWidget
There is a 1-to-1 relationship between BaseTextDocument and QTextDocument,
so it doesn't make sense to do the setup between them in the editor widget.

Move creation of BaseTextDocumentLayout and setting up of 'changed' signal
to BaseTextDocument. This also avoids sending multiple
'changed' signals for a single QTextDocument::modificationChanged signal
in case of splits.

Change-Id: Iaab4fea594c5b50f502fd41c88948fac132de9f1
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-07 11:59:34 +01:00
Eike Ziller
8a2f38683c TextEditor: Remove unused signal.
Change-Id: I50a32f435451ffb8991f5e0c0d7e7da950ce19c9
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-01-07 11:28:30 +01:00
Eike Ziller
025446b02b Move document -> code assist connect to CodeAssistant::configure
Change-Id: I6124c12a269093fbd54cbbbb47b4d7f15ffaae2f
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-12-18 11:37:27 +01:00
Eike Ziller
1adab4c4cc Merge BaseTextEditorWidget::editorDocument() and ::baseTextDocument()
Doesn't really make sense to have the additional IDocument *editorDocument()
method.

Change-Id: I0a7420eb1afaa76f63c3f7e9c4b373acf624ffb9
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-12-18 11:34:34 +01:00
Eike Ziller
b55df87a7b TextEditor: Remove "actionHack" and utilize contexts instead.
The actionHack was used to only forward actions to editors that "belong"
to that action handler instance. That is already clearly defined by the
context that the action handler is created for, so we can just use that
instead.

Change-Id: Ia4c6795c80bb281c1ed258324925f56ca7fd8150
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2013-12-11 16:02:07 +01:00
Eike Ziller
18313bdb33 Move markableInterface() to ITextEditorDocument
And remove the indirection over BaseTextEditorWidget.

Change-Id: I2c570edf46b9ca72a11704ce27d8ae3f2218dcf0
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-12-10 09:11:45 +01:00