On OS X, Ctrl+n and Ctrl+p, the Emacs bindings for next and previous,
are global throughout the system. In Qt Creator they work for menus,
code completion widget and other places like Vimium plugin, but not
the Locator widget. This change adds that functionality to Locator
too and makes navigating Locator items easier.
Change-Id: Iebce53d55841ba97d35ad2d433b0d9840d5e4137
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
It doesn't make much sense to require a non-exported class to be passed
to the ctor of an exported one.
Change-Id: I15463f3ec0153a71cb55ad83724ec071a504a483
Reviewed-by: hjk <hjk@theqtcompany.com>
This adds a templated layer on top of TreeModel that can specify
item types for the top three layers in the model, relieving user
code from some of the previously necessary type casting.
Two common setups get an extra layer with convenience functions
on top: TwoLevelTreeModel for two-level model with a first level
of static headers and a uniform second level, and UniformTreeModel
where all non-root nodes are the same.
"Untyped" plain TreeModels are still possible.
The walkTree() feature and untyped iteration in the base
TreeItem and TreeModel is retained for now to ease transition
in downstream modules, but is planned to be removed soon.
Change-Id: I67d75a1a4e18e8f254dbfb458db03510d8990d8b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Seems like Web delegate is not consistent enough, we need to keep track
ourselves.
Change-Id: Icff1f6b5a642df73eb2e80dd74baf44257e3e28e
Reviewed-by: Vlad Seryakov <vseryakov@gmail.com>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
If "dry run" is enabled for the project resolving step, then the rule
execution step needs it too.
Task-number: QTCREATORBUG-16343
Change-Id: I6db7ad68b447299d2b4848f128a262e6097786d4
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
- Make messages with level "warning" or "error" appear in the Issues
pane.
- Do not suppress messages of level "info". People add "console.info()"
calls into their projects for debugging and they expect to see the
output in Creator.
Task-number: QTCREATORBUG-15983
Change-Id: I6c84bc1ef08dbf85d7e88af864b18f64fcedfe1a
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Restarting with cached outdated information is problematic.
Change-Id: I396da2fef96a161c1ab150134b8e65a758a16d58
Task-number: QTCREATORBUG-16355
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
It gets unwieldy and eventually it produces a stack overflow if you
have insane recursion.
Change-Id: I8ae6bf018572d9b240aec01d5d3319544799e9bb
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
We want the editor to jump to the right source location when selecting
different events from the timeline. If all memory events have the same
ID this doesn't work. Now they of course have the IDs of the origin
events, but that's not a problem because when you select first the
memory event and then its origin, the editor position does in fact not
have to change.
As an added benefit, the typeId cannot be -1 anymore now.
Change-Id: I95520eeb3e6902e046f3f552c74dba776e7c8b62
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
This is Heavily Inspired by the Generic project import wizard.
It basically does what we commonly refer to as "Create a dummy .pro file for
editing stuff in Creator". The result is generally more flexible (project
logic can be added to the .pro) and better supported in Creator (.pro
is first class citizen, the Generic project less so).
The qmake/make build steps are currently generally enabled but are only
expected to work for very simple projects like the typical "one file
example for teaching purposes".
Change-Id: I4976c34d423f256ea9f8f9e569c9783d90f380e3
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
If modes provide a QMenu, a little arrow is shown next to the mode icon.
If the user clicks there, the menu is shown instead of changing the
mode.
Limitations: Modes need to provide some QMenu instance already when they
are added to the object pool. Setting or removing the menu later will
not update the UI.
Change-Id: Ic4ef709e6200afcff14f41054a5dd98c37b0b849
Reviewed-by: hjk <hjk@theqtcompany.com>
The way it was before, we couldn't have negative ids.
Change-Id: I2ac07295b18020fc1a9357e15739bbf2601d20b6
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
There is no need to waste time rebuilding all the labels etc for each
new model.
Change-Id: I1ca24da7d55100b3c8efd8eea650b68b8b7c7737
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Setting a number of models one by one results in quadratic overhead
when (re)building the UI. If there are many models this quickly gets
out of hand.
Change-Id: I7f017784c3f0a6a9d7e52c881eb1d8ca4cf70886
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
The adjustment for items of small height in the vertex shader was
broken.
Change-Id: Icfaef5b1e582696240fe1ed211dbb26502cc208e
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
This is also necessary for a uniform handling while adding or
updating test tree items, which in turn makes it possible to
separate model and items once more.
Change-Id: I84ff558d23490c8734b22062f00e03e8c06d6720
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
In standalone tests there is no instance of ExtensionSystem::PluginManager.
Change-Id: I890016c4e0d2fbb41cfc0a5614e936d31e43cd0f
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
The row labels use up quite a lot of memory, and most of the time we
don't need them.
Change-Id: I25d0498311eb1fc0b3cc9abc7312baa2c1211a8d
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
So far, they didn't show up in the submit editor,
so they could be forgotten during a commit.
Unlike Git, these files don't prohibit the commit,
but at least are shown in the list of modified files
and can be diffed.
Change-Id: Ia5cac7befb870321d2048622c1fac022d979c745
Reviewed-by: Hugues Delorme <delorme.hugues@fougue.pro>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Use SynchronousProcess::runBlocking in favor of SychronousProcess::run.
This avoid nested event loops which can produce really strange crashes
if not use carefully.
This patch only converts those processes that have a timeout of less
than 5 seconds or use the default timeout.
Change-Id: I9de8899dcc946af7049ea357a91972996c0256a1
Reviewed-by: Vikas Pachdha <vikas.pachdha@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
The connect() call was not updated after new default parameters had been
added to the slot, so the additional parameters emitted via the signal
never reached the slot. Fixed by converting to new connect style.
Task-number: QTCREATORBUG-16334
Change-Id: Ia418c2980e85fa41353e23f654587aac85462469
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>