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
qohossharekit.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 QOHOSSHAREKIT_H
5#define QOHOSSHAREKIT_H
6
7#include <QtCore/private/qohoscommon_p.h>
8#include <QtCore/qbytearray.h>
9#include <QtCore/qmap.h>
10#include <QtCore/qpoint.h>
11#include <QtCore/qsize.h>
12#include <QtCore/qvariant.h>
13#include <QtGui/qwindow.h>
14#include <memory>
15#include <qohosplugincore.h>
16#include <string>
17#include <vector>
18
20
21namespace QOhosShareKit {
22
23constexpr const char *mimeTextUriList = "text/uri-list";
24
39
45
46enum class SelectionMode
47{
50};
51
57
66
74
75std::shared_ptr<void> shareData(
76 QWindow *optInstanceMainWindow, const std::vector<SharedRecord> &recordsToShare,
77 ControllerOptions controllerOptions, std::function<void()> panelClosedCallback);
78
79}
80
81namespace QtOhos {
82
83template<>
85{
86 static constexpr const char *fullTypeName = "@kit.ShareKit.systemShare.SelectionMode";
87 static constexpr std::array<std::pair<QOhosShareKit::SelectionMode, const char *>, 2> enumeratorsNames = {{
90 }};
91};
92
93template<>
95{
96 static constexpr const char *fullTypeName = "@kit.ShareKit.systemShare.SharePreviewMode";
97 static constexpr std::array<std::pair<QOhosShareKit::SharePreviewMode, const char *>, 2> enumeratorsNames = {{
100 }};
101};
102
103template<>
105{
106 static constexpr const char *fullTypeName = "@kit.ShareKit.systemShare.ShareAbilityType";
107 static constexpr std::array<std::pair<QOhosShareKit::ShareAbilityType, const char *>, 5> enumeratorsNames = {{
108 {QOhosShareKit::ShareAbilityType::COPY_TO_PASTEBOARD, "COPY_TO_PASTEBOARD"},
109 {QOhosShareKit::ShareAbilityType::SAVE_TO_MEDIA_ASSET, "SAVE_TO_MEDIA_ASSET"},
110 {QOhosShareKit::ShareAbilityType::SAVE_AS_FILE, "SAVE_AS_FILE"},
112 {QOhosShareKit::ShareAbilityType::SAVE_TO_SUPERHUB, "SAVE_TO_SUPERHUB"},
113 }};
114};
115
116}
117
118QT_END_NAMESPACE
119
120#endif // QOHOSSHAREKIT_H
std::enable_if_t< qohosplugincore_h_detail::isQOhosOptional< QOhosInvokeResult< Func, T > >, QOhosInvokeResult< Func, T > > andThen(Func &&func) const
static void setInAppOnlyPasteboardShareOption(bool shareInAppOnly)
static void setMainWindowGeometryPersistencePolicy(WindowGeometryPersistencePolicy policy)
static QWindowProxyRegistry & instance()
virtual double getFontSizeScale()=0
static std::shared_ptr< QUiAbilityPeer > tryCastFromQAbilityPeerOrNull(std::shared_ptr< QAbilityPeer > qAbilityPeer)
double fontSizeScale()
constexpr const char * mimeTextUriList
std::shared_ptr< void > shareData(QWindow *optInstanceMainWindow, const std::vector< SharedRecord > &recordsToShare, ControllerOptions controllerOptions, std::function< void()> panelClosedCallback)
void showFileDialogAuthorization(QtOhos::InternalWindowId contextWinId, QString filePath, QOhosConsumer< bool > resultCallback)
Combined button and popup list for selecting options.
void invokeInJsThread(std::function< void(JsState &)> task)
QOhosQpaFunctions & getQOhosQpaFunctions()
bool isOhosNoUiChildMode()
QOhosAbilityOnContinueResult
void runInJsThreadAndWait(const std::function< void(JsState &)> &task)
void invokeInJsThreadAndWaitForContinue(std::function< void(JsState &, std::function< void()>)> &&task)
QOhosOptional< void > makeEmptyQOhosOptional()
QOhosOptional< SelectionMode > selectionMode
QOhosOptional< std::vector< ShareAbilityType > > excludedAbilities
QOhosOptional< ShareControllerAnchor > anchor
QOhosOptional< SharePreviewMode > previewMode
QOhosOptional< std::string > title
QOhosOptional< std::string > label
QOhosOptional< QVariantMap > extraData
QOhosOptional< std::string > filePath
QOhosOptional< QByteArray > thumbnail
QOhosOptional< std::string > description
QOhosOptional< std::string > content
QOhosOptional< std::string > thumbnailFilePath