Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
window.h
Go to the documentation of this file.
1// Copyright (C) 2025 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QARKUI__WINDOW_H
5#define QARKUI__WINDOW_H
6
7#include <QtCore/private/qnapi_p.h>
8#include <QtCore/private/qohoscommon_p.h>
9#include <QtCore/qglobal.h>
10#include <QtCore/qrect.h>
11#include <qohosdisplayinfo.h>
12#include <qohosplugincore.h>
13#include <qohosutils.h>
14#include <string>
15#include <vector>
16
17QT_BEGIN_NAMESPACE
18
19namespace QArkUi {
20
21using JsWindowId = QtOhos::TypedId<double, struct JsWindowIdTag>;
22
30
32
34{
35public:
36 explicit JsWindowRef(JsWindowId windowId, QNapi::Object jsWindow);
37
38 JsWindowRef(const JsWindowRef &) = delete;
39 JsWindowRef &operator=(const JsWindowRef &) = delete;
40
43
44 bool isFocused() const;
45 bool isWindowShown() const;
46 JsWindowId id() const;
47
48 template<typename Result = QNapi::Value>
49 Result eval(const std::string &expr, const std::vector<QNapi::ValueWrapper> &exprArgs = {}) const;
50
52 const std::string &expr, const std::vector<QNapi::ValueWrapper> &exprArgs = {}) const;
53
55
56private:
57 JsWindowId m_jsWindowId;
58 QNapi::Reference<QNapi::Object> m_jsWindow;
59};
60
61template<typename Result>
62Result JsWindowRef::eval(const std::string &expr, const std::vector<QNapi::ValueWrapper> &exprArgs) const
63{
64 return m_jsWindow.eval<Result>(expr, exprArgs);
65}
66
68 const std::string &expr, const std::vector<QNapi::ValueWrapper> &exprArgs) const
69{
70 return m_jsWindow.evalToPromiseOrRejectOnThrow(expr, exprArgs);
71}
72
73}
74
75QT_END_NAMESPACE
76
77#endif
QNapi::Object jsObject()
Definition window.cpp:77
JsWindowRef(JsWindowRef &&)=delete
bool isFocused() const
Definition window.cpp:65
JsWindowRef(const JsWindowRef &)=delete
JsWindowRef & operator=(JsWindowRef &&)=delete
JsWindowRef(JsWindowId windowId, QNapi::Object jsWindow)
Definition window.cpp:46
Result eval(const std::string &expr, const std::vector< QNapi::ValueWrapper > &exprArgs={}) const
Definition window.h:62
bool isWindowShown() const
Definition window.cpp:52
JsWindowId id() const
Definition window.cpp:72
JsWindowRef & operator=(const JsWindowRef &)=delete
QNapi::Promise evalToPromiseOrRejectOnThrow(const std::string &expr, const std::vector< QNapi::ValueWrapper > &exprArgs={}) const
Definition window.h:67
QOhosOptional< WindowProperties > tryGetWindowProperties(JsWindowId jsWindowId)
Definition window.cpp:27
Combined button and popup list for selecting options.
std::nullopt_t makeEmptyQOhosOptional()
QOhosOptional< QOhosDisplayInfo::JsDisplayId > displayId
Definition window.h:28