Commit Graph

232 Commits

Author SHA1 Message Date
Eike Ziller
c1f90aeca2 ICore: Change some path API to use FilePath
Change-Id: Id841d6177206a021c9e606ce560b47d1ae6e52b9
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2021-04-26 08:03:47 +00:00
Henning Gruendl
db6ad528bb QmlDesigner: Implement new control design
* Update creator theme files and related enum
* Remove unused ActionIndicator functionality
* Update all controls (Colors, Positions, Sizes)
* Add global hover state and cleanup all other states
* Add global hover functionality to ButtonRow
* Add missing states
* Add new MenuItemWithIcon
* Add checkers.png for StateDelegate preview background
* Update copyright headers
* Replace AnchorButtons spacing
* Make ADS title bar buttons and tab bar buttons themeable
* Fix replace CSS colors to allow specifing alpha
* Fix replace CSS overwritting consecutive variables
* Make navigator icons and other elements themeable
* Make connection view themeable
* Make item library themeable
* Fix item library import path
* Update all HelperWidgets
* Fix GradientDialogPopup

Task-number: QDS-3768
Change-Id: I28a5fed178c95d098db052b8c2eabaa083d37b81
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-03-16 09:11:38 +00:00
Alessandro Portale
e2dd9639e5 QmlDesigner: Use qAsConst with non-const Qt containers in range-loops
Change-Id: I7fb1c012b4e6b0608c5888d58c7752b194baf78b
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
2021-02-18 09:35:31 +00:00
Alessandro Portale
e46955f627 QmlDesigner: Fix the color of some toolbar icons
Give them the standard Theme::IconsBaseColor that works well with all
themes.

Task-number: QTCREATORBUG-24402
Change-Id: I458d1b4a7b3cceb2d318ff4257b4aa173170a533
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-12-07 13:23:06 +00:00
Alessandro Portale
b2a766a79a Don't access static functions/fields via instance
Courtesy of readability-static-accessed-through-instance

Change-Id: I71f54244f1e091315dac2943d9e1bfad6efa56a9
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2020-11-19 08:42:14 +00:00
Henning Gruendl
7f44ef76f1 QmlDesigner: Fix view menu constants and comments
Change-Id: If48b80fc2d928d177d59693371ba9d8f9d66bfca
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-10-28 13:00:50 +00:00
Mahmoud Badri
1a8c802f56 QmlDesigner: Remove Switchsplittabwidget
Removed the unused class Switchsplittabwidget from the codebase.

Change-Id: Idb0071d4e6bb54b6a08e6026f8768f9239a5c342
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-10-20 09:32:06 +00:00
Eike Ziller
5cb5d8e585 Remove usages of Core::Id
It moved to Utils.

Change-Id: Ia4d12bb07db2d59b1cb084b2ebdea20e6e3b40ad
Reviewed-by: hjk <hjk@qt.io>
2020-09-21 13:06:21 +00:00
Eike Ziller
a1e3001fa4 QmlDesigner: Fix build with Qt6
Task-number: QTCREATORBUG-24098
Change-Id: I3d5c7d821402acc13ccd505550afc66a531b13b5
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2020-09-21 06:56:06 +00:00
Miikka Heikkinen
90d9cb36f3 QmlDesigner: Add navigator preview tooltip for materials
Request 3D preview image for material instances from puppet
to show on tooltip.

Support for effect previews is also done, but handler for it is not
registered, as effects cannot be shared between windows due to
issue QTBUG-86616.

Also refactored the preview image support out of navigator
to make it more accessible by other components.

Change-Id: Ie08ba218f929660c2e43d39578997a5a1a883efd
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-09-16 07:00:06 +00:00
Henning Gruendl
5a8d4c6fc1 QmlDesigner: Update icon font
* Update icon font
* Use newly added icons in EditableListView

Change-Id: Ia21c2120c54c41cd00dca07622ced98a0bf7f7f0
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-08-27 10:06:04 +00:00
Henning Gruendl
c113a7e851 QmlDesigner: Make use of states in ADS icons
* Add the on state to the tab close QIcon to have a different color in
  focused tabs
* Make the tab close icon checkable if FocusHighlighting is enabled to
  exploit the QIcon state for the color change
* Adapt the focused font color in the dockwidget stylesheet

Task-number: QDS-2558
Change-Id: I9fdfb93f0677f724336da8efdb2fb219af9c9e87
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-08-03 12:55:54 +00:00
Henning Gruendl
9b249033d2 QmlDesigner: Set unique id as object name
Task-number: QDS-1821
Change-Id: I2021e2862797a40ea82ac4b279e33ba9e77a0dd7
Reviewed-by: Tanja Remes <tanja.remes@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-08-03 12:50:44 +00:00
Henning Gruendl
a98c254c59 ADS: Integrate newest base repository commits
* Activate new ADS feature focus highlight
* Remove resources.qrc and related *.svg files
* Clean up new and existing source

