Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qcocoamimetypes.mm
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
// Qt-Security score:significant reason:default
4
5
#
include
<
AppKit
/
AppKit
.
h
>
6
7
#
include
"qcocoamimetypes.h"
8
#
include
<
QtGui
/
qutimimeconverter
.
h
>
9
#
include
"qcocoahelpers.h"
10
#
include
<
QtGui
/
private
/
qcoregraphics_p
.
h
>
11
12
QT_BEGIN_NAMESPACE
13
14
using
namespace
Qt::StringLiterals;
15
16
class
QMacMimeTraditionalMacPlainText
:
public
QUtiMimeConverter
{
17
public
:
18
QString
utiForMime
(
const
QString &mime)
const
override
;
19
QString
mimeForUti
(
const
QString &uti)
const
override
;
20
QVariant
convertToMime
(
const
QString &mime,
const
QList<QByteArray> &data,
21
const
QString &uti)
const
override
;
22
QList
<
QByteArray
>
convertFromMime
(
const
QString &mime,
const
QVariant &data,
23
const
QString &uti)
const
override
;
24
};
25
26
QString
QMacMimeTraditionalMacPlainText
::
utiForMime
(
const
QString &mime)
const
27
{
28
if
(mime ==
"text/plain"_L1
)
29
return
"com.apple.traditional-mac-plain-text"_L1
;
30
return
QString();
31
}
32
33
QString
QMacMimeTraditionalMacPlainText
::
mimeForUti
(
const
QString &uti)
const
34
{
35
if
(uti ==
"com.apple.traditional-mac-plain-text"_L1
)
36
return
"text/plain"_L1
;
37
return
QString();
38
}
39
40
QVariant
41
QMacMimeTraditionalMacPlainText
::
convertToMime
(
const
QString &mimetype,
42
const
QList<QByteArray> &data,
43
const
QString &uti)
const
44
{
45
if
(data.count() > 1)
46
qWarning(
"QMacMimeTraditionalMacPlainText: Cannot handle multiple member data"
);
47
const
QByteArray &firstData = data.first();
48
QVariant ret;
49
if
(uti ==
"com.apple.traditional-mac-plain-text"_L1
) {
50
return
QString(QCFString(CFStringCreateWithBytes(kCFAllocatorDefault,
51
reinterpret_cast
<
const
UInt8 *>(firstData.constData()),
52
firstData.size(), CFStringGetSystemEncoding(),
false
)));
53
}
else
{
54
qWarning(
"QMime::convertToMime: unhandled mimetype: %s"
, qPrintable(mimetype));
55
}
56
return
ret;
57
}
58
59
QList
<
QByteArray
>
60
QMacMimeTraditionalMacPlainText
::
convertFromMime
(
const
QString &,
61
const
QVariant &data,
62
const
QString &uti)
const
63
{
64
QList<QByteArray> ret;
65
QString string = data.toString();
66
if
(uti ==
"com.apple.traditional-mac-plain-text"_L1
)
67
ret.append(string.toLatin1());
68
return
ret;
69
}
70
71
void
QCocoaMimeTypes::initializeMimeTypes()
72
{
73
new
QMacMimeTraditionalMacPlainText
;
74
}
75
76
QT_END_NAMESPACE
QMacMimeTraditionalMacPlainText
Definition
qcocoamimetypes.mm:16
QMacMimeTraditionalMacPlainText::convertFromMime
QList< QByteArray > convertFromMime(const QString &mime, const QVariant &data, const QString &uti) const override
Returns data converted from MIME type mime to Mac UTI uti.
Definition
qcocoamimetypes.mm:60
QMacMimeTraditionalMacPlainText::mimeForUti
QString mimeForUti(const QString &uti) const override
Returns the MIME type used for Mac UTI uti, or an empty string if this converter does not support con...
Definition
qcocoamimetypes.mm:33
QMacMimeTraditionalMacPlainText::convertToMime
QVariant convertToMime(const QString &mime, const QList< QByteArray > &data, const QString &uti) const override
Returns data converted from Mac UTI uti to MIME type mime.
Definition
qcocoamimetypes.mm:41
QMacMimeTraditionalMacPlainText::utiForMime
QString utiForMime(const QString &mime) const override
Returns the Mac UTI used for MIME type mime, or an empty string if this converter does not support co...
Definition
qcocoamimetypes.mm:26
qtbase
src
plugins
platforms
cocoa
qcocoamimetypes.mm
Generated on
for Qt by
1.18.0