Skip to content

Commit

Permalink
update Readme
Browse files Browse the repository at this point in the history
  • Loading branch information
jacquetc committed Mar 7, 2024
1 parent cf2098d commit bc42276
Showing 1 changed file with 14 additions and 10 deletions.
24 changes: 14 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
+ [Manually](#manually)
* [Using Qleany](#using-qleany)
+ [For QtWidgets GUI](#for-qtwidgets-gui)
+ [For QML GUI](#for-qml-gui)
+ [For QtQuick GUI](#for-qtquick-gui)
+ [For multiple Uis](#for-multiple-uis)
+ [Integration with Qt Design Studio projects](#integration-with-qt-design-studio-projects)
+ [Other Fronts](#other-fronts)
Expand Down Expand Up @@ -154,23 +154,27 @@ Note: I enjoin you to use sccache if you have a slow computer. It will speed up

### For QtWidgets GUI

A basic QtWidgets GUI can be generated by Qleany. You only have to fill `front_ends` in the `qleany.yaml` file. Read "Front end Configuration" section below for more details.
A minimal QtWidgets GUI can be generated by Qleany. You only have to fill `front_ends` in the `qleany.yaml` file. Read "Front end Configuration" section below for more details.

If you already have a QtWidgets GUI, you can craete a blank GUI in a sub-folder next to your real one. Then, swap the generated files with your real ones.

Note: You can use the `examples/simple/src/gui/desktop_application` or `examples/front_ends` as references of what is running fine.

11. Create an UI project or fill the offered QtWidgets UI, not at the root of the project, but in a dedicated sub-folder, like with did with `examples/simple/src/gui/desktop_application`.
12. You can now start to implement your GUI and use cases. A GUI made with QWidgets will only use the interactors and models in presenter. Refer to the example for guidance at `examples/simple/src/gui/desktop_application/main.cpp`
11. Your QtWidgets must be, not at the root of the project, but in a dedicated sub-folder, like with did with `examples/simple/src/gui/desktop_application`.
12. You can now start to implement your GUI and use cases. A GUI made with QWidgets will only use `interactor` for commands/queries and signals. Also, it will use models from `presenter`. Refer to the example for guidance at `examples/front_ends/src/gui/qt_widgets_application/main.cpp`

### For QtQuick GUI

### For QML GUI
A minimal QML GUI can be generated by Qleany. You only have to fill `front_ends` in the `qleany.yaml` file. Read "Front end Configuration" section below for more details.

A basic QML GUI can be generated by Qleany. You only have to fill `front_ends` in the `qleany.yaml` file. Read "Front end Configuration" section below for more details.
If you already have a QtQuick GUI, you can craete a blank GUI in a sub-folder next to your real one. Then, swap the generated files with your real ones.

Note: For now, Qleany does not generate the GUI for QML. You can use the `examples/simple/src/gui/qml_application` as a reference of what is running fine.
*Note*: You can use the `examples/front_ends/src/gui/qt_quick_application` as a reference of what is running fine.

*Note*: For now, the QML file generation is tailor-made to be used after a project is created using Qt Design Studio, but only subltle changes are needed to use it with a project created manually. You can use the `examples/simple/src/gui/qml_application` as a reference of what is running fine, this project uses Qt Design Studio's generated CMakeLists.txt. At the minimum, you only have to include the generated `realqmlmodules.cmake` file in your project's CMakeLists.txt file and mofify your main.cpp to register the other libraries.
11. Your QML GUI must be, not at the root of the project, but in a dedicated sub-folder, like with did with `examples/simple/src/gui/qml_application`.
12. You can now start to implement your GUI and use cases.

11. Create a QML project using Qt Design Studio, not at the root of the project, but in a dedicated sub-folder, like with did with `examples/simple/src/gui/qml_application`.
12. You can now start to implement your GUI and use cases. A GUI made with QML will use **not** the interactors and models directly from the interactor and presenter libraries. Wrappers around them all are generated in the QML `real_imports` folder in the QML folder to be made available from QML. Also, QML mocks are generated in `mock_imports`, to be filled by the developer. Refer to the example for guidance at `examples/simple/src/gui/qml_application/src/main.cpp` and `examples/simple/src/gui/qml_application/CMakelists.txt`
A GUI made with QML will **not** use `interactor` and `presenter`. Wrappers around models, signals, commands and queries all are generated in the QML `real_imports` folder in the QML folder to be made available from QML. Also, QML mocks are generated in `mock_imports`, to be filled by the developer. Refer to the example for guidance at `examples/front_ends/src/gui/qt_quick_application/main.cpp` and `examples/front_ends/src/gui/qt_quick__application/CMakelists.txt`

### For multiple Uis

Expand Down

0 comments on commit bc42276

Please sign in to comment.