Commit Graph

342 Commits

Author SHA1 Message Date
Uwe Kindler
cdc863e962 Fixed 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
2020-04-27 14:00:37 +02:00
Uwe Kindler
842d417e8d Fixed crash when trying to make a CDockWidget floating in non-opaque mode if the CDockWidget is not floatable 2020-04-27 07:54:43 +02:00
Uwe Kindler
52a64350e6 Fixed DockWidgetTab to provide the right size when starting floating 2020-04-27 07:48:15 +02:00
Uwe Kindler
a4fbaf413b Fixed source documentation of DockAreaDynamicTabsMenuButtonVisibility flag 2020-04-24 09:31:13 +02:00
Uwe Kindler
bc2ac48eab Fixed default elide mode in DockWidgetTab.cpp 2020-04-24 09:29:33 +02:00
Uwe Kindler
ddbdb83821 Added documentation for DockAreaHideDisabledButtons flag 2020-04-22 12:03:58 +02:00
Uwe Kindler
85626c9a21 Added Q_INIT_RESOURCE(ads) for static builds 2020-04-22 06:25:01 +02:00
Uwe Kindler
8aae6bf70b Added DockWidget functions setAsCurrentTab, raise, isCurrentTab, isTabbed 2020-04-13 22:16:47 +02:00
Uwe Kindler
a668fe2f73 Added new config flag HideSingleCentralWidgetTitleBar to enble a central single dock widget in the main dock container (dock manager) without titlebar
Added a test case for the new flag to MainWindow.cpp
2020-04-12 01:05:20 +02:00
Uwe Kindler
12bb7b73e9 Fixed CDockContainerWidget::hasTopLevelDockWidget() and CDockContainerWidget::topLevelDockArea() to work properly also for the main non floating dock container 2020-04-12 00:56:41 +02:00
Uwe Kindler
dbf90a4233 Fixed ElidingLabel to properly support Qt::ElideNone
added setElideMode function to CDockWidgetTab
2020-04-10 21:06:43 +02:00
Uwe Kindler
19331ebe2b Added comment to showFullScreen that this only works for Windows 2020-04-10 12:54:37 +02:00
Uwe Kindler
16a149b436 Fixed wrong call to base class function in DockWidget::showNormal 2020-04-10 12:35:47 +02:00
Uwe Kindler
1f995299f0 Added setFullScreen(), setNormal() and isFullScreen() function to CDockWidget to be more compatible to QDockWidget 2020-04-09 23:16:50 +02:00
Uwe Kindler
7a17aba42d Fixed takeWidget() function and fixed setWidget() function to handle case if there is already a content widget 2020-04-09 21:44:21 +02:00
Uwe Kindler
998fe9fa11 Added Q_OS_WIN around the installation of the eventFilter in FloatingDockContainer because it is only required for Windows 2020-04-01 08:36:33 +02:00
Uwe Kindler
28dc374fc2 Added support for proper handling on non client escape key presses on Windows 2020-04-01 08:12:45 +02:00
Uwe Kindler
1b6e449b4a Merge branch 'dev' 2020-03-28 19:32:59 +01:00
Uwe Kindler
0e88467f94 DockAreaWidget now properly considers minimumSizeHint() of contained DockWidgets
Added setMinimumSizeHintMode() test in demo MainWindow
2020-03-28 19:32:07 +01:00
Uwe Kindler
d0f4ce3248 Added support to adhere the minimumSizeHint() of the content widget of a dock widget 2020-03-26 07:09:01 +01:00
Uwe Kindler
542618fd4e Removed unneeded includes from DockManager.h and fixed includes to use "" instead of <> to prvent conflicts with external libraries 2020-03-26 06:53:13 +01:00
Uwe Kindler
661d0c4356 Removed dead code in comment of DockAreaWidget 2020-03-25 14:38:10 +01:00
Uwe Kindler
c541f2c69b DockWidget now also emits closed() signal if DockWidgetDeleteOnClose flag is set 2020-03-25 14:34:42 +01:00
Uwe Kindler
37d305e50d Fixed documentation of toolBarIconSize() function of DockWidget 2020-03-25 14:23:27 +01:00
Uwe Kindler
1c2383f8eb Fixed regression #132 - Inner drop areas don't work with multi tab DockWidgets 2020-03-12 20:29:03 +01:00
Uwe Kindler
6c687d28de Fixxed isse #131 - Crash on dropping in same area multiple times 2020-03-12 10:23:41 +01:00
Uwe Kindler
708add3ff5 Fixed two linter warnings in CDockManager 2020-03-12 08:01:57 +01:00
Uwe Kindler
e85b4167bd Changed CDockManager::addToggleViewActionToMenu to support later setting of group icon 2020-03-10 09:11:36 +01:00
Uwe Kindler
59c783831a Fixed wrong test for VisibleDockAreas 2020-03-07 16:18:19 +01:00
Uwe Kindler
4cb1931ace Fixed display of container dock overlay if only one single visible dock area is in a container 2020-03-02 11:21:44 +01:00
Uwe Kindler
fe10b570d3 Fixed reception of escape key press events 2020-02-26 20:51:29 +01:00
Uwe Kindler
f3c5d51380 Improved documentation for setting dock manager flags 2020-02-26 13:25:17 +01:00
Uwe Kindler
34cb2ae917 Fixed escape key press detection 2020-02-25 09:16:21 +01:00
Rodrigo Oliva
dec170ed24
Don't select a new tab if the tab being closed is not the current tab. (#125) 2020-02-21 22:46:21 +01:00
Uwe Kindler
e8332575f8 Improved tab dragging, added support for undocking if mouse leaves tabbar during tb dragging 2020-02-19 22:48:17 +01:00
Uwe Kindler
3f09d5c6ea Fixed initial position for CFloatingDockContainer when dragging a tab outside of the tabbar 2020-02-19 18:36:57 +01:00
Uwe Kindler
3407945f19 Merge branch 'master' of https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System 2020-02-17 10:42:02 +01:00
Uwe Kindler
ce01e6b4a6 Fixed QT_VESION typo in DockOverlay.cpp 2020-02-17 10:41:13 +01:00
Sanakan8472
3428a4b8b4
Added CDockManager::floatingWidgetCreated event (#121)
This allows to subscribe to events of the newly created window.
A common use case is to show a message box if a dock container with many modified documents in it is closed. This allows for the user to decide whether he wants to save / discard all the changes or cancel the closing of the window.
2020-02-17 08:15:11 +01:00
Uwe Kindler
2b9377b5ee Fixed drag canceling via ESC key 2020-02-17 08:08:25 +01:00
Uwe Kindler
d4a18003d9 Properly implemented handling of DockWidget flag DockWidgetIsMovable for NonOpaque undocking - creating the drag preview is allowed even if the DockWidget is not floatable 2020-02-16 14:37:14 +01:00
Uwe Kindler
2c15d5dacd Fixed regression caused by setDockArea() function removed from DockWidgetTab 2020-02-14 22:56:48 +01:00
Uwe Kindler
f236de3277 Replaced all dynamic_casts with qobject_casts 2020-02-13 18:56:04 +01:00
Uwe Kindler
93394577d0 Merge branch 'master' into custom_titlebar 2020-02-13 13:53:56 +01:00
Uwe Kindler
f387c6aebc Merge branch 'master' of https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System 2020-02-13 13:51:11 +01:00
Uwe Kindler
41173d067b Switched QScopedPointer to std::unique_ptr in DockComponentsFactory 2020-02-13 13:45:40 +01:00
Uwe Kindler
5b60e39ed3 Removed unneeded functions 2020-02-13 13:04:08 +01:00
Uwe Kindler
1916bd726d Fixed build issue for older Qt versions 2020-02-11 15:46:19 +01:00
Uwe Kindler
3efc5f2ada Added DockComponentsFactory.h documentation, changed DockComponentsFactory showcase in MainWindow after discussion on GitHub 2020-02-11 15:38:49 +01:00
Uwe Kindler
65eeffd5e1 Added showcase for DockComponentsFactory - a help button is injected into a title bar 2020-02-11 09:31:57 +01:00
Uwe Kindler
ff1439c719 Added CDockComponentsFactory for creation of components for the docking framework 2020-02-11 08:32:49 +01:00
mvidelgauz
7ba20f37b7
Icon of floating window (#116)
* FloatingContainerHasWidgetTitle and FloatingContainerHasWidgetIcon config flags
2020-02-10 20:07:36 +01:00
Rodrigo Oliva
a4ef161f4f
Fix using escape button when dragging non-opaque preview to cancel drag operation (#114)
* Added missing overrides.

* Escape button to cancel dragging was not working in Windows either. Using the event filter added for Linux works.
2020-02-07 23:07:07 +01:00
Uwe Kindler
8a16230213 Merge branch 'master' of https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System 2020-02-07 22:54:02 +01:00
Uwe Kindler
8113bf63ba Added spacer widget to handle mouse events properly in CDockAreaTitleBar, added missing updateGeometry calls to CDockAreaTabBar 2020-02-07 22:49:10 +01:00
Rodrigo Oliva
2770837adc
Added missing overrides. (#113) 2020-02-07 14:41:35 +01:00
Uwe Kindler
c4872c6b10 Added showcase for custom title bar widget to demo application 2020-02-07 14:29:02 +01:00
Uwe Kindler
efb9b879dd Added functions to insert custom dock area title bar widgets 2020-02-07 13:42:11 +01:00
Uwe Kindler
d10d59a8e2 Porperly moved title bar context menu code from DockAreaTabBar into DockAreaTitleBar 2020-02-07 12:23:26 +01:00
Uwe Kindler
b61f50982a Moved title bar dragging code from DockAreaTabBar into DockAreaTitleBar 2020-02-07 12:16:26 +01:00
Uwe Kindler
ae72f5e47d Changed sizeHints(), sizePolicy() and used updateGeometry() to properly size the tabBar 2020-02-07 11:49:45 +01:00
Uwe Kindler
9d7c692398 Fixed stylesheet typo 2020-02-06 15:37:50 +01:00
mvidelgauz
474dd13855
Disable tabs menu button when only single tab exists in a Dock area (#111) 2020-02-06 15:21:19 +01:00
Uwe Kindler
b727274cd9 Implemented support for custom DockWidget actions for display in DockArea title bar 2020-02-06 09:15:13 +01:00
Uwe Kindler
094fa37135 Implemented supprt for customdock area title bar buttons 2020-02-06 00:31:57 +01:00
Uwe Kindler
6a8b26f415 Added function internal::setButtonIcon to unify code for setting DockAreaTitleBar and DockWidgetTab icons 2020-02-05 08:57:57 +01:00
Uwe Kindler
acb423872a Helper function internal::setToolTip() to remove as many #ifndef QT_NO_TOOLTIP tests as possible to cleanup the code 2020-02-05 08:33:40 +01:00
Uwe Kindler
505f14a601 Improved code for generation of default configuration flags 2020-02-05 08:16:07 +01:00
mvidelgauz
b8ed70fa33
Added DockAreaHideDisabledButtons configuration flag (#110)
* CInvisibleButton generalized to CTitleBarButton to serve more purposes
* Disabled buttons are hidden if CDockManager::DockAreaHideDisabledButtons set to true
2020-02-05 08:04:27 +01:00
mvidelgauz
1d68e27558
Added DockAreaHasTabsMenuButton and DockAreaHasUndockButton to CDockManager config (#108)
* Added DockAreaHasUndockButton and DockAreaHasTabsMenuButton configuration flag
2020-02-02 16:22:05 +01:00
Uwe Kindler
1dbd3f3f06 Blocked tabyfing via moving over DockArea titlebar if the CenterDockWidgetArea is not in the allowed areas for DockAreaWidget 2020-02-02 16:03:58 +01:00
Uwe Kindler
68b0958119 Removed unused code 2020-02-02 16:02:12 +01:00
mvidelgauz
6c3f82547d
setAllowedAreas for individual DockAreaWidget (#107)
* setAllowedAreas for individual DockAreaWidget

* alligning tab policy with master
2020-02-02 15:56:31 +01:00
Uwe Kindler
9fe8f291fb Fixed CDockManager::DockAreaHasCloseButton == false issue 2020-02-02 11:16:38 +01:00
Uwe Kindler
4f62794946 Added documentation for new AlwaysShowTabs flag 2020-01-31 14:36:05 +01:00
Rodrigo Oliva
dd06d84206
Add option to always show all tabs (#102)
* Add option to always show tabs.

* Disable "Detach" context menu option in tab if there is only one tab in the floating container.
2020-01-31 14:27:01 +01:00
Krzysztof Machura
d4c179c48e
Fix tabs not being active when restoring state (#101)
Regression introduced by 29ebc83b35
2020-01-31 14:26:02 +01:00
Uwe Kindler
8f696ea36a Fixed a regression in DockWidgetTab that caused wron positioning of FloatingDockContainer when moving the mouse 2020-01-16 15:24:01 +01:00
Uwe Kindler
ce1e8c8beb Fixed position calculation for tab dragging 2020-01-15 21:15:29 +01:00
Uwe Kindler
418d0740d2 Switched from local event pos to global event pos in DockWidgetTab to fix jumping tabs when hiding / showing tabs close button 2020-01-15 10:03:50 +01:00
Uwe Kindler
50c3066eaa Removed std::cout debug output 2020-01-15 08:34:49 +01:00
Uwe Kindler
29ebc83b35 Some changes for debugging visibility changed stuff 2020-01-15 07:49:22 +01:00
Uwe Kindler
03bd4a4505 Added visibilityChanged code 2020-01-14 15:58:45 +01:00
Uwe Kindler
407af06a4a Fixed some issues with custom close handling 2020-01-14 12:43:42 +01:00
Uwe Kindler
9af9e43a5d Fixed MSVC build warning 2020-01-12 15:12:47 +01:00
Uwe Kindler
4c928071af Merge branch 'master' into closerequest
# Conflicts:
#	demo/MainWindow.cpp
2020-01-12 15:07:51 +01:00
Uwe Kindler
e1044c3e91 Fixed compiler warning for MSVC 2020-01-11 15:21:10 +01:00
Uwe Kindler
616e50c3f5 Fixed FloatingDockContainer closeEvent to properly support QAxWidgets 2020-01-10 08:54:44 +01:00
Uwe Kindler
a5e8011222 Implemented custom close handling 2020-01-06 11:42:36 +01:00
Uwe Kindler
0305d8a221 Experimental implementation of close request 2020-01-03 18:13:34 +01:00
Uwe Kindler
861ce67725 Fixed bug in DockContainerWidgetPrivate::moveIntoCenterOfSection
If a dock widget has been dropped into the center of a dock area via non-opaque docking the dropped widget did not become the active tab - this has been fixed
2019-12-17 13:45:33 +01:00
Uwe Kindler
2af4b1f75c Blocked display of context menu when dragging floating widget 2019-12-16 13:56:20 +01:00
Uwe Kindler
779c4b928c Fixed build warning for FloatingDragPreview.cpp 2019-12-16 11:47:55 +01:00
Uwe Kindler
056f04d408 Properly implemented support for canceling non-opaque undocking on Linux 2019-12-16 11:45:18 +01:00
Uwe Kindler
e085a29484 Renamed FloatingOverlay into FloatingDragPreview to match naming of global DockManager flags (like DragPreviewHasWindowFrame..) 2019-12-16 11:18:22 +01:00
Uwe Kindler
ffd35cbce3 Added support for canceling non opaque docking with escape key, fixed state of non opaque docking when switching applications (if application becomes inactive) 2019-12-16 11:10:59 +01:00
Uwe Kindler
8c1f065f3f CHanged DockAreaTabBar to handle the dragging state via DragState member variable instead of testing for FloatingWidget nullptr 2019-12-16 08:41:15 +01:00
Uwe Kindler
5af6b4e324 Improved source documentation and images 2019-12-16 08:06:38 +01:00
Uwe Kindler
b47a777f5c Fixed issue #88 - floating widgets going to the background on OSX when moving them 2019-12-13 20:56:50 +01:00
Uwe Kindler
5b3a0a28df Fixed vertical alignment of label in FloatingWidgetTitleBar
Added call to FloatingWidget->finishDragging()
2019-12-13 13:19:24 +01:00