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
qwindowsmimeregistry.h
Go to the documentation of this file.
1// Copyright (C) 2016 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 QWINDOWSMIMEREGISTRY_H
5#define QWINDOWSMIMEREGISTRY_H
6
7
8#include <QtCore/qt_windows.h>
9
10#include <QtGui/qwindowsmimeconverter.h>
11#include <QtCore/qlist.h>
12#include <QtCore/qvariant.h>
13
15
16class QDebug;
17class QMimeData;
18
20{
22public:
24
27
28 QWindowsMimeConverter *converterToMime(const QString &mimeType, IDataObject *pDataObj) const;
29 QStringList allMimesForFormats(IDataObject *pDataObj) const;
30 QWindowsMimeConverter *converterFromMime(const FORMATETC &formatetc, const QMimeData *mimeData) const;
31 QList<FORMATETC> allFormatsForMime(const QMimeData *mimeData) const;
32
33 // Convenience.
34 QVariant convertToMime(const QStringList &mimeTypes, IDataObject *pDataObj, QMetaType preferredType,
35 QString *format = nullptr) const;
36
37 void registerMime(QWindowsMimeConverter *mime);
38 void unregisterMime(QWindowsMimeConverter *mime) { m_mimes.removeOne(mime); }
39
40 static int registerMimeType(const QString &mime);
41
42 static QString clipboardFormatName(int cf);
43
44private:
45 void ensureInitialized() const;
46
47 mutable QList<QWindowsMimeConverter *> m_mimes;
48 mutable int m_internalMimeCount = 0;
49};
50
51#ifndef QT_NO_DEBUG_STREAM
52QDebug operator<<(QDebug, const FORMATETC &);
53QDebug operator<<(QDebug d, IDataObject *);
54#endif
55
56QT_END_NAMESPACE
57
58#endif // QWINDOWSMIMEREGISTRY_H
TouchWindowTouchTypes touchWindowTouchType() const override
void setWindowActivationBehavior(WindowActivationBehavior behavior) override
void populateLightSystemPalette(QPalette &palette) const override
void registerMime(QWindowsMimeConverter *mime) override
int registerMimeType(const QString &mime) override
bool isTabletMode() const override
void setAsyncExpose(bool value) override
bool setWinTabEnabled(bool enabled) override
DarkModeHandling darkModeHandling() const override
HWND createMessageWindow(const QString &classNameTemplate, const QString &windowName, QFunctionPointer eventProc=nullptr) const override
QVariant gpu() const override
WindowActivationBehavior windowActivationBehavior() const override
void setHasBorderInFullScreenDefault(bool border) override
QVariant gpuList() const override
bool isWinTabEnabled() const override
void setTouchWindowTouchType(TouchWindowTouchTypes type) override
bool asyncExpose() const override
void unregisterMime(QWindowsMimeConverter *mime) override
void setDarkModeHandling(DarkModeHandling handling) override
Singleton container for all relevant information.
bool asyncExpose() const
QWindowsTabletSupport * tabletSupport() const
void setAsyncExpose(bool value)
QWindowsMimeRegistry & mimeConverter() const
static QWindowsContext * instance()
Manages the list of QWindowsMimeConverter instances.
static int registerMimeType(const QString &mime)
Registers the MIME type mime, and returns an ID number identifying the format on Windows.
static QString clipboardFormatName(int cf)
QVariant convertToMime(const QStringList &mimeTypes, IDataObject *pDataObj, QMetaType preferredType, QString *format=nullptr) const
QWindowsMimeConverter * converterFromMime(const FORMATETC &formatetc, const QMimeData *mimeData) const
void registerMime(QWindowsMimeConverter *mime)
QStringList allMimesForFormats(IDataObject *pDataObj) const
QList< FORMATETC > allFormatsForMime(const QMimeData *mimeData) const
QWindowsMimeConverter * converterToMime(const QString &mimeType, IDataObject *pDataObj) const
void unregisterMime(QWindowsMimeConverter *mime)
Raster or OpenGL Window.
static void setHasBorderInFullScreenDefault(bool border)
static GpuDescription detect()
QVariant toVariant() const