Commit Graph

27 Commits

Author SHA1 Message Date
Jarek Kobus
d6ee5cb163 Remove algorithm.h from jsonfieldpage.h
Change-Id: I15dfae3568030c169785c33e7957ecba3e975b65
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-18 08:38:11 +00:00
Samuel Ghinet
b985530144 Make changes in the QtCreator side required for QDS new project dialog
* We need the showing of the Wizard dialog to be optional
* Each wizard has a "detailsPage.qml" file that stores wizard-specific
  UI configuration. We need a way to access that path (QUrl) from QDS.
* ComboboxField is used directly by QDS, and the field object is
  fetched by a call to JsonFieldPage::jsonField() - hence, the
  ComboboxField needs to be dllexported. We need to access fields
  directly from QDS because the QML controls use those fields as backend.
* From QDS we need to select / activate in a combobox field, and to see
  which item is current (activated). We also need to make use of the
  model that the ComboBoxField uses in order to show those same items in
  the qml controls of QDS.
* From QDS we need to set the text in a LineEditField

Task-number: QDS-4490
Change-Id: Ia42d539a5bcbf3dff4593fb027ac18c52da4d046
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-09-21 13:21:44 +00:00
Samuel Ghinet
8bd1969e7f Enhance logging capabilities for wizard classes
* Added QDebug operator<< for the Field classes so that they could be inspected during runtime (i.e. logged)
* Added optional QDebug operator<< overloads for QVariant (wizarddebug.h) - to better visualize the data parsed from the wizard.json files (QVariant objects), by using a format more in the like of json.

Change-Id: I53a729b24e4f2d9c9acf1ed802ac9dc3bb67f373
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-09-02 12:11:11 +00:00
Christian Kandeler
4702faba06 Wizards: Add the ability to remember user choices
Wizard authors can now provide a persistence key to values where that
makes sense.
For now, we make use of it for the build system type in all wizards and
the minimum Qt version as well as the virtual keyboard settings in the
QtQuick wizards.

Fixes: QTCREATORBUG-16657
Change-Id: I179930665bd163b1cf198467ab8b43bc72f8ec4a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-09-23 12:48:56 +00:00
hjk
251287f0d3 Avoid warning on empty expressions
For some reason, Q_UNUSED includes already a semicolon, adding one
on the user side creates an additional empty statement.

Change-Id: I9c5e8fac381345a60792cb75e2938fd53958d3b0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-07-23 11:55:59 +00:00
Alessandro Portale
667ad61710 ProjectExplorer: Modernize
modernize-*

Change-Id: I01b9b3d73a2dc2a5c858cf316a1fbff7a4113600
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2018-12-04 19:30:03 +00:00
Tobias Hunger
80c2ce118d ProjectExplorer: Modernize even more
Use unique_ptr for all *Private classes, except for those
in singletons.

Change-Id: Ib56c31ddedc6e9cf321f15de1f1e697a27ad4089
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2018-07-24 09:04:54 +00:00
Tim Jenssen
30d123e2ec Wizards: add IconListField
- reuse some code from ComboBoxField throw an abstract ListField class
 - ListField can handle more data like: icon, trToolTip
 - fix disabledIndex in ComboBoxField
 - adjust documentation

Change-Id: I00b6ab787fb2fad97dafff32786cf73c636c772d
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-10-30 11:55:35 +00:00
Tim Jenssen
2f3acee4e0 Wizards: add a warning about unsupported keys
- parseData methods check that there is no unknown key is used
 - showing the name and type might be useful in warning and error messages

Change-Id: I1371bb3af1ad48ed4b85260f3b1309cdba1cb71f
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-10-26 11:32:03 +00:00
Tim Jenssen
7dbd399a97 Wizards: introduce ObjectToFieldWidgetConverter
With it as a wrapper we can register any QObject
to use widget based field mechanism from QWizard.

It also helps to avoid the necessity for inheritance
to just adjust the text property of a widget.

Can not remove the TextCheckBox, because it is used
in some old C++ wizards.

Change-Id: I85a85a834714a4b38b501c13357fa8c8bb02b5bd
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-09-29 09:34:08 +00:00
Tim Jenssen
bb16ae7323 Wizards: let the page use wizard values
For example it will be used to get the
wizard directory to show icons in fields later.

