Sergio Martins
1458da92d9
minimal example: Use fusion too
...
Looks better in general
2020-09-29 18:10:12 +01:00
Sergio Martins
6a46744073
Make Flag_AutoHideSupport public
...
Ready to be tested by the public
2020-09-21 00:19:20 +01:00
Sergio Martins
e1085fb770
Add experimental support for minimization to side-bar
...
Auto-hide not working yet. Just minimization.
Internal for now. Will be public once finished.
2020-09-18 18:35:41 +01:00
Sergio Martins
e92ef472b3
Floating windows now support a minimize button
...
Introduced Flag_TitleBarHasMinimizeButton for it.
It implies Flag_DontUseUtilityFloatingWindows too, since Qt::Tool
don't appear in the task bar.
example: kddockwidgets_example -k
2020-09-17 21:46:28 +01:00
Sergio Martins
beb2128804
example: Added --no-aero-snap for debugging purposes
2020-09-14 22:28:15 +01:00
Sergio Martins
87ba2e0ee7
example: Add option to test combinations of Qt::Tool and parent
...
for internal testing
2020-09-13 13:30:55 +01:00
Sergio Martins
eaeed567f3
Don't have a parent window when using Qt::Window
...
Otherwise Qt::Window behaves like Qt::Tool, on Windows
2020-09-13 13:22:48 +01:00
Sergio Martins
2d2c8524ee
Introduce Config::Flag_DontUseUtilityWindowsForFloating
...
Controls whether windows get Qt::Tool or not
2020-09-13 12:24:26 +01:00
Sergio Martins
f090a51485
example: Make title bar focusable when debugging focus
2020-09-07 20:26:09 +01:00
Sergio Martins
2977f0b8c6
Introduce Config::Flag_AlwaysTitleBarWhenFloating
...
Allows to improve on Flag_HideTitleBarWhenTabsVisible.
Flag_HideTitleBarWhenTabsVisible will hide title bar regardless
if the window is floating or docked. By enabling Flag_AlwaysTitleBarWhenFloating
the title bar will only be hidden if docked.
Demo: ./bin/kddockwidgets_example -qt
Fixes #64
2020-08-27 15:14:55 +01:00
Sergio Martins
251423116f
Merge branch '1.0' into master
2020-08-27 14:54:18 +01:00
Sergio Martins
5a66d09266
example: Decouple Flag_HideTitleBarWhenTabsVisible from Flag_AlwaysShowTabs
...
New swtich -z will trigger Flag_AlwaysShowTabs.
use -zt for what was -t before.
This is more granular now, as they are mix and match
2020-08-27 14:52:48 +01:00
Sergio Martins
113e6453ea
example: Show usage of segmented indicators
2020-08-23 16:57:48 +01:00
Sergio Martins
890784ba5a
Finish FocusScope support
...
When clicking on a TitleBar the focus will be redirected to either:
- Last widget that had focus inside the scope
- To the DockWidget. Implies the user setting a guest widget that
accepts focus
Fixes : #56
2020-08-08 17:34:06 +01:00
Sergio Martins
96a3eea108
Silence some clazy warnings which are benign in this context
2020-08-07 21:56:17 +01:00
Sergio Martins
22a13c7c9c
Fix widgets example
...
Committed some things I shouldn't have during the qml port
2020-08-04 18:23:22 +01:00
Sergio Martins
52626b1874
qml: Add support for the MainWindow
...
Not really a MainWindow in the sense of toolbars and all.
For qml it's just the drop area, acepting drops
2020-08-03 20:05:36 +01:00
Allen Winter
b4f49895c2
clarify: licensing is GPL2 or GPL3 or commercial licensed
...
follow the REUSE specs
2020-07-24 18:16:13 -04:00
Sergio Martins
b8664c44c7
example: show the use of max-sizes without developer-build
...
the feature is stable to show
2020-06-17 16:29:45 +01:00
Sergio Martins
f770e768b8
example: Add option to load a layout from file
2020-05-26 21:53:58 +01:00
Sergio Martins
63c90875aa
example: Add example of docking main window into main window
2020-05-25 21:45:21 +01:00
Sergio Martins
215e8cfd24
example: Cleanup some options a bit
2020-05-20 14:25:23 +01:00
Sergio Martins
dc87c05f04
example: Add an option to text max-sizes
...
Support not done yet, but useful for testing
2020-05-19 23:22:39 +01:00
Sergio Martins
3742e5ef9a
example: No persistent central frame by default
...
This is old style, which we don't use anymore by default
2020-05-07 19:32:32 +01:00
Sergio Martins
e298667351
Remove dead code about static separators
...
Before we had separators on the left,top,bottom,right margins
with 0 width. Now we don't have this concept anymore
2020-05-04 14:28:59 +01:00
Sergio Martins
e87f6d001e
example: Fix duplicate command line argument switch
2020-05-01 13:09:27 +01:00
Sergio Martins
6ee3cfbb2d
Introduce "Maximize/restore" title bar button support
...
As happens with other docking frameworks:
- Maximized/restore button only visible when window is floating
- floating button is never visible
Available by setting Flag_TitleBarHasMaximizeButton.
Added example too.
Fixes : #37
2020-04-20 19:55:51 +01:00
Sergio Martins
ab0fc1e328
Add DockWidget::Option_NonDockable
...
A dock widget with this option will always be floating and not be
able to dock into anything. Other widgets can't dock into it either.
2020-04-13 13:23:38 +01:00
Sergio Martins
90b893e46a
Introduce Flag_DoubleClickMaximizes
...
Double clicking on the title bar of a floating window will maximize it.
2020-02-27 15:00:31 +00:00
Sergio Martins
ca211f2494
LayoutSaver: Add an option to restore in relative sizes
...
and not touching the main window geometry.
The option is not exposed yet, there's a layouting bug to fix first.
2020-02-25 19:06:43 +00:00
Sergio Martins
b43081851f
example: Add an option to show a non-closable dock widget
...
Passing -n to the example will make the dock widget #0 non-closable
2020-02-17 21:20:43 +00:00
Sergio Martins
10621f3b4a
Allow tabs to have a close button
...
Can be tested with kddockwidgets_example -c
Disabled by default, as I'm not 100% happy with it:
A dock widget with the "non closable" attribute will still show
the x button on the tab bar. Clicking on it won't do anything but
doesn't look so nice. Qt doesn't allow to have the close buttons only
in some tabs.
Fixes #26
2020-02-17 20:45:54 +00:00
Sergio Martins
d6997eaf7f
Introduce main window affinity
...
By default a dock widget can dock into any main window.
With affinities, we can now have a dock widget "belong" to a main window
and only be able to dock into it (or into other floating dock widgets
with the same affinity).
See DockWidgetBase::setAffinity() and MainWindowBase::setAffinity().
2020-02-09 21:02:21 +00:00
Allen Winter
df692686e7
various - update copyright year
2020-01-07 11:36:56 -05:00
Sergio Martins
9c6fd9ba0e
Add support for lazy resize
...
In this mode the resize is only done when mouse is released.
Fixes #21
2019-12-29 17:55:19 +00:00
Sergio Martins
927510dfff
Support re-ordering tabs with mouse
...
Just set KDDockWidgets::Config::Flag_AllowReorderTabs before creating
the dock widgets.
Fixes #20
2019-12-26 15:19:27 +00:00
Sergio Martins
44bcfdf53c
Simplify the demo, make it more verbose
...
So people see how the API is used.
using vectors of structs with parameters is very compact but
is harder on the reader of a new API
2019-10-22 13:39:41 +01:00
Sergio Martins
a0787f1488
examples: Move custom_titlebar code into kddockwidgets_example
...
Guarded with a command line switch, no need to have two examples
2019-10-06 22:26:09 +01:00
Sergio Martins
0e5f5bf679
examples: tidy
2019-10-06 14:47:42 +01:00
Sergio Martins
1adefed05d
examples: Remove the embedded option
...
It was just for testing the MFC case, which is fixed and integrated
into the unit-tests. Not something interesting for end-users
2019-10-06 14:39:05 +01:00
Sergio Martins
2ee1cac097
examples: Use QCommandLineParser
2019-10-06 14:34:31 +01:00
Sergio Martins
d1d9c027c7
example: Move the main window to its own class
...
Renamed ExampleDockableWidget to MyWidget
2019-10-06 14:12:38 +01:00
Sergio Martins
9504a728d4
Rename basic_external to dockwidgets
...
This will be our main example now
2019-10-06 13:29:40 +01:00