Sergio Martins
c1ea98825e
Improve includes
2019-08-12 16:41:00 +01:00
Sergio Martins
17b3048aeb
cmake: Rename target to kddockwidgets instead of docks
2019-08-08 16:03:59 +01:00
Sergio Martins
b946627961
cmake: Fix some includes
2019-08-08 15:58:22 +01:00
Sergio Martins
020571b6f5
The QtQuick stuff compiles now
2019-08-08 12:52:18 +01:00
Sergio Martins
6060741851
More QtWidget abstraction
2019-08-07 14:24:11 +01:00
Sergio Martins
022e91db78
More QtWidget decoupling
2019-08-07 13:35:45 +01:00
Sergio Martins
a27b4b387a
Split QWidgetAdapter into _widget and _quick variants
...
So we don't need so many ifdefs
2019-08-07 11:29:39 +01:00
Sergio Martins
4bfd76dc61
Introduce QWidgetAdapter and apply it to MultiSplitter
...
MultiSplitter is now QWidget agnostic, and should work with
QtQuick
2019-08-06 23:07:47 +01:00
Sergio Martins
cb7ecb76e4
Rename the MultiSplitterWidget files too
2019-08-06 22:19:00 +01:00
Sergio Martins
eafc00657b
Separator: Decouple the QWidget dependency
...
There's no Separator and SeparatorWidget. The former only with
state/logic. To be reused by QtQuick.
2019-08-06 13:32:06 +01:00
Sergio Martins
8f05c3fa72
cmake: include_directories--
2019-08-05 23:55:19 +01:00
Sergio Martins
fb837b7713
Move DockWidget.cpp into widgets/
...
As it's specific to QtWidgets. It's mostly empty now
and inheriting from DockWidgetBase, but we'll move a few stuff.
2019-08-05 23:35:44 +01:00
Sergio Martins
ae7934dd47
Abstract FloatingWindow too, introducing FloatingWindowWidget
2019-08-05 02:41:34 +01:00
Sergio Martins
d8c689316d
Moved SeparatorWidget into widgets/
...
It's now abstracted by the FrameworkWidgetFactory, allowing
the user to provide his own
2019-08-05 02:13:42 +01:00
Sergio Martins
a17465158d
Introduce FrameworkWidgetFactory
...
The framework uses a few QWidgets (FrameWidget, TabbarWidget, TabWidget
TitleBarWidget). This factory allows the user to provide his own,
to achieve different appearence.
2019-08-05 01:35:42 +01:00
Sergio Martins
0f579d8f5e
TabWidget: Separate GUI from state
2019-08-05 00:24:02 +01:00
Sergio Martins
bddd059ce9
TabBar: Split logic from GUI
...
Will make it easier for the users to subclass TabBar and provide an alternative.
Also easier to make the QtQuick port.
2019-08-04 23:51:43 +01:00
Sergio Martins
b347e0e53f
Abstract Frame.cpp into FrameWidget
...
Anything GUI specific should go to FrameWidget, so the user
can change GUI aspects without impacting the sensitive logic.
2019-08-04 23:10:12 +01:00
Sergio Martins
ee023cb5ac
Move TitleBarWidget into widgets/
2019-08-04 21:56:08 +01:00
Sergio Martins
3035d387a5
TitleBar: Introduce TitleBarWidget to separate logic/state from GUI
...
TitleBar has the state, while TitleBarWidget has the appearence.
This makes it easier for the user to specify his own TitleBar's,
by inheriting from TitleBar.
Will also make the QtQuick support easier.
2019-08-04 21:50:28 +01:00
Sergio Martins
cb7d1086b9
tests: Don't use QStringLiteral or any fancy Qt restrictions
...
It's very verbose and its preformance benefits aren't important
for the tests
2019-08-03 11:55:27 +01:00
Sergio Martins
08c858ba6e
Add a Config.h public header, to configure behaviour
...
Like enabling aero snap or native title bar
2019-07-31 22:16:25 +01:00
Sergio Martins
bc93f924fc
Disable the Animated Indicators for now
...
They don't work yet
2019-07-22 11:18:43 +01:00
Mike Krus
1824eb6892
Clean up cmake files
...
Use modern syntax in most places.
2019-07-19 22:45:22 +01:00
Sergio Martins
2cbd6f5dbb
cmake: Don't look for X11Extras on Windows
2019-07-13 12:11:32 +01:00
Sergio Martins
2cbf758f6b
Don't include MainWindow.moc in .cpp
...
some build systems don't support it
2019-07-10 12:58:24 +01:00
Sergio Martins
6d5f08fb8a
Add a debug window, for when GammaRay can't be used
2019-07-09 09:19:53 +01:00
Sergio Martins
2093d02ac5
Split the Anchor class in Anchor and SeparatorWidget
...
This way state is separated from the widget code, and a lot less
comples.
Anchor is now just a QObject, to be renamed to Separator.
Now the state drives the widget, before it was confusing, where
m_position was set when receiving move events.
2019-06-23 23:52:27 +01:00
Sergio Martins
9632a906ab
Remove unused class, this won't cover all the uses cases
2019-06-22 10:31:57 +01:00
Sergio Martins
96cb4b8b07
Rename MultiSplitter to MultiSplitterLayout
...
As it's no longer a QWidget
2019-06-22 00:13:05 +01:00
Sergio Martins
0d367994c7
separate MultiSplitter into MultiSplitter and MultiSplitterWidget
...
This factors out the layouting code into a non-QWidget class, so
it can be reused
2019-06-21 23:56:25 +01:00
Sergio Martins
115fc87ad5
Move LayoutMemory to src/
...
While MultiSplitter is generic this one will know about DockWidget
2019-06-21 16:21:39 +01:00
Sergio Martins
3fc57d0223
Add a LayoutMemory class, memory in the sense that it remembers
...
Needed for restoring widgets to their positions when made visible
again
2019-06-20 12:57:27 +01:00
Sergio Martins
ca4421e963
DockWidget::setFloating(false) now restores to previous tab
...
TODO: Restore to areas (non-tabbed). Will require a bigger refactoring.
2019-06-18 23:29:18 +01:00
Sergio Martins
8d763e0df9
try to fix macOS build
2019-05-11 23:07:59 +01:00
Sergio Martins
933287e9c3
Add KDDockWidgets::windowManagerSupportsTranslucency()
2019-05-11 22:30:33 +01:00
Sergio Martins
36e7053476
Rename WidgetResizeHandlerBase to WidgetResizeHandler
2019-04-29 22:51:07 +01:00
Sergio Martins
139518405c
Remove unneeded hierarchy from WidgetResizeHandler
...
A single one is enough
2019-04-29 22:45:17 +01:00
Laurent Montel
aafa550123
Remove unused rubberband class
...
Change-Id: I3541e0c71bcfe2a2eae67c556cb758c06a591592
Reviewed-on: https://codereview.kdab.com/67839
Reviewed-by: Sérgio Martins <sergio@kdab.com >
2019-04-29 22:54:05 +02:00
Sergio Martins
e43b673858
Initial commit
2019-04-24 14:49:01 +01:00