Commit Graph

308 Commits

Author SHA1 Message Date
hjk
127d3b9687 TextEditor: Move base of operation from Editor to *Widget
One less level of indirection

Change-Id: I4777bd7d54e572f36a490aeb747a8e0f89599049
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2014-09-08 14:48:26 +02:00
Christian Kandeler
1d5091e48f Do not use deprecated Qt functionality.
Replace all* remaining deprecated Qt 4 functions with
their Qt 5 counterparts. This means we no longer need to
define the QT_DISABLE_DEPRECATED_BEFORE macro.
This patch is relatively small because most source-compatible
changes of this kind have been done before.

* The one exception is the QmlDesigner, which uses QWeakPointer
in a deprecated way all over the place.

Change-Id: Id4b839c6685f3b5bdf2b89137f95231758ec53c7
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-08-29 14:10:41 +02:00
Eike Ziller
aa6495a261 ExtensionSystem: Remove Qt4 support
Remove usage of the Q_EXPORT_PLUGIN macros, which do not exist in Qt 5.

Change-Id: I678c3cf10b9c5d5c1b9f252b0ecd1c97dc810a47
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
2014-08-27 08:44:34 +02:00
hjk
513ee02f10 FakeVim: Use a single "FakeVim" translation context
Change-Id: I624dedddf88a017af107670794034282f0aafdcc
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-08-26 11:59:39 +02:00
Lukas Holecek
5a0a61bfac FakeVim: Update file path and global marks
Update file path and global marks if file in project is renamed.

Update file path on "Save as...".

Task-number: QTCREATORBUG-12810
Change-Id: Ia2361e8f65a7a494e339d96c8b4610af4ab38edb
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-08-18 15:25:43 +02:00
hjk
d7c2b0b681 TextEditor: Consolidate document access functions.
There was document(), textDocument() and baseTextDocument().
Two should be enough...

Change-Id: Id9e41c8d857c5cb3269a9fce5ab594d34448c982
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-08-04 10:43:56 +02:00
Alessandro Portale
17ce7d4ad5 Replace set[Plain]Text(QString()) with clear()
...where applicable. Shorter, faster, more semantic.

Change-Id: Ifb1cf200f489f62a79e12c761e98a846992744dc
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-23 10:57:49 +02:00
hjk
cf8a614419 Merge ITextMark and BaseTextMark
Turns out we don't even need two-phase initialization,
by transparently postponing registration until we get
a non-empty file name, either at constuction, or at
file name change times.

Change-Id: I3e87e47c820066e6707e946fc474ab9c1993e61f
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-07-23 10:38:31 +02:00
Alessandro Portale
9e2512dac0 FakeVim: Remove excess frame from Mapping options page
The outer widget was a QGroupBox without a label. That results in a
frame/border. This patch changes it to a QWidget.

Change-Id: I30fc674818d1983563d385bf06decc1b089aed4c
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-22 11:52:03 +02:00
Christian Kandeler
93304df038 Always pass Core::Id by value.
Currently we pass in some places by value, elsewhere by const ref and
for some weird reason also by const value in a lot of places. The latter
is particularly annoying, as it is also used in interfaces and therefore
forces all implementors to do the same, since leaving the "const" off is
causing compiler warnings with MSVC.

Change-Id: I65b87dc3cce0986b8a55ff6119cb752361027803
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-07-01 11:52:08 +02:00
David Schulz
6e9b724006 Editor: Blockselection rewrite.
Also adding the possibility to insert text into the blockselection.

Task-number: QTCREATORBUG-7773
Change-Id: I7a47a1d630f769a8253ee1a2f21057820ea170d5
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-06-20 13:16:54 +02:00
Eike Ziller
98ae1bf67b Make document model API more consistent with entry vs document
Change-Id: Iae2fe480d9fcb564d566f1dcca142c21c99c2d5b
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-06-13 17:37:31 +02:00
Alessandro Portale
2e37897de1 FakeVim: Move setting category icon from Core to FakeVim
This image is used exclusively in the FakeVim plugin,
thus belong into FakeVim resources.

Change-Id: I1fcfdb6892a22dd105af72e44e40c799fdf970fd
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-06-02 15:58:02 +02:00
hjk
6e584b5b49 DocumentModel: Make interface static
Move item model implementation to private, adjust user code.

