Commit Graph

13 Commits

Author SHA1 Message Date
Henning Gruendl
16ef838f23 ADS: Integrate newest base repository commits
* Update to newest version of ADS
* Remove native window and title bar support on linux

Base repository was merged until commit
8d4507e9d83434be976ff8c7bc9f59733937a08d

Task-number: QDS-10242
Change-Id: If74b6b50421be3b759c61b0f76f4a330991f71fa
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-07-20 11:00:24 +00:00
hjk
38a6ab6cd6 AdvancedDockingSystem: Fix file licenses
Amends a7956df3ca which accidentally dropped the (L)GPL part.

Change-Id: I22e3f5cdb12b15ee777524cac04aa888606026c3
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2023-01-04 07:31:44 +00:00
Lucie Gérard
a7956df3ca Use SPDX license identifiers
Replace the current license disclaimer in files by
a SPDX-License-Identifier.

Task-number: QTBUG-67283
Change-Id: I708fd1f9f2b73d60f57cc3568646929117825813
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-08-26 12:27:18 +00:00
Jarek Kobus
c30a695784 Drop Qt5: AdvancedDockingSystem: Remove code below Qt 6.0.0
Change-Id: If2ebc32c8057d1f614fd8d3749be97c923453585
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-08-22 08:59:30 +00:00
Eike Ziller
8527cbedcc Fix more compilation issues with Qt6
Various Windows related issues and issues with additional QML designer
components.
Don't use very generic template definitions if the type has to provide
not so generic base functionality (in this case providing a stream
operator for QDataStream).

Task-number: QTCREATORBUG-24098
Change-Id: Id0729c249d1b81e4e939fdaeb2e02b8a64e7e8f9
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-11-04 12:52:17 +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
Alessandro Portale
d3f85ee409 ads: Remove redundant occurrences of "virtual"
As suggested by clang-tidy's "modernize-use-override" check and to match
Qt Creator's coding guidelines.

Change-Id: I2cfef113e21a0cd44d18a5b98e9bc8427563c53a
Reviewed-by: Henning Gründl <henning.gruendl@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-06-18 11:42:14 +00:00
Henning Gruendl
92c7662acb ADS: Integrate newest base repository commits
998fe9fa11939eb28dd021ca11d5302c4fe2a005
28dc374fc25fcf5a4100c7ad929cb8da690530ed
0e88467f94194d5bea209f6ddc364358ab92899e
d0f4ce324890197683869eafda0f3938ae619b8d
c541f2c69b519eceb76ffc54589175c9fd0da8a6
37d305e50d2c0829f031b71a61e290361eea9f07

- Fix/workaround for escape key issue with remaining overlays
- Clean up if statements according to style guide

Task-number: QDS-1883
Change-Id: I44ddaed67458a75aca91bdd74cd2b5890bd23c38
Reviewed-by: Aleksei German <aleksei.german@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-04-24 11:48:32 +00:00
Tobias Hunger
3eba1fd302 ADS: Remove struct from DockAreaTitleBar
We do not use struct in Qt Creator.

Change-Id: Ieb5f9f4514a8220fa1d2a616baf2c8ef69d4a2c3
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-03-03 16:03:54 +00:00
Tobias Hunger
d09c92ccee ADS: Remove struct from DockWidgetTab
We do not use struct in Qt Creator.

Change-Id: I299effff6a7e6b79494be9a9e2dece1d6492714a
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-03-03 16:03:06 +00:00
Tobias Hunger
95182dc6b9 ADS: Remove struct from DockManager
We do not use struct in Qt Creator.

Change-Id: I7755d66bc7b77825ab17ed333b23cbe36e52ff72
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-03-03 16:00:50 +00:00
Tobias Hunger
a24dead5f6 ADS: Remove struct from FloatingDockContainer
We do not use structs in Qt Creator.

Change-Id: I179013eb40f6fd2a836b49f40c6ee17b5f0ce6d7
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-03-03 15:12:01 +00:00
Henning Gruendl
8f686e985c Add Advanced Docking System library
This library is a fork of the following repository
https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System
Development started from the following commit
1de42a9766134eecd2611c2b4e209d3e0ede74d2
Incorporate all commits until
3ffbbfb6d01ff211d8349027221a19b1419296b5

 - Rename variables and files to follow the Qt style guide
 - General code cleanup (remove goto, fix typos, add overrides, remove
   explicit slots specifier, replace string-based with functor-based
   connections, replace dynamic_cast with qobject_cast)
 - Replace most preprocessor instructions Q_OS_LINUX/Q_OS_MACOS with
   Utils::HostOsInfo
 - Remove all QT_VERSION preprocessor instructions below 5.11
 - Change loading and storage of workspaces. Store workspaces in
   separate file instead of a list in the Settings.ini
 - Add workspace dialog, model and view for managing workspaces
 - Rename XML tags and use enum/bool instead of ascii art/numbers as
   attribute values. Use base64 instead of hex for storing geometry info
 - Remove internal style sheets
 - Add more build systems (qmake, qbs)
 - Adapt copyright header
 - Remove unix specific build rules
 - Replace ADS_PRINT with QLoggingCategory
 - Replace Java-style with STL-style iterators

Change-Id: Icf8c2fbaccec9680df83c6e2100e3446a090a437
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-02-20 16:14:52 +00:00