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
6b28a804f8
example: Allow to demo the focus scope
...
set KDDW_DEBUG_FOCUS
2020-09-04 17:06:32 +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
04e2a71b66
Merge branch '1.0' into master
2020-08-25 22:00:25 +01:00
Sergio Martins
e3f89b6c17
Remove unneeded include
2020-08-25 21:57:55 +01:00
Sergio Martins
113e6453ea
example: Show usage of segmented indicators
2020-08-23 16:57:48 +01:00
Sergio Martins
f1b9ce714b
Fix building user apps out of repo
...
Our example was being built as part of KDDW, so that worked fine.
Now it can also be built with an installed KDDW.
Problem was the folder hiearchy in the installed include dir
didn't match the folder hiearchy in the source repo
Fixes #62
Cherry-picked from master's 037fa76fff
1.0 makes more sense
2020-08-14 18:47:03 +01:00
Sergio Martins
037fa76fff
Fix building user apps out of repo
...
Our example was being built as part of KDDW, so that worked fine.
Now it can also be built with an installed KDDW.
Problem was the folder hiearchy in the installed include dir
didn't match the folder hiearchy in the source repo
Fixes #62
2020-08-14 17:49:24 +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
c9468bef8a
example: Add some helper code to debug focus
2020-08-08 17:34:06 +01:00
Sergio Martins
10026ba191
Add FocusScope behaviour to TitleBar
...
Github issue #56 is not a KDDW bug, it's how Qt works. QtWidgets don't
have focus scope. But let's workaround and handroll our own FocusScope.
Now the title bar can be colored differently if the dock widget it controls
contains any focused children.
This just implements half of the story. You have to focus a child
for the title bar to change color. Clicking the title bar directly
isn't done yet. Needs to be figured out. What do we focus when clicking it?
TitleBars usually don't care about keyboard focus. Probably we
just use the user's widget as a focus proxy.
2020-08-08 12:33:23 +01:00
Sergio Martins
0a6f760100
Fix a couple of clazy warnings
2020-08-07 22:23:08 +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
Allen Winter
2462f991be
buildsystem - consistent formatting
2020-06-25 13:32:59 -04:00
Allen Winter
c5739e8626
examples/dockwidgets/CMakeLists.txt - increase cmake min vers
...
to make consistent with the top-level project
2020-06-25 10:42:57 -04:00
Sergio Martins
2a33599bde
Fix range-loop detachements
2020-06-23 17:48:40 +01:00
Sergio Martins
3b5ca4dafb
Silence -Wclazy-non-pod-global-static for the example
...
we don't care about non-lib example code regarding this
2020-06-23 17:12:21 +01: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
e6b67101fa
Make the example customize TitleBarWidget instead of TitleBar
...
TitleBar will cease to depend on QWidget
2020-06-11 21:26:33 +01:00
Sergio Martins
9601f57050
example: Don't show the dock widgets immediately
...
It's not needed, as they are going to be added to the layout.
Saves us from flicker and also the temporary floating position
being saved
2020-06-05 13:43:35 +01:00
Sergio Martins
798c808790
example: Set the max-size on the guest widget not on the dock
...
the size constraint will propagate up
2020-05-28 17:48:10 +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
d94263fce5
Allow each dock widget and main window to support multiple affinities
2020-05-25 14:14:17 +01:00
Sergio Martins
2fd9d45525
Link multisplitter as a PUBLIC dependency if kddockwidgets
...
This way user doesn't need to explicitly link against it
2020-05-25 06:52:25 +01:00
Sergio Martins
8461f1f79e
kddockwidgets_multisplitter is now a library of its own
2020-05-25 06:45:13 +01:00
Sergio Martins
ba49e1cbe2
Separator no longer inherits from QWidget
...
Only SeparatorWidget does
2020-05-24 20:29:49 +01:00
Sergio Martins
3bbc33d8c4
example: Revive the custom separator example
...
Pass -p to see a custom painted separator
2020-05-24 19:31:15 +01:00
Sergio Martins
215e8cfd24
example: Cleanup some options a bit
2020-05-20 14:25:23 +01:00
Sergio Martins
235018bfae
example: Set the max-size before docking
2020-05-20 10:05:11 +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
Laurent Montel
d2531d48d3
Make it compile against qt < 5.10 QRandomGenerator was created in qt5.10
2020-05-19 11:20:28 +02:00
Laurent Montel
8b81cd12f8
Compile without deprecated method (qrand is deprecated. Replaced by QRandomGenerator)
2020-05-19 11:03:38 +02:00
Sergio Martins
af25af1259
Add MainWindow::layoutEqually()
...
Distributes the space equally between all dock widgets
2020-05-18 00:05:50 +01:00
Sergio Martins
a9e02ccd41
example: Don't leak the dock widgets on shutdown
2020-05-17 18:02:03 +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