|
29 | 29 | - [`FloatingContainerForceQWidgetTitleBar` (Linux only)](#floatingcontainerforceqwidgettitlebar-linux-only)
|
30 | 30 | - [`MiddleMouseButtonClosesTab`](#middlemousebuttonclosestab)
|
31 | 31 | - [Auto-Hide Configuration Flags](#auto-hide-configuration-flags)
|
| 32 | + - [Auto Hide Dock Widgets](#auto-hide-dock-widgets) |
| 33 | + - [Pinning Auto-Hide Widgets to a certain border](#pinning-auto-hide-widgets-to-a-certain-border) |
| 34 | + - [Show / Hide Auto-Hide Widgets via Mouse Over](#show--hide-auto-hide-widgets-via-mouse-over) |
| 35 | + - [Adding Auto Hide Widgets](#adding-auto-hide-widgets) |
32 | 36 | - [Setting Auto-Hide Flags](#setting-auto-hide-flags)
|
33 | 37 | - [`AutoHideFeatureEnabled`](#autohidefeatureenabled)
|
34 | 38 | - [`DockAreaHasAutoHideButton`](#dockareahasautohidebutton)
|
|
49 | 53 | - [Central Widget](#central-widget)
|
50 | 54 | - [Empty Dock Area](#empty-dock-area)
|
51 | 55 | - [Custom Close Handling](#custom-close-handling)
|
52 |
| -- [Auto Hide Dock Widgets](#auto-hide-dock-widgets) |
53 |
| - - [Pinning Auto-Hide Widgets to a certain border](#pinning-auto-hide-widgets-to-a-certain-border) |
54 |
| - - [Show / Hide Auto-Hide Widgets via Mouse Over](#show--hide-auto-hide-widgets-via-mouse-over) |
55 |
| - - [Adding Auto Hide Widgets](#adding-auto-hide-widgets) |
56 | 56 | - [Styling](#styling)
|
57 | 57 | - [Disabling the Internal Style Sheet](#disabling-the-internal-style-sheet)
|
58 | 58 |
|
@@ -500,16 +500,60 @@ possible in various web browsers.
|
500 | 500 |
|
501 | 501 | ## Auto-Hide Configuration Flags
|
502 | 502 |
|
503 |
| -The Advanced Docking System has a number of global configuration options to |
504 |
| -configure the Auto-Hide functionality. The "Auto Hide" feature allows to display |
505 |
| -more information using less screen space by hiding or showing windows pinned to |
506 |
| -one of the four dock container borders. |
| 503 | +### Auto Hide Dock Widgets |
| 504 | +
|
| 505 | +The Advanced Docking System supports "Auto-Hide" functionality for **all** |
| 506 | +dock containers. The "Auto Hide" feature allows to display more information |
| 507 | +using less screen space by hiding or showing windows pinned to one of the |
| 508 | +four dock container borders. |
| 509 | +
|
| 510 | +Enabling this feature adds a button with a pin icon to each dock area. |
| 511 | +
|
| 512 | + |
| 513 | +
|
| 514 | +By clicking this button, the current dock widget (or the complete area - depending on the |
| 515 | +configuration flags) will be pinned to a certain border. The border is choosen |
| 516 | +depending on the location of the dock area. If you click the pin button while |
| 517 | +holding down the **Ctrl** key, the whole dock area will be pinned to a certain |
| 518 | +border. |
| 519 | +
|
| 520 | +### Pinning Auto-Hide Widgets to a certain border |
| 521 | +
|
| 522 | +If you would like to pin a dock widget or a dock area to a certain border, |
| 523 | +then you can right-click into the dock widget tab or into the dock area title bar |
| 524 | +to show the context menu. Then you can select the location via the **Pin to** menu: |
| 525 | +
|
| 526 | + |
| 527 | +
|
| 528 | +### Show / Hide Auto-Hide Widgets via Mouse Over |
| 529 | +
|
| 530 | +Normally Auto-Hide widgets are shown by clicking the Auto-Hide tab and hidden by |
| 531 | +clicking the Auto-Hide tab again or by clicking into any other dock widget in |
| 532 | +the same container. If the Auto-Hide config flag `AutoHideShowOnMouseOver` is set, |
| 533 | +the Auto-Hide widget is shown, if the user hovers over the Auto-Hide tab and is |
| 534 | +collapsed if the mouse cursor leaves the Auto-Hide widget. Showing and hiding |
| 535 | +by mouse click still works if this feature is enabled. |
| 536 | +
|
| 537 | +### Adding Auto Hide Widgets |
| 538 | +
|
| 539 | +Adding an auto hide widget is similar to adding a dock widget, simply call |
| 540 | +`dockManager->addAutoHideDockWidget()`. |
| 541 | +
|
| 542 | +```c++ |
| 543 | +CDockManager::setAutoHideConfigFlags(CDockManager::DefaultAutoHideConfig); |
| 544 | +d->DockManager = new CDockManager(this); |
| 545 | +CDockWidget* TableDockWidget = new CDockWidget("Table 1"); |
| 546 | +DockManager->addAutoHideDockWidget(SideBarLeft, TableDockWidget); |
| 547 | +``` |
| 548 | + |
| 549 | +See `autohide` example or the demo application to learn how it works. |
507 | 550 |
|
508 | 551 | ### Setting Auto-Hide Flags
|
509 | 552 |
|
510 |
| -You should set the Auto-Hide flags before creating the dock manager |
511 |
| -instance. That means, you should set the Auto-Hide flags after setting the |
512 |
| -configuration flags. |
| 553 | +The Advanced Docking System has a number of global configuration flags to |
| 554 | +configure the Auto-Hide functionality. You should set the Auto-Hide flags before |
| 555 | +creating the dock manager instance. That means, you should set the Auto-Hide |
| 556 | +flags after setting the configuration flags. |
513 | 557 |
|
514 | 558 | ```c++
|
515 | 559 | CDockManager::setConfigFlag(CDockManager::FocusHighlighting, true);
|
@@ -701,51 +745,6 @@ Normally clicking the close button of a dock widget will just hide the widget an
|
701 | 745 |
|
702 | 746 | When an entire area is closed, the default behavior is to hide the dock widgets it contains regardless of the `DockWidgetDeleteOnClose` flag except if there is only one dock widget. In this special case, the `DockWidgetDeleteOnClose` flag is followed. This behavior can be changed by setting the `DockWidgetForceCloseWithArea` flag to all the dock widgets that needs to be closed with their area.
|
703 | 747 |
|
704 |
| -## Auto Hide Dock Widgets |
705 |
| - |
706 |
| -The Advanced Docking System supports "Auto-Hide" functionality for **all** dock containers. The "Auto Hide" feature allows to display more information using less screen space by hiding or showing windows pinned to one of the four dock container borders. |
707 |
| - |
708 |
| -Enabling this feature adds a button with a pin icon to each dock area. |
709 |
| - |
710 |
| - |
711 |
| - |
712 |
| -By clicking this button, the current dock widget (or the complete area - depending on the |
713 |
| -configuration flags) will be pinned to a certain border. The border is choosen |
714 |
| -depending on the location of the dock area. If you click the pin button while |
715 |
| -holding down the **Ctrl** key, the whole dock area will be pinned to a certain |
716 |
| -border. |
717 |
| - |
718 |
| -### Pinning Auto-Hide Widgets to a certain border |
719 |
| - |
720 |
| -If you would like to pin a dock widget or a dock area to a certain border, |
721 |
| -then you can right-click into the dock widget tab or into the dock area title bar |
722 |
| -to show the context menu. Then you can select the location via the **Pin to** menu: |
723 |
| - |
724 |
| - |
725 |
| - |
726 |
| -### Show / Hide Auto-Hide Widgets via Mouse Over |
727 |
| - |
728 |
| -Normally Auto-Hide widgets are shown by clicking the Auto-Hide tab and hidden by |
729 |
| -clicking the Auto-Hide tab again or by clicking into any other dock widget in |
730 |
| -the same container. If the Auto-Hide config flag `AutoHideShowOnMouseOver` is set, |
731 |
| -the Auto-Hide widget is shown, if the user hovers over the Auto-Hide tab and is |
732 |
| -collapsed if the mouse cursor leaves the Auto-Hide widget. Showing and hiding |
733 |
| -my mouse click still works if this feature is enabled. |
734 |
| - |
735 |
| -### Adding Auto Hide Widgets |
736 |
| - |
737 |
| -Adding an auto hide widget is similar to adding a dock widget, simply call |
738 |
| -`dockManager->addAutoHideDockWidget()`. |
739 |
| - |
740 |
| -```c++ |
741 |
| -CDockManager::setAutoHideConfigFlags(CDockManager::DefaultAutoHideConfig); |
742 |
| -d->DockManager = new CDockManager(this); |
743 |
| -CDockWidget* TableDockWidget = new CDockWidget("Table 1"); |
744 |
| -DockManager->addAutoHideDockWidget(SideBarLeft, TableDockWidget); |
745 |
| -``` |
746 |
| -
|
747 |
| -See `autohide` example or the demo application to learn how it works. |
748 |
| -
|
749 | 748 | ## Styling
|
750 | 749 |
|
751 | 750 | The Advanced Docking System supports styling via [Qt Style Sheets](https://doc.qt.io/qt-5/stylesheet.html). All components like splitters, tabs, buttons, titlebar and
|
|
0 commit comments