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.
This commit is contained in:
Sergio Martins
2022-02-13 18:02:25 +00:00
parent ca3fe4070a
commit c6d95c42a8
149 changed files with 6099 additions and 5095 deletions

View File

@@ -8,22 +8,35 @@
"C_Cpp.default.compileCommands": "${workspaceFolder}/build-dev/compile_commands.json",
"C_Cpp.default.cStandard": "c17",
"files.trimTrailingWhitespace": true,
"editor.formatOnType": true,
"C_Cpp.autocompleteAddParentheses": true
"editor.formatOnSave": true,
"C_Cpp.autocompleteAddParentheses": true,
"clangd.arguments": [
"-header-insertion=never"
],
"todo-tree.tree.scanMode": "workspace only",
"todo-tree.tree.disableCompactFolders": false,
"todo-tree.tree.showBadges": true,
"todo-tree.general.tags": [
"BUG",
"HACK",
"FIXME",
"TODO",
"XXX",
"[ ]",
"[x]",
"TODOv2"
]
},
"launch": {
"version": "0.2.0",
"configurations": [
{
"name": "gdb-kddockwidgets_example",
"type": "cppdbg",
"type": "lldb",
"request": "launch",
"program": "${workspaceFolder}/build-dev/bin/kddockwidgets_example",
"args": [],
"cwd": "${workspaceFolder}",
"MIMode": "gdb",
"stopAtEntry": false,
"externalConsole": false
"cwd": "${workspaceFolder}"
},
{
"name": "gdb-kddockwidgets_minimal_example",
@@ -60,10 +73,12 @@
},
{
"name": "gdb-tst_docks",
"type": "cppdbg",
"type": "lldb",
"request": "launch",
"program": "${workspaceFolder}/build-dev/bin/tst_docks",
"args": [],
"args": [
"tst_simple2"
],
"cwd": "${workspaceFolder}",
"MIMode": "gdb",
"stopAtEntry": false,
@@ -155,4 +170,4 @@
}
]
}
}
}