Saves some code on the user side.
Change-Id: I32cd220b6e533f5497a1865f9c34ab9db4cfda79
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Avoid writing defaults to the settings.
Task-number: QTCREATORBUG-24430
Change-Id: I8e1d5a5b8ca21ef96a68a4d71a7d97d138bd186b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Take care of handling file permission changes centrally.
TextDocument had its own, caching implementation of tracking the backing
file's read-only state. Move that into IDocument directly.
IDocument::reload with a permission-only change is not a very
interesting case, but every subclass needed to add handling of it.
Instead, remove TypePermission from the file-change types, and handle it
separately via the now unified checkPermissions() implementation.
IDocument::reloadBehavior already was never called with TypePermission.
Change-Id: I321d47ba6193bc878efa9bb50ba7a739fa492745
Reviewed-by: David Schulz <david.schulz@qt.io>
Test dependencies are not "real" code dependencies, they just
declare that for testing the plugin the other plugin has to
be loaded, even though it is _not_ a code dependency.
Add PLUGIN_TEST_DEPENDS to add_qtc_plugin. We cannot assume
that the target exists at that point, so adapt the usual pattern.
Fixes: QTCREATORBUG-25024
Change-Id: I4165ff8df762309e0be0bfe9e8bedef796a3bf17
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
It fixes the following warning:
Use Q_ENUM instead of Q_ENUMS [clazy-qenums]
In addition, it amends 8588cf268f
where WidgetStyle got removed.
Change-Id: I4d72dd762a2f18ba8886360b3581b4ef19bf4c5e
Reviewed-by: hjk <hjk@qt.io>
Add missing overrides.
Remove validateCurrentPage() completely,
since it didn't do anything useful.
This method is not overridden in any superclass up to QWizard.
Task-number: QTCREATORBUG-24098
Change-Id: Iffa335c471469c56e830b6160da49359fc5d6bc2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
It seems impossible to show a single '&' character
on UI elements, as this character is also used for
the mnenomics.
So having a single '&' followed by a space creates
a space character, having two of them ("&&") creates
an underlined '&' (seen on Windows and Linux).
So let's just work around this long-living issue
and avoid the abbreviation.
Amends commit bc37a9ab7d
Change-Id: Ibcbfcac62d7be8c091ab2fc51621bddc9dad7e00
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Fixes build issue with Qt6, for which QStringList is now a
QList<QString>.
Task-number: QTCREATORBUG-24098
Change-Id: I0c81aa5bae413b836dbedea0bb6117b46f6f24c2
Reviewed-by: hjk <hjk@qt.io>
QTBUG-75867 about missing Qt5::DesignerComponents support has been
fixed, so use that over our own hand-rolled version.
Change-Id: I6d8bb7f7d5359050f20a095adb4a074f143e8d49
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The coreplugin/id.h header is kept for downstream for now.
Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66
(cherry picked from commit 430a33dcd9)
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The coreplugin/id.h header is kept for downstream for now.
Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
The only reason it was required to be in Core plugin, was its use of Id,
which now is available in Utils.
Change-Id: I66ce863c24924e6448d339b3422538a7fe167336
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
There are very few reasons to use mainWindow() directly.
Especially for modal dialogs, using dialogParent() is important, since
that guarantees the stacking order in case of other dialogs currently
being open.
Change-Id: I7ad2c23c5034b43195eb35cfe405932a7ea003e6
Reviewed-by: hjk <hjk@qt.io>
Keep the old method for now to ease downstream porting.
The change is kept mechanical, there's a lot of cleanup possible now
on the user code side.
Change-Id: I936baedd45b7ba057f1c789a1bec896886f48eff
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
QSortFilterProxyModel::filterRegExp is going to go away in Qt6,
so port over to use QRegularExpression instead.
This required some changes where setFilterWildcard/FixedString()
was being used, as those would instantiate QRegExp based filters
in Qt 5, and will use QRegularExpression in Qt 6. Use the generic
setFilterRegularExpression here, to keep things portable between
5 and 6.
Change-Id: I6379be781aa3821b10ba783c088f82c1a0970911
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
A "View" menu seems to be what many users are looking for when they want
to show or hide panes/views, so move corresponding actions there.
Window management / split actions stay in the "Window" menu.
Fixes: QTCREATORBUG-23610
Change-Id: Id683addc681de99abb35697a735fdbc9dc0d00cd
Reviewed-by: hjk <hjk@qt.io>
Also, replace or remove unneeded Q_OBJECTs, and make base
setters and adders protected.
Change-Id: I212257ef53984d8852dc8c478537199fc9483486
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Change inclusion of include path for custom widget to global.
Change-Id: I0318baea9dd838ad485f1631a2a89c5a5a00d50a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Commit a8af381 prematurely deleted newclasswizard.cpp/h/ui although they
are still used by the Designer plugin. That caused a build breakage.
This change partially amends a8af381 and moves the code into the
Designer plugin. Unneeded code got removed.
Change-Id: I56858a6b44a8964620397dd2c8cf95cdcd1bb9fe
Reviewed-by: David Schulz <david.schulz@qt.io>
- Use using instead of typedef
- User member initialization
- Use nullptr
- Do not use else after return
- Delete pointers unconditionally
- Fix some integer conversion warnings
- Use auto for new/casts to avoid type name repetition
- Use = default for trivial destructors
Task-number: QTCREATORBUG-23248
Change-Id: I0a7465d3aa200b5c862bec82636d2d22ddf8297b
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
... or Target.
This patch moves build system from conceptually "one per project"
to "one per target (i.e. per project-and-kit)" or "per
BuildConfigurations" for targets where the builds differ
significantly.
Building requires usually items from the kit (Qt version, compiler,
...) so a target-agnostic build is practically almost always wrong.
Moving the build system to the target also has the potential
to solve issues caused by switching targets while parsing, that
used Project::activeTarget() regularly, with potentially different
results before and after the switch.
This patch might create performance/size regressions when several
targets are set up per project as the build system implementation's
internal data are duplicated in this case.
The idea is to fix that by sharing per-project pieces again in
the project implementation once these problems occur.
Change-Id: I87f640ce418b93175b5029124eaa55f3b8721dca
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This reverts commit d907df0349.
The original change was pushed to 4.10 and reverted there for
binary compatibility reasons. Revert the revert here.
Conflicts:
src/plugins/projectexplorer/projectnodes.h
Change-Id: Ibfd84a30a6cfdd78e1fa1b1c61785d391a5a18be
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Commit 81a643ec99, fixing QTCREATORBUG-22412, was too restrictive: UI
files in applications have access to resources of library dependencies,
so we must consider those. We now only exclude resources from other
applications.
Note that this will potentially list non-applicable resources, e.g.
those from libraries to which our product does not have access. This
cannot be reasonably prevented, because not all build systems provide
this information. It's also not as bad as missing resources.
Fixes: QTCREATORBUG-22909
Fixes: QTCREATORBUG-22962
Change-Id: I51a87402b43c156618982813c408060f300e4e58
Reviewed-by: hjk <hjk@qt.io>
In the new plugin setup scheme they are data members of the
plugin pimpl and never use the parent.
Change-Id: I28fe150393e8159064dcfbd113ce0320af50fd58
Reviewed-by: Eike Ziller <eike.ziller@qt.io>