Change-Id: I6a243a67a89e4a0133550a61b870d771147667f1
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-09-29 07:59:24 +00:00
Tobias Hunger
95ac4edfd4 Projectexplorer: Modernize codebase
Change-Id: I4793b58aa77bcd46af99f8b843c0f7439cdc9269
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Reviewed-by: Vikas Pachdha <vikas.pachdha@theqtcompany.com>
2016-04-15 09:40:53 +00:00
hjk
39a38d5679 Wholesale conversion to #pragma once
Kudos to cgmb and https://github.com/cgmb/guardonce

Change-Id: Ifa8970734b8d43fd08c9260c645bdb0228633791
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-03-30 15:20:19 +00:00
Tobias Hunger
397e7f4843 Update License according to agreement with Free Qt Foundation
* Update files in src/plugins

Change-Id: Ia5d77fad7d19d4bb3498e78661982f68729adb22
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-19 15:57:01 +00:00
Tobias Hunger
4b77ae0718 JsonWizard: Allow for custom widgets in the Field page
... instead of having a hard-coded list of widgets you can use.

Change-Id: Iedf7016412ce9d619fea5cdffe6dbf86beda92b0
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Benjamin Zeller <benjamin.zeller@canonical.com>
2015-09-22 09:22:46 +00:00
Tobias Hunger
443f133d3e JsonFieldPage: Export the class and PIMPL the Field class
Change-Id: Id40b12b80c6c02db70614da002c8a8e7f0ab98d9
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Benjamin Zeller <benjamin.zeller@canonical.com>
2015-09-22 09:22:33 +00:00
Tobias Hunger
84e7f8c0e6 JsonWizard: Split Fields out of fieldpage header
Change-Id: I9029b8da8d095216ec320a8e03ec5f3d4092dddc
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Benjamin Zeller <benjamin.zeller@canonical.com>
2015-09-22 09:22:26 +00:00
Tobias Hunger
dbec2d21e1 JsonFieldPage: Add conditions to combobox entries
Change-Id: I4982564fcb8160302206e12e64f2f2bba338e09f
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-05-27 14:11:20 +00:00
Tobias Hunger
57e3714db4 JsonWizard: Remove member that is only ever read
Change-Id: I87529de8fb600dfc08862143f708e445bc18ed47
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-05-20 09:03:51 +00:00
Tobias Hunger
63373ecc1d JsonFieldPage: Support tooltips for all fields
Change-Id: Ie84e659d7cecf68753056db63a389173d725ebe4
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2015-05-12 15:17:52 +00:00
Tobias Hunger
0b4e958fb3 JsonFieldPage: Add isComplete and incompleteMessage to Fields
This allows to do more sophisticated checks on the completion state
of the page.

Change-Id: Ibb6593fdc4e9c9f37e7d70c516f1a1410123191f
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2015-05-12 12:07:54 +00:00
Eike Ziller
3c85058694 Update License
Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2015-01-16 12:37:56 +01:00
Tobias Hunger
5e54037fc6 JsonWizard: Support fixup expandos for lineedits on FieldPages
The fixup expando will be applied before validating a string in a
lineedit. It uses the special "%{INPUT}" variable for its input and
any change will be applied to the LineEdit.

Change-Id: Ia496eacdbe541d418acb4a977c274527387896ca
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
2014-11-19 12:33:58 +01:00
hjk
ef563d8085 MacroExpander: Fall back to global expander
... and use that all over the place.

Change-Id: Ie6e0ed0f0d9eaba9b4466761e6b455f33a905086
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2014-10-16 16:32:58 +02:00
Tobias Hunger
52e31f80ad JsonWizard: Enable validators for lineedits on Fields pages
Make use of a validator when entering C++ class names.

Change-Id: Id7f9c8c2e1fe036397a337595cbe7aa7fd9589d5
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2014-10-15 18:21:55 +02:00
Eike Ziller
9c7019f0b2 License update.
Change-Id: I0acde2c3b995693de682679471f03af85bdd0a61
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2014-10-15 15:19:55 +02:00
Tobias Hunger
86ecc7d13e JsonWizard: Add a customizeable page
Add a way to define custom pages with checkboxes, lineedits, etc.
on it.

Change-Id: I012109eabf00a12abc67ae34514d139b7cd7cf0d
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2014-10-14 21:32:03 +02:00