From 91f9178220ac4e6877b93889c820fee9ffd3fb5f Mon Sep 17 00:00:00 2001 From: Sine Striker <trueful@163.com> Date: 周六, 27 4月 2024 21:42:44 +0800 Subject: [PATCH] update --- README.md | 42 ++++++++++++++++++++++++++++++++++++++---- 1 files changed, 38 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 87609c0..9268a82 100644 --- a/README.md +++ b/README.md @@ -85,7 +85,10 @@ ### Build & Install ```sh -cmake -B build \ +git clone --recursive https://github.com/stdware/qwindowkit +cd qwindowkit + +cmake -B build -S . \ -Dqmsetup_DIR=<dir> \ # Optional -DCMAKE_INSTALL_PREFIX=/path/install \ -G "Ninja Multi-Config" @@ -104,7 +107,7 @@ #### CMake Project ```sh -cmake -B build -DQWindowKit_DIR=/path/install/cmake/QWindowKit +cmake -B build -DQWindowKit_DIR=/path/install/lib/cmake/QWindowKit ``` ```cmake @@ -130,6 +133,21 @@ ## Quick Start ### Qt Widgets Application + +#### Initialization + +The following initialization should be done before any widget constructs. + +```cpp +#include <QtWidgets/QApplication> + +int main(int argc, char *argv[]) +{ + QGuiApplication::setAttribute(Qt::AA_DontCreateNativeWidgetSiblings) + + // ... +} +``` #### Setup Window Agent @@ -237,7 +255,8 @@ window.visible = true } WindowAgent { - // ... + id: windowAgent + // ... } } ``` @@ -250,6 +269,13 @@ + QWindowKit Internals [TODO] + [FramelessHelper Related](docs/framelesshelper-related.md) + + +### Vulnerabilities + ++ Once you have made the window frameless, it will not be able to switch back to the system border. ++ There must not be any internal child widget with `Qt::WA_NativeWindow` property enabled, otherwise the native features and display may be abnormal. Therefore, do not set any widget that has called `QWidget::winId()` or `QWidget::setAttribute(Qt::WA_NativeWindow)` as a descendant of a frameless window. + + If you really need to move widgets between different windows, make sure that the widget is not a top-level window and wrap it with a frameless container. ## TODO @@ -264,4 +290,12 @@ ## License -QWindowKit is licensed under the Apache 2.0 License. \ No newline at end of file +QWindowKit is licensed under the [Apache 2.0 License](./LICENSE). + +<!-- + +**You MUST keep a copyright notice of QWindowKit in a prominent place on your project, such as the README document and the About Dialog.** + +**You MUST NOT remove the license text from the header files and source files of QWindowKit.** + +--> -- Gitblit v1.9.1