Base repository was merged until commit
3de877fe5635ff51a6d1205ca98aad85d204427f

Merged changes from base repository include the following:

* Fix wrong current index when removing a widget from DockAreaLayout
* Fix invisible TabWidget for DockWidgets that are not part of a
  restored state
* Enable ClickFocus for DockWidget to support focussing in case the
  content does not support it
* Move focus related functionality into DockFocusController class
* Add new DockManger config flag FocusStyling
* Add support for focus styling of FloatingWidgetTitleBar
* Improve focus handling when dropping a DockWidget
* Improve highlighting focused DockWidget
* Improve setting of DockWidgetTab focus
* Add styling of focused DockWidget
* Fix docking of floating widgets for macOS
* Fix setting of DockingStateReader file version - use internal file
  version instead of user file version
* Fix saveState() and restoreState() version handling to work like the
  function from QMainWindow
* Fix escape key handling in native window event function if event
  WM_EXITSIZEMOVE occurs
* Implement windows drag handling with native WM_ nonclient area
  messages
* Fix showing DockArea when inserting a DockWidget in a hidden DockArea
* Fix setting DockAreaTabBar index to prevent showing of tab 0 when
  inserting a DockWidget into an area with no current index tab
* Fix wrong insertion order of DockWidget when dropping a floating
  widget to the left or top container drop area
* Fix tab changes position when redocking it to the same position
* Add nullptr check to fix potential nullptr access when closing a
  FloatingDockContainer
* Fix single DockArea cannot be split
* Fix visibility issue when adding dock widget after all other dock
  widgets have ben closed
* Fix FloatingDragPreview flashing of hidden overlay when dragging the
  last visible DockWidget in non opaque docking mode
* Fix FloatingDragPreview preventing dock widget from floating when
  dragging over another dock widget
* Fix DockWidget::setWidget function to test for QAbstractScrollArea
  instead of QScrollArea. Now setWidget properly supports ItemViews like
  QTreeView or QTableView
* Fix wrong display of center drop area when dragging over invisible
  dock area title bar
* Fix bug that drop overlay sometimes was not visible when moving the
  drag preview over a floating window
* Fix dropping of FloatingDragPreview into center of dock container with
  only one single visible dock area. If this happens the dropped dock
  widget needs to get tabified
* Fix crash when trying to make a DockWidget floating in non-opaque mode
  if the DockWidget is not floatable
* Fix DockWidgetTab to provide the right size when starting floating
* Add DockWidget functions setAsCurrentTab, raise, isCurrentTab,
  isTabbed
* Add new config flag HideSingleCentralWidgetTitleBar to enable a
  central single dock widget in the main dock container (dock manager)
  without titlebar
* Fix DockContainerWidget::hasTopLevelDockWidget() and
  DockContainerWidget::topLevelDockArea() to work properly also for the
  main non floating dock container
* Fix ElidingLabel to properly support Qt::ElideNone
* Add setElideMode function to DockWidgetTab
* Add setFullScreen(), setNormal() and isFullScreen() function to
  DockWidget
* Fix takeWidget() function and fixed setWidget() function to handle
  case when there is already a content widget

Task-number: QDS-2180
Change-Id: Ie30648ba329016c91fd19e9b4e12e31e47614b18
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-06-24 07:56:37 +00:00
Eike Ziller
c644e7c80a Merge remote-tracking branch 'origin/qds-1.59'
Conflicts:
	src/plugins/qmldesigner/components/formeditor/formeditoritem.cpp
	src/plugins/qmlpreview/qmlpreviewconnectionmanager.cpp

