The modification of the TemplateNameId changed "global state" because
the TemplateNameId is potentially accessed by multiple threads doing
lookup (access to same document and thus same symbol names).
Depending on the thread scheduling and access to
ClassOrNamespace::_specializations, the changed TemplateNameId
"suddenly" led to inconsistent results of TemplateNameId::Compare and
thus broke the std::map assertions.
Get rid of the const_cast, the setter and simply construct a temporary
TemplateNameId with isSpecializaton = true.
Task-number: QTCREATORBUG-14911
Change-Id: Ie381d132cc0d06af351ace4257773637d1ebee4e
Reviewed-by: Przemyslaw Gorszkowski <pgorszkowski@gmail.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
We only skip the update, if the instance already has a valid parent
and the form editor is currently bypassing the puppet to handle
parent changes.
This avoids the form editor getting into an invalid state if this event is
handled (too) late.
Change-Id: I518b0f5a402a3ae55320028cfeb2d47f12418e38
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This so called type is not documented to exist but apparently widely used.
Change-Id: I0a7693e19874887a6e7260964d119d204e5be1ec
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
If we indent lines that are also part of the surrounding component,
the offsets of the component become invalid. This was crashing.
Change-Id: I80f16c916fabd5b49a0d8ba87989c86727c97c50
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
If the list of partial expressions is empty we need to tell the watch
handler that we are only updating the locals view, not e.g. the
inspector view.
Change-Id: Iedc74ffc66a8435faa272d053849b831f6b8cbbe
Task-number: QTCREATORBUG-16692
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Device status overlay and the device status display should be two
separate icons. This change makes it happen.
Change-Id: I3a965fdb8b74c447a5cf80e4c90a3ae06c91b3bc
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Check for Pointer(Pointer(Char)) instead of a 'char **' name
which fails to match 'char**'.
Change-Id: Ie3d523924e64156a32df6db5c87997bb88f125a1
Reviewed-by: hjk <hjk@qt.io>
Use class enum to shorten the FileType to quint16. This frees up a couple
of bytes per FileNode and we can have many of those.
Change-Id: I3a9ae25059690fefa15305a4268269647d6dc1c9
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Use a class enum with a type quint16 for the NodeType. Frees 2 bytes
per node that can be used for better things now.
Change-Id: Ib84bf8629e9f4a5fb0793355eff0f0d6302167dd
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This allows us to sort the locals by name immediately when the action
is triggered.
Task-number: QTCREATORBUG-16645
Change-Id: Ifd24f49e66523af5e988065c9a33aae00e7fb290
Reviewed-by: hjk <hjk@qt.io>
This has the effect of sorting the members immediately, rather than
the next time something else changes.
Change-Id: I3f3cb261f1fb69b6b36914b811a431b045bb49ae
Task-number: QTCREATORBUG-16645
Reviewed-by: hjk <hjk@qt.io>
Under the assumption that the QNX debug support should work similar
to the RemoteLinux debug support we have to:
a, use the Runnable provided with the run control
b, not recycle the arguments from the run control start parameters
c, prepend a new set of QML debugger arguments when QML debugging
There seems to be some mechanism that allows us to do C++ debugging
by simply starting a process "pdebug <n>" for some port number <n> on
the target. We don't touch this here.
Task-number: QTCREATORBUG-17208
Change-Id: I0f4541968e1d20940617e8ff6d16a8ad86ea22c9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Make sure the combobox values are set to null. Otherwise the ComboBoxItem
might try to read from that value while it is being removed from the model.
Task-number: QTCREATORBUG-17223
Change-Id: I6588aaddf39736846878593a8e6844dab96de408
Reviewed-by: hjk <hjk@qt.io>
Change the UI text to use the name of the Structure view
instead of "Browser", which is a term not used in the documentation
or the model editor UI.
Change-Id: Id5654bc7f5c4a9c7147315333f60c88a9e667bbc
Reviewed-by: Jochen Becher <jochen_becher@gmx.de>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
A filled circle can be used for other icons as-well.
Change-Id: Ifed0dda111ccb92fa5bb44d63f1c23af1137121a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
For the MSVC compiler we parse the environment variables from the
output of a 'set' call. So far we didn't enforce any encoding, which
means that the current code page is used. Then we tried to parse this
with QTextCodec::codecForLocale, which is not necessarily the same.
Avoid this by forcing UTF-8 as output (code page 65001),
and parse as UTF-8.
Task-number: QTCREATORBUG-17219
Change-Id: Ia1a6fa56e5c3e1599bf545795c655bf9376bae5c
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
The invalid port is -1, and Utils::Port does not need an explicit
initialization.
Change-Id: Id545fb98677d26541aa89611ddd50b735e08530a
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
Reviewed-by: hjk <hjk@qt.io>
The bundle.infoPlistFile property does not exist anymore. A file tag
based approach is being used these days.
Change-Id: I5b73facb5397a28c0c40f1745c82225c24ffba9d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Use the fact that the order of the first three vtable entries of a
QObject is fixed and the size of their implementations is roughly
known.
Change-Id: I3d13f594cb1c1f162a520da18b2bc2aaba852092
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
don't fail to make the build pass evaluator cumulative as well.
Task-number: QTCREATORBUG-17214
Change-Id: I217578b7d29d0dcf9ef63c954ec403412812c70c
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This reverts commit cbdf673696.
It introduce a dependency to utils for a couple of lines,
so it is not worth.
Change-Id: I2f53ff3f63322719de6faed7f55c66282d1044e8
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
It breaks compilation (at least on linux).
Anyway, HostOsInfo::isWindowsHost is header-only, and should not require
this dependency.
This reverts commit e3a2f3c796.
Change-Id: I8bd86d978742bdb7db3d9f8d429a4803be22a779
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
- Changing the theme settings and reopening options page switched back
to current theme
- When passing a theme on the command line, closing the options dialog
would state that the theme change takes effect after restart, even if
theme was not changed
Fix these issues by showing the current theme setting in the options
page, ignoring the currently active theme, and showing a label telling
the currently active theme instead.
Task-number: QTCREATORBUG-15852
Change-Id: I343fc729c33f17fcb15a8e9facd7a49076d0e0d1
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Split up getting the data from the arguments list and actually applying
the values, and move the details of theme creation and application to
better places.
This gets rid of ugly control flow details like that
CorePlugin::initialize created the action manager before calling
parseArguments, because that is needed to apply the presentation mode
argument setting, and parseArguments created the main window because
that needs to be created _after_ setting the theme (which can be
overridden by command line argument), but _before_ applying the override
color argument setting.
Change-Id: I9c99305b6efbfcc4b37cea9e5c70d816a621963b
Reviewed-by: David Schulz <david.schulz@qt.io>