Change-Id: Ifbe94e7c7b9b1e8be1b4c531958dbd7a9413af13
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-05-13 11:48:30 +02:00
Orgad Shaneh
9d062c1fe1 FakeVim: Explicitly use DirectConnection for slots that return values
Change-Id: I19fd01b681120681e619b54bab9e441d3805396f
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-05-05 08:12:54 +02:00
hjk
1ca022e378 FakeVim: Check handler pointer before using it
Shouldn't happen in that case. But better safe than sorry.

Change-Id: I8461fec32c23e7efe6c949724cf522b58b703acc
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2014-04-02 15:14:13 +02:00
hluk
34d1826263 FakeVim: Show command output in new editor instead of dialog
Task-number: QTCREATORBUG-11598
Change-Id: Ifff5a7ffbece93d21a0e688f4f3085d87d9373da
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-04-01 18:16:41 +02:00
Robert Loehning
23c6a42481 Use PathChooser on FakeVimOptionPage
Change-Id: I8a3eb4085913788efbb298ed174b476111844252
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-02-19 11:33:03 +01:00
Orgad Shaneh
91def5a8ff CodeAssistant: Replace virtual with QTC_OVERRIDE
Change-Id: I18ea4ea410ac811972447e9395f2eef76bda8084
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2014-02-17 21:22:21 +01:00
Robert Loehning
50d93a6567 Provide parent to getOpenFileName() and getSaveFileName()
Change-Id: I839de363f426a57a522700df39e4f3b4ebfbb7ea
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-31 11:15:30 +01:00
Tobias Hunger
88a4421a84 DocumentManager: Refactor saveModified methods
Introduce methods to save a document/list of documents/all documents,
both silently and with a dialog to the DocumentManager.

All of these return a bool that signifies whether the save was
successful or not.

Detailed information on which files failed to load or whether the
save was canceled by the user are still available as optional
in/out parameters.

Change-Id: Id17798302f2a8ba6b85a07c1f0b91f03b20da03f
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-01-23 13:50:29 +01:00
hluk
d6919b1557 FakeVim: Support for relative line numbering
Settable using 'relativenumber' and 'rnu' options.

Change-Id: Idb5aa9669bdfa157d6bb6b517a09d63e8f511b95
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-01-22 10:32:59 +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
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
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
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
hluk
c68c245fd1 FakeVim: Reset FakeVim properly after user command
If FakeVim mode is disabled, enable it just for the single requested
user command.

Keep useful messages shown for few seconds.

Task-number: QTCREATORBUG-10460
Change-Id: I89c1722542f47befbf2c24a663bf3d1c455b77d9
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-12-20 00:42:07 +01:00
Eike Ziller
deb43b4c8a Preferences: Add default implementation for filtering
The default "matches" method now takes the widget and looks for all
child labels, checkboxes, push buttons and group boxes.
Because of that, the former "createWidget" method
can be called multiple times without creating a new widget
(-->widget()), and the "finished" method must ensure that the created
widget gets deleted, since not all widgets that were created are added
to the UI anymore.

Change-Id: Ia231c7c78dd8819146668e6447d36d22e7836904
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-12-10 13:31:48 +01:00
Tobias Hunger
8c30c91e16 Fakevim: Delete wordprovider again
Change-Id: Idc30e8c74485e121b0b19dbde4eadace60534615
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-11-27 09:51:28 +01:00
Nikolai Kosjar
f47e7f68d9 TextEditor: De-noise IAssistProcessor derived classes
...by providing a default implementation of immediateProposal() in the
base class.

Change-Id: I4f4f9aa491fbfc9390cc7b7093f1b3c1c8e460a4
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-10-02 10:24:17 +02:00
Nikolai Kosjar
3a64f8a344 TextEditor: CodeAssist: Allow immediate proposals
Immediate proposals are displayed for asynchronous providers and fragile
proposals.

The idea is to show already available results immediately. The proposal
calculated in the process runner can then replace the immediate
proposal.

Change-Id: I7903e6677c9dfeb4957eb416062fff1fb01ff23f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-10-01 14:04:06 +02:00
hjk
ca15d0aa95 Apply static pattern to TextEditorSetting
Change-Id: I4e6f573d893c0aa2bb4ca9812fc8db2961dac172
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-09-20 10:28:22 +02:00
hluk
a636a933d0 FakeVim: Fix searching in visual mode and with commands
Search in visual mode should select text up to matched position.

Using commands should work with search movement; e.g. 'd2/needle<CR>'.
Commands should be also properly canceled if search movement fails.