Change-Id: Ifa7c66330c1995378280cdb4c57c30015dc11b68
2020-06-08 16:04:15 +02:00
Tim Jenssen
d5b83fc637 Merge remote-tracking branch 'origin/qds-1.50' into qds-1.59
Change-Id: Ic3ae0fd8c779c0bac8a0f01e87043251b3ce7fd4
2020-05-06 19:51:29 +02:00
Eike Ziller
bf490b62e0 Merge remote-tracking branch 'origin/4.12'
Change-Id: I11936ad9e4515c3c6c9df1d949cc8116aeccd4c4
2020-05-06 09:43:20 +02:00
Tim Jenssen
f33dddaaec Merge remote-tracking branch 'origin/qds-1.50' into qds-1.59
Change-Id: Id492d324031d4d5fb919eca80ffae4baa50f247f
2020-05-05 21:01:17 +02:00
Tim Jenssen
c5157368bd Merge remote-tracking branch 'origin/4.12' into qds-1.50
Change-Id: Ib971309305e4955a582f85de17e2e2c3365b0e92
2020-05-05 21:00:19 +02:00
Brook Cronin
cd63459446 Theme: fix file navigation breadcrumb bar to use theme color
Change-Id: Ice727823e6081c02e492c7469ed2f305e81bcb5a
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-05-05 17:51:01 +00:00
Thomas Hartmann
1549f5818c QmlDesigner: Move designer action to the center of the tool bar
Change-Id: I7d6b38ea31ebefe0c01acd9360271fc5ba062ffe
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-05-05 13:34:31 +00:00
Tim Jenssen
53d161c98e Merge remote-tracking branch 'origin/qds-1.59'
Change-Id: I8a5d7d98b4d75379fe3953fe00bdb939d1722676
2020-04-28 16:18:24 +02:00
Thomas Hartmann
9c17fd0dbe QmlDesigner: Extend icon font support
* Use ADS::IconProvider to make use of font icons
* Add support for IconProvider in FloatingWidgetTitlebar
* Add support for named font icon entities in QmlDesigner::Theme
* Add level of indirection to Constants.qml to be able to parse it
  from inside C++
* Add color and HighDPI support in stylehelper
* Update icon font and related constants

Change-Id: I31ac33917d2db002697ce63f50f5c181c5fdb103
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-04-27 08:47:31 +00:00
Aleksei German
00f4145de8 QmlDesigner: Global Annotations Editor
Task: QDS-1904
Change-Id: I92682b235f9c69dd7069172807954f0a99a946b0
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-04-22 11:28:35 +00:00
Tim Jenssen
dda945355f Merge remote-tracking branch 'origin/4.12' into qds-1.59
Change-Id: I39a979aba39c735ab6885808b6371e5c8c02d37b
2020-04-22 09:32:07 +02:00
Henning Gruendl
a35a9e72d9 QmlDesigner: Extend icon font support
* Use ADS::IconProvider to make use of font icons
* Add support for IconProvider in FloatingWidgetTitlebar
* Add support for named font icon entities in QmlDesigner::Theme
* Add level of indirection to Constants.qml to be able to parse it
  from inside C++
* Add color and HighDPI support in stylehelper
* Update RichTextEditor
* Update icon font and related constants

Task-number: QDS-1913
Change-Id: I7212f4dfe480dbb340fd042f59c69b8f5ca7a8e4
Reviewed-by: Aleksei German <aleksei.german@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-04-20 16:21:46 +00:00
Eike Ziller
deb0eaf795 Merge remote-tracking branch 'origin/4.12'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/cmakeprojectmanager/cmakebuildsystem.cpp

Change-Id: I34c3d1fd5be90537e37d15e00b1a0d455d1bf81d
2020-04-14 09:47:38 +02:00
Henning Gruendl
bba553e383 QmlDesigner: Fix connection
Task-number: QDS-1639
Change-Id: I10d5e9c4945f7e6afeced5a67a58eb71eb1a4608
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-04-09 15:14:46 +00:00
Henning Gruendl
eda1439a29 QmlDesigner: Link OutputPane visible to DockWidget
Task-number: QDS-1639
Change-Id: I8f384669d402d961683e85ff237a224b6d26cf34
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-04-09 13:24:49 +00:00
Eike Ziller
22cdc47077 Merge remote-tracking branch 'origin/4.12'
Conflicts:
	src/plugins/baremetal/debugservers/uvsc/uvtargetdevicemodel.cpp

Change-Id: I4a90920e52dbbe9eb46aef3437ee3c5a6e7b31c6
2020-03-16 08:30:33 +01:00
Henning Gruendl
5803448ea0 ADS: Add workspace switcher ComboBox to Toolbar
Change-Id: Ice2e38ac8fd7a0a4ef174d443b9f7e308239aa40
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-03-13 14:34:44 +00:00
Eike Ziller
95d41fa23e Merge remote-tracking branch 'origin/4.12'
Conflicts:
	src/plugins/qmldesigner/designmodewidget.cpp

Change-Id: I94a94a15df433d6caa8922fccaa69918b5e4e365
2020-03-11 07:29:47 +01:00
Henning Gruendl
73aaa2a381 ADS: Hide detached window if not in design mode
Task-number: QDS-1672
Change-Id: Ia20113cb9025c19194d87920cf060d2b9791e52a
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-03-09 11:40:19 +00:00
Henning Gruendl
4f6ef7b698 ADS: Disable workspace menu if not in design mode
Task-number: QDS-1741
Change-Id: I8ab9f9f130d74c1dd426077d1b8b9500534b380f
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-03-09 11:23:11 +00:00
Eike Ziller
a6d52a6e28 Move some actions to a "View" menu
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>
2020-03-06 14:01:23 +00:00
Henning Gruendl
5683f2df85 ADS: Cleanup workspace manager workflow
- Add workspace presets
- Add reset button to workspace manager
- Fix last workspace settings save/restore
- Move functionality from DesignModeWidget to DockManager
- Remove factory default workspace
- Cleanup a few if statements

