Commit Graph

3497 Commits

Author SHA1 Message Date
Waqar Ahmed
46b4e50a23 Save layout directly using nlohmann 2022-04-04 12:28:06 +05: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
852ff762c5 Rename views_qtquick/ qtquick/views/ 2022-04-03 23:44:31 +01:00
Sergio Martins
c12b0c161f Port layoutlinter away from direct QtWidget dependencies 2022-04-03 23:43:02 +01:00
Sergio Martins
84fb080d13 Remove more QWidget dependencies 2022-04-03 23:40:01 +01:00
Sergio Martins
81e5d14e4f Cleanup DropArea and base classes re receiving QWidget
They receive View now
2022-04-03 23:19:53 +01:00
Sergio Martins
ad1b77f79e Add MainWindow view interface 2022-04-03 22:25:57 +01:00
Sergio Martins
6cbf7247ce Fix crash, was mis-ported 2022-04-03 21:29:04 +01:00
Sergio Martins
d5700d94e6 MainWindow controller now receives View parent instead of QWidget 2022-04-03 21:23:03 +01:00
Sergio Martins
e9f287e2d7 More porting away from _qtwidgets 2022-04-03 21:09:37 +01:00
Sergio Martins
79f9f72ef4 DockWidget: decouple more from QtWidgets 2022-04-03 20:06:31 +01:00
Sergio Martins
a70b419c34 Remove one usage of DockWidget_qtwidgets 2022-04-03 00:23:39 +01:00
Sergio Martins
3cdd33f42f Add Frame view interface 2022-04-02 23:57:48 +01:00
Sergio Martins
2f0cbf83e9 Added SideBar view interface 2022-04-02 22:47:26 +01:00
Sergio Martins
f2aaf65674 Added TabBar view interface
Removes some dependencies to QtWidget
2022-04-02 22:38:33 +01:00
Sergio Martins
5681a5a231 Add a Stack view interface
So that stack controller doesn't depend on QtWidgets
2022-04-02 19:36:25 +01:00
Sergio Martins
aab3de29e1 Add a title bar interface, so we don't need to depend on TitleBar_qtwidgets 2022-04-02 18:50:35 +01:00
Sergio Martins
08d84337e7 Remove some unneeded includes 2022-04-02 15:45:06 +01:00
Sergio Martins
9b18ffb05c Port away from asQWidget()->screen(), use screen() directly 2022-04-02 15:45:00 +01:00
Sergio Martins
dcdd9333d4 Remove a bunch of asQWidget() calls 2022-04-02 15:34:38 +01:00
Waqar Ahmed
7bb363d3b2 Start moving layout saving to use nlohmann without involving Qt 2022-04-02 00:41:15 +05:00
Waqar Ahmed
c8127c1b36 Add QRect, QSize, QStringList nlohmann helpers 2022-04-02 00:40:20 +05:00
Waqar Ahmed
57dc7396ee Allow using system nlohmann 2022-04-01 23:47:27 +05:00
Waqar Ahmed
c781e82c37 Move nlohmann_qt_helpers.h to src 2022-04-01 23:45:15 +05:00
Waqar Ahmed
ea1fbf021d Move nlohmann into a subdirectory of 3rdparty
This helps us to use system one.
2022-04-01 23:44:35 +05:00
Sergio Martins
a754743014 More porting away from using Frame_qtwidgets directly in backend 2022-03-31 23:40:20 +01:00
Sergio Martins
c95d857483 Port away from casting to Frame_qtwidgets in most places
it's generic now
2022-03-31 23:17:27 +01:00
Sergio Martins
8ea346ca4a Added View::asFrameController() 2022-03-31 18:39:52 +01:00
Sergio Martins
1b3f90d73f Port away from casting to FloatingWindow_qtwidgets in the backend
Backend shouldn't know _qtwidget types exist
2022-03-31 18:36:40 +01:00
Sergio Martins
6687485e4c Introduce View::handle() and View::equals()
So we can compare two windows without calling asQWidget().
2022-03-31 17:34:37 +01:00
Sergio Martins
79abef21a5 Introduce View::parentView()
Similar to QWidget::parentWidget(), but not tied to QWidgets.

Allows to start removing some asQWidget() calls, as seen in Frame::floatingWindow(),
did it for POC.

Still need to find a generic way to compare 2 QWidget pointers
2022-03-31 16:47:37 +01:00
Sergio Martins
3fe1a8e79f Add View::asFloatingWindowController() 2022-03-31 16:27:37 +01:00
Sergio Martins
076125e0cf Add Controller::is() 2022-03-31 12:37:07 +01:00
Sergio Martins
0d8479b206 Add Controller::type() 2022-03-31 12:28:34 +01:00
Sergio Martins
cb2930f0e9 Move Type enum out of View, into KDDockWidgets namespace 2022-03-31 11:45:28 +01:00
Sergio Martins
2574e91634 Add convenience View::is(Type) 2022-03-30 23:09:08 +01:00
Sergio Martins
17cac581b8 Don't access side bar controller before it's initialized
As detected by UBSAN
2022-03-30 19:57:59 +01:00
Sergio Martins
b6bc3810bd tests: Remove unneeded deletion of top-level windows
They are deleted automatically nowadays
2022-03-30 19:36:17 +01:00
Sergio Martins
15cb93ed43 Port away from Controller::window() returning a QWidget
It now returns a ViewWrapper, which is agnostic to QtWidgets
2022-03-30 19:30:18 +01:00
Sergio Martins
9d8d6f33ef Update ChangeLog with 3rdparty JSON library dependency 2022-03-30 11:51:31 +01:00
Sergio Martins
15601fc3c9 Split MainWindow into view/controller 2022-03-30 11:51:31 +01:00
Waqar Ahmed
eb3ad6b5a3 Use nlohmann for layout save/restore instead of QJson* 2022-03-30 11:51:26 +01:00
Waqar Ahmed
2434455d41 Add nlohmann helpers for qt 2022-03-30 11:51:13 +01:00
Waqar Ahmed
62fe37be9f Add nlohmann::json 2022-03-30 11:50:45 +01:00
Sergio Martins
f2957e35d5 Moved MainWindow into Controllers namespace
All renamings and movings are done, next step is to make the controller
a proper controller, and same for the view.
2022-03-25 11:30:40 +00: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
65a6201121 Fix unused private field warning on clang
More methods to be implemented soon, but let's have at least 1
now to get rid of the warning
2022-03-25 11:29:49 +00:00
Sergio Martins
9fba1e9799 Rename Controller::DockWidgetBase to Controller::DockWidget
As done for other controllers
2022-03-25 10:53:02 +00:00
Sergio Martins
8656108e81 Renamed MainWindowBase to MainWindow
As done for other controllers
2022-03-25 10:47:20 +00:00
Sergio Martins
63b5109113 Rename Views::MainWindow to Views::MainWindow_qtwidgets
As done for other views
2022-03-25 10:41:46 +00:00