This changes the processing of children to step down into the children
first (and their children recursively) instead of just processing direct
children in reverse.
Fixes an issue with AutoTest plugin where results of data tags got a
new intermediate although there was already one present.
Change-Id: I1fe42942db975c7a1aa3ddb0b6596979c1164dd7
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Filters are based on symbol query where they are
not implemented yet.
Change-Id: Id826beaf6bb47a81363c36780d7254a85a9a3cc9
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
... instead of having the indirection of the global object pool.
ModeManagerPrivate has been maintaining the list of instantiated
modes by tracking (all...) pool object additions / removals. This
can be achieved more directly by calling functions from the
IMode base constructor/destructor.
The pattern used deviates a bit from the otherwise used 'static
QList<Foo *> allFoos();' acessor pattern as there is some sorting
logic etc. associated each time a mode is appended.
Sticking to the preexisting structure seemed less effort for now.
Change-Id: Ic1b4e641e155f949248890acc48cafbe74025115
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
There already is a mime type for that in the freedesktop definition,
and that even has alias application/x-linguist, so adding another
mime type with a name that conflicts with the alias leads to strange issues.
Task-number: QTCREATORBUG-19449
Change-Id: I95affeb4d0946f694192a83b396c29f310871e4e
Reviewed-by: David Schulz <david.schulz@qt.io>
This makes the relevant imports a lot more discoverable.
Change-Id: Ide0396cf844c071aaee050a8993eb06a9c544daf
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Allows black listing and white listing of imports.
The .metainfo files of QML and QmlDesigner plugins currently
define the contents of the item library.
This patch also allows to blacklist imports in the import manager
and to define important imports that can e. g. be added using a tag list.
Change-Id: I358cf7abe6dc68d54f33488ae7d164fc10e5ea94
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
... with the ability to opt out, as in the qmake run configuration.
Task-number: QTCREATORBUG-19274
Change-Id: If4e996a974a82080bb09f2971b0bb5df9173fb14
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
this is a workaround for QTBUG-65543, but it also brings the file name
in line with the general pattern, so it's good on its own.
Change-Id: I1c17ece0538c2251d9d6c0df79ba38f358a69b72
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Using this hack will mess up some languages.
Change-Id: Ifbd42ecbec31371fe18cc3e8a5e36566b7c84fb9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Postpone the Mode object creation until it is really necessary,
the private data object may be needed before.
In the QmlDesigner this patch moves the connection to the DesignMode
instance back to delayedInitialize, essentially reverting part of
e8b3b8140b.
Change-Id: I07146b0bc93eede09af8e824e916edb6de1817ef
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The symbol isn't safely resolvable and can lead to unwanted breaks.
Task-number: QTCREATORBUG-19628
Change-Id: Iaa58b12cb826a9e20faa64454e806ecab9d613f3
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Move the script to Python for that, for code sharing
Change-Id: I1a0b1ed7fe3ed4413045d478c82621d75800520e
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
The non const overloads of first() and last() do detach
if the reference count is higher than 1.
Therefore we use constFirst() and constLast() instead.
Change-Id: I737cfc428f1c21f16185b9b51175e181c0ec7068
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
For some weird reason the d pointer of the model has been public.
This is against all rules and therefore it is now private.
To avoid adding too many friends I added a protected getter to
AbstractProperty.
Change-Id: I3ee77475a85063574d0b0c7c3d43d28deaa7eae6
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Also:
- and replace some occurrences of DesignMode::instance()->id() by
Core::Constants::MODE_DESIGN for less dependence on the lifetime
of the DesignMode object (and less indirection)
- remove storage if DesignMode::instance() values when direct
use of the static functions suffice
- remove some unused items from the interface
- use member-initialization in DesignMode::Private.
Change-Id: Ie66c06da0fc0a3ccc588b8079e51db6b39284152
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
We add a "targetDirectory" property to the file format and fill in the
deployment data.
Change-Id: I372f2c9f5f3c4252431963eeab7b8b420f8bccd5
Reviewed-by: hjk <hjk@qt.io>
Typically at most a handful of rows have scales, but the creation of the
Text elements is expensive. Put the whole scale handling into a loader
and condition it on scaleActive.
Change-Id: I0e0cc349f5c6b88953a96b87ba37331586ec702f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
a, We don't need our special synchronous reloader anymore because the
stock Loader does the same now.
b, Creating and removing the labels while scrolling only accounts for a
relatively small part of the total overhead. The most expensive part is
the offset calculation which has to be performed for each label on each
scroll movement. Move parts of that to the parent item.
c, Asynchronous loading of items in a repeater doesn't work because the
repeater will still wait until all the items are loaded. Thus, the
previous code would still load all the labels immediately when
expanding. Use the "active" property instead to load labels on demand.
d, The repeater initializes all the labels to y == 0 before moving them
into place. Make sure they aren't all initially active because of that.
Change-Id: I4d8b762899c4aa88173dacec668341f592ffe38c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
To HEAD of 1.11 branch. Also do the adaptations necessary because of the
branch switch.
Change-Id: Ief69ef014c10397c14fcd68a9ca770d1391d5491
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Fix handling of restoring default values. If the user
restores default values ensure that these changes are
taken into account as well, otherwise the user would
restore the old settings (instead of default settings)
when restarting QC.
When changing command mappings for FakeVim write the
changes immediately to the settings if the user leaves
the options without canceling.
Change-Id: I81ee47af6a208823d4afecb71cbaddcf2d571750
Reviewed-by: hjk <hjk@qt.io>
The Id is not visible to users. Allow to pass name instead (first match
will be used).
Change-Id: I6bcd7ce50297e373b5b4d8a553009a27ff43cd24
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
We could loose jobs if e.g. the user switched to another parse context
or shuffled project files between targets/products/project-parts while
there were still jobs in the queue.
Previously, changing the project part id of a document was a two step
process:
1) Unregister document with old project part id
2) Register document with new project part id
On 1), we have thrown the document processors (and thus the job queue)
away. On 2), we have created a new document. Due to this separation the
backend could not take over jobs to the new document (processor) - it
could not know that these commands belong together.
Now, we avoid the explicit unregister command. On a register command the
backend has enough context to find out what to do, it can take over
relevant jobs.
Task-number: QTCREATORBUG-18856
Change-Id: Ib68a8e62140fcfdb2de58dcd2ae955b4c2e15166
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
The name fileNameId could imply that the id shared for the same file name
which is not the case.
Change-Id: I27310a8994c2d9e9bb0f0aed2094bd988309c710
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
If FilePathView has derived publicity from SmallStringView it can be much
easier used in generic algorithms.
Change-Id: Icfaa5739ee46d9ff4419a73f87f84f2525e10ccf
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
If a class has a data method that returns a char pointer it can be
used to construct a SmallString and a SmallStringView.
Change-Id: I02dcba50babb3074b58998e5f907799e84361ed7
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
We don't want to implement all the methods again.
Change-Id: I2f89ea59607b59f5ca49e6790e8a868942e1f96f
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>