Change-Id: Ic695dccaf3f36ccae2f2b1a93f888d5ba9805a78
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-19 12:17:37 +02:00
Tobias Hunger
f20a276182 Find: Remove some Find namespace usages
Change-Id: I3caf03474c7e080766b85c6a3042f6a29f13cd40
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-04 14:46:55 +02:00
Tobias Hunger
d18b61b85d Core::Id: Remove some explicit casts to Core::Id
Change-Id: Ibe505c8331f7d1280fdb8784a00321742f5d94cb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-03 11:57:23 +02:00
hjk
eb724f3772 EditorManager: Use interface directly instead of going through ICore
In the majority of cases we were doing that anyways, having two
ways is just needlessly confusing.

Change-Id: Ied362a702c23beee528368d74df1f2aabe5807f8
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-08-30 11:25:51 +02:00
hjk
4a24df38a3 EditorManager: Use static pattern, adjust surrounding code
Change-Id: I3255a0150cd9a730336456c5a9f986eb74fefbff
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-08-30 11:22:56 +02:00
Oswald Buddenhagen
c2e90c360b Merge remote-tracking branch 'origin/2.8'
Conflicts:
	src/plugins/cpptools/cppcompletion_test.cpp
	src/plugins/cpptools/cpptoolsplugin.h
	src/plugins/projectexplorer/customtoolchain.cpp
	src/plugins/vcsbase/command.cpp

Change-Id: Ie7b3c9e136c0748b41320227c757471259339b48
2013-08-21 14:39:18 +02:00
hluk
d15fb5a75c FakeVim: Emulate search more precisely
Submitting search highlights (if 'hlsearch' enabled) in visible editors.

Update highlights after 'nohlsearch' command, 'set hlsearch' and
changing document.

Change-Id: I66ed8c6e9c6e99f3c64f91cdec5ac5feb636d2cb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-12 13:43:36 +02:00
Carl Simonson
75ce70a862 FakeVim: Add another key binding for vsplit
Vim allows for spliting veritcally by typing <C-W><C-V>. Add this
keybinding.

Change-Id: I7db5a8cd06eea05b011655ec326b3795f0896ed9
Reviewed-by: Lukas Holecek <hluk@email.cz>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-12 12:42:56 +02:00
Orgad Shaneh
0b4300a68c EditorManager: Make closeEditor public
And use it where appropriate

Change-Id: I0f37b8aada6eaa9be6743724b91a59173a01cb0c
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-08-07 11:08:36 +02:00
hluk
b5922db843 FakeVim: Delete settings later
Change-Id: I88fd334b7ffa22d9b42b7fde3edd4b37a525b0a2
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-07-29 10:17:05 +02:00
Eike Ziller
354cd410b0 Make document model static and add some document related methods
Change-Id: Ibcb863e67a2433529c9d2b6dec237f9d8b1d8d50
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-07-12 11:55:59 +02:00
Eike Ziller
7b1941c792 OpenEditorsModel API: Use 'document' more where is about documents.
Rename OpenEditorsModel to DocumentModel.
In the DocumentModel also make the distinction between "restored"
document (i.e. just info about file name, display name, id), "opened
document" (i.e. document with IEditor and IDocument), and "document"
(which refers to any).

Change-Id: I01ebe10ec84aab5fe81e54be6bec14f653f28771
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-07-12 11:46:19 +02:00
Eike Ziller
b99de1de58 Editors: Get rid of keeping separate lists of "duplicated" editors.
And use documents for the list of currently open documents, instead of
using a set of "original" editors that needed to be separately managed.

Change-Id: I3379ca44f03646399d3ecb0e775d7f1fd81a6bcf
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-07-12 10:21:49 +02:00
Eike Ziller
dd43d9908f Rename IDocument::fileName --> filePath
That is what it actually is, wrt how Qt API calls it.

Change-Id: Ied02055debf6aad75556b0d9d22e8ba2f72be555
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-07-09 13:51:42 +02:00
Eike Ziller
3557603b1e Editors: Don't use model index outside of model/view.
The model index is an internal detail of the model/view and shouldn't be
used outside that context.

Change-Id: I2c1f742fff427484f6ff244dd3e0d8428a7318d3
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-07-09 09:38:03 +02:00
Friedemann Kleint
6e2c3c4257 tr()-fixes in fakevim.
Change-Id: I17c16616a6d28dbf08f0de8dba57bb37568aab02
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-06-10 12:04:28 +02:00
hjk
17dcb6d38c FakeVim: Move .vimrc related options closer to each other
Task-number: QTCREATORBUG-9406

Change-Id: I61333e3105e8d8edb03edecdfdac9d9f11dfc3b5
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-06-07 09:18:27 +02:00