Task-number: QDS-1699
Change-Id: I282dd6162a5a36041f8cd2aacd7407750d54cc22
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-03-05 11:12:51 +00:00
Tobias Hunger
bc64318e31 QmlDesigner: Remove dead code
Change-Id: Ia9db826ff5237755b2794a1ebee8df2a7bedace6
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-03-03 15:02:21 +00:00
Miikka Heikkinen
4908055937 Integrate Edit3D view into Creator
Edit3D view is now a tab alongside Form Editor.
Buttons were moved to a Creator side task bar on Edit 3D view.

Change-Id: Ia06107e4f855ba512ffea3e628a61558894e800e
Fixes: QDS-1570
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-02-24 12:18:53 +00:00
Henning Gruendl
79612417e3 Integrate ADS in QtCreator
- Integrate DockManager in DesignModeWidget (create factory default
   workspace, create menu items, add qds constants, remove unused
   shortcuts)
 - Remove unused functions and variables due to new docking system usage
 - Add DockWidget style sheet to resources
 - Fix scrollbar style by merging base and scrollbar style sheets
 - Fix update of StatesEditorWidget when switching tabs
 - Add missing unique ids in widget info
 - Set minimum size on ItemLibraryWidget

Change-Id: I08be6d753233fc767037a33b41af335cec6d43b1
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-20 16:15:03 +00:00
Sona Kurazyan
8e31932c29 Remove usages of deprecated APIs of QLayout
Replaced:
  QLayout::setMargin() -> QLayout::setContentsMargins()
  QLayout::margin() -> QLayout::getContentsMargins()

Task-number: QTBUG-76491
Change-Id: If28ef6910b3afe5d04e4746b74f9362a3e3b3c8e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-09-02 13:01:07 +00:00
hjk
473a741c9f Utils: Rename FileName to FilePath
More in line with QFileInfo terminonlogy which appears to be
best-of-breed within Qt.

Change-Id: I1d051ff1c8363ebd4ee56376451df45216c4c9ab
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-05-28 12:23:26 +00:00
Eike Ziller
443931c1da Help: Move resolution of help from multiple candidate IDs to HelpItem
No need for code duplication.

Change-Id: I3d2c795d072b8de5818e1844b8126e526339c0da
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-02-01 11:28:02 +00:00
Eike Ziller
1ee005aef4 Qt Quick Designer: Adapt to naming change in IContext
Since context help is no longer based solely on an ID.

Change-Id: I34bb81b70632df9fb75bdcf28b022418d4aa764b
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-01-29 15:58:06 +00:00
Eike Ziller
282805b66d Rename IContext::HelpIdCallback -> IContext::HelpCallback
It no longer takes an ID but a HelpItem.

Change-Id: I0aa738549fea4fcfd0151adc2dfd642c63f0f60d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-01-29 07:58:19 +00:00
Alessandro Portale
859d847769 QmlDesigner: Modernize
modernize-use-auto
modernize-use-nullptr
modernize-use-override
modernize-use-using
modernize-use-default-member-init
modernize-use-equals-default

Change-Id: Ic42b5c59fed5a4a01853138542d8156471e86f58
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2018-07-25 12:53:26 +00:00
Alessandro Portale
3d3f14e3fe Prefer using 'override' instead of 'virtual'
warning: prefer using 'override' or (rarely) 'final' instead of
'virtual' [modernize-use-override]

Change-Id: I6dac7a62b627fa1353b4455e1af92f869c2571cc
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
2018-07-11 16:31:35 +00:00
Thomas Hartmann
a7bf5fae72 QmlDesigner: Stretch factor has to be set after inserting widgets
Change-Id: I90c48c6ca5d7eee51b0d0192ab045ff11a8a7c97
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2018-04-11 10:59:23 +00:00
Thomas Hartmann
8f583631f8 QmlDesigner: Fix black bar
The color was not renamed in this inline css.

Change-Id: Ib23977fcc9f3c5925ef5183dba0fc2c0216ab465
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2018-04-10 08:55:23 +00:00
hjk
4286a4d507 QmlDesigner: Fix NavigationWidgetFactory retrieval
They aren't in the global object pool anymore.

Change-Id: I4f0ae69ebabe33f0276dbfd7137a4f8adbaad489
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2018-02-22 12:53:09 +00:00
hjk
e30c872e61 QmlDesigner: Avoid use of global object pool
Plus some code cosmetics.

Change-Id: I6fde62da5a99e750131d20336d35565280ac7bef
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2018-02-07 16:22:02 +00:00