Sergio Martins
6b98322d96
qtquick: Ported rubberband to the new architecture
2022-05-15 14:02:36 +01:00
Sergio Martins
35c7964365
qtquick: More porting of DockWidget_qtquick
...
Compiles now, but some things are commented out still.
2022-05-15 13:51:32 +01:00
Sergio Martins
cda924ac74
Ported RubberBand from QWidget to View
2022-05-14 10:36:53 +01:00
Sergio Martins
d35afdf81c
qtquick: Compile our qrc file too
...
Updated paths
2022-05-09 15:40:20 +01:00
Sergio Martins
5d8da8aab6
qtquick: Compile and return Separator in the framework factory
2022-05-09 14:41:21 +01:00
Waqar Ahmed
df00c13899
Add code coverage
2022-05-09 16:45:41 +05:00
Sergio Martins
eb42d9e3f0
workaround linking examples
2022-05-09 12:17:15 +01:00
Sergio Martins
8751216f62
qtquick: Added a FrameworkWidgetFactory too
...
The impl is dummy, but at least Config doesn't return a nullptr
one, meaning we can have more involved tests for QtQuick
2022-05-08 23:12:20 +01:00
Sergio Martins
cfeb59ee8f
qtquick: Move m_qmlEngine from Config to Platform_qtquick
...
As it's QtQuick specific it should be in the qtquick frontend folder.
2022-05-08 20:16:23 +01:00
Sergio Martins
bd675c09a1
Remove unused and old Widget_qwidget/Widget_quick
2022-05-08 14:00:00 +01:00
Sergio Martins
bacaa0127a
qtquick: Move remaining contents from old/ into views/
...
They are not ported yet, bet let's do things in batches so we have less
context switches.
2022-05-08 13:54:56 +01:00
Sergio Martins
76b1a394f2
qtquick: Ported the old DockWidgetQuick to the new architecture
...
Mostly anyway. Facing several blockers that need to be ported first,
for example DockWidget::setWidget() is still receiving QWidget
2022-05-08 13:27:37 +01:00
Sergio Martins
984bcd5f06
qtquick: Ported Frame view to the new architecture
2022-05-08 12:20:33 +01:00
Sergio Martins
16cca5a719
qtquick: Move LayoutSaverInstantiator to new location
2022-05-06 18:48:33 +01:00
Sergio Martins
9d5c7bfc53
qtquick: Ported TabWidget to the new architecture
2022-05-06 18:04:25 +01:00
Sergio Martins
d6f56169e1
qtquick: Ported TabBar to the new architecture
2022-05-03 22:01:47 +01:00
Sergio Martins
c0d9e3247b
qtquick: Ported TitleBar to the new architecture
2022-05-03 20:24:20 +01:00
Sergio Martins
b6d87d10c4
Add a TestHelpers_ file for each platform
...
So we don't have too much ifdefed stuff that's only for tests in
the main files.
2022-04-30 10:31:31 +01:00
Sergio Martins
9d52f40632
Make the qtquick files compile
...
They weren't being built.
Build-system is simplified for now.
2022-04-29 19:00:40 +01:00
Sergio Martins
3bb0c6a8d2
Move MDIArea to qtwidgets/ as it was never ported to QtQuick
...
Can be ported if needed
2022-04-25 20:16:25 +01:00
Sergio Martins
0f61ef63a2
Split DropArea and MDILayout into View/Controller
2022-04-25 18:50:41 +01:00
Sergio Martins
dc6d77e266
Fold MultiSplitter into DropArea
...
The separation was never very useful. There's was always only
one derived class, the DropArea. Merge the two.
2022-04-23 15:22:38 +01:00
Sergio Martins
4f5ffa2370
Add DropArea_qtwidgets stub
2022-04-23 14:42:03 +01:00
Sergio Martins
daa6afd14c
Move DropArea into controllers/
...
In preparation to split it into View/Controller.
This is just the move, no code changed yet.
Next will be the namespace change.
2022-04-23 11:46:11 +01:00
Sergio Martins
28754ec260
Fold DropAreaWithCentralFrame into DropArea
...
This separation was never useful
2022-04-23 00:17:20 +01:00
Sergio Martins
037140b980
Add KDDockWidgets::initPlatform()
...
Instead of using the static variable, which is initialized before
having QApplication.
Will allow us to remove the QTimer from Platform init
2022-04-11 00:55:28 +01:00
Sergio Martins
ec0e841bb8
Introduce qtwidgets/FrameworkWidgetFactory_qtwidgets
...
It doesn't scale to support all platforms with ifdefs, instead, use one
file per platform
2022-04-10 21:15:10 +01:00
Sergio Martins
d6fd54cec4
Por all usages of QWindop/windowHandle to KDDockWidgets::Window
...
Removes a lot of asQWidget() code and is also prepared for non-Qt
views.
2022-04-09 19:21:56 +01:00
Sergio Martins
5a8f176860
Add Window
...
A non-Qt abstraction around QWindow
2022-04-08 11:45:15 +01:00
Sergio Martins
95671f9d9a
Add Platform_qt, a baseclass for both Qt frontends
...
So we can share some code between QtQuick and QtWidgets
2022-04-07 23:48:40 +01:00
Waqar Ahmed
b573d3f0f7
Introduce ViewGuard: A weak ptr to View
2022-04-05 17:05:17 +05:00
Sergio Martins
4f0f82f6b4
Add ViewWrapper_qtquick stub
2022-04-04 21:52:41 +01:00
Sergio Martins
b76e45064f
Add View_qtquick stub
2022-04-04 19:06:17 +01:00
Waqar Ahmed
3c424474ee
Restore layout using nlohmann directly
2022-04-04 21:51:16 +05:00
Sergio Martins
2a379d8735
Add Platform_qtquick
...
CMake hacked for now. Not sure if we should allow building
both QtWidgets and QtQuick frontends at the same time
2022-04-04 16:30:57 +01:00
Sergio Martins
a36f85aae3
Add Platform and Platform_qtwidgets
...
So we can start removing QtWidgets vs QtQuick ifdefs.
Each "platform" will implement the differences
2022-04-04 16:21:35 +01:00
Sergio Martins
ac5cb637e7
Move DebugWindow to qtwidgets
...
As it's QtWidgets specific
2022-04-04 14:51:15 +01:00
Sergio Martins
e593233b8f
Renamed views_qtwidgets/ into qtwidgets/views/
...
As there will be some files that are specific to QtWidgets and
but aren't views
2022-04-03 23:51:02 +01:00
Sergio Martins
3cdd33f42f
Add Frame view interface
2022-04-02 23:57:48 +01:00
Waqar Ahmed
57dc7396ee
Allow using system nlohmann
2022-04-01 23:47:27 +05:00
Sergio Martins
ba08d0c131
Fix clang build due to -Wweak-vtables
...
That's to be fixed in KDBindings first
2022-03-25 11:30:04 +00:00
Sergio Martins
0c686c1339
Renamed MainWindowBase.h to MainWindow.h
...
As done for other controllers
2022-03-25 10:30:07 +00:00
Sergio Martins
27007184aa
Rename MainWindow.h to MainWindow_qtwidgets.h
...
Just like the other views.
2022-03-25 10:27:25 +00:00
Sergio Martins
7e2f448ae1
Moved MainWindowBase/MainWindow into controllers/view folder
...
This is just the move, not ported yet
2022-03-25 10:21:07 +00:00
Sergio Martins
90a9159748
Introduce ViewWrapper - a non-owning view
...
In many cases we need to access widgets that weren't created by
KDDW, in that case we have no View. Since all our APIs want to
deal in View and not in QWidget, we need a way to wrap stuff like
QWidget::window() and windowHandle()
All methods are unimplemented. Will only implement those that
are required/used.
2022-03-25 10:03:46 +00:00
Sergio Martins
e0e6d1fd3e
Merge both Logging_p.cpp into the same one
...
the multisplitter abstraction is no longer the way we want to
abstract the framework
2022-03-24 16:59:50 +00:00
Sergio Martins
c6d95c42a8
Split most widgets into a Controller and a View
...
Controllers don't have any GUI and don't depend on the frontend
technology.
Views are implemented in a specific GUI tech (QtWidgets, QtQuick, etc).
For now only QtWidgets work. There's still a lot to decouple.
This will make it easier to introduce non-Qt backends.
2022-03-24 16:05:37 +00:00
Sergio Martins
bef7aab7f6
Move kdbindings to src/3rdparty
2022-02-12 14:45:12 +00:00
Sergio Martins
d4bcc96f2f
Add KDBindings to 3rdparty
...
To replace Qt in the backend.
2022-02-12 14:45:12 +00:00
Sergio Martins
b5003f8fb8
Make sure the layouting builds standalone
...
Goal will be for it to be C++ only, eventually.
backend_temp_includes/ is to be removed, but required to build currently.
2022-02-12 14:45:12 +00:00