blob: eac0961393a643b43f8d9c6d311321f162488178 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
// Copyright (C) 2020 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
#include "view3dactioncommand.h"
#include <QDebug>
#include <QDataStream>
namespace QmlDesigner {
View3DActionCommand::View3DActionCommand(View3DActionType type, const QVariant &value)
: m_type(type)
, m_value(value)
{
}
bool View3DActionCommand::isEnabled() const
{
return m_value.toBool();
}
QVariant View3DActionCommand::value() const
{
return m_value;
}
View3DActionType View3DActionCommand::type() const
{
return m_type;
}
int View3DActionCommand::position() const
{
bool ok = false;
int result = m_value.toInt(&ok);
if (!ok) {
qWarning() << "View3DActionCommand: returning a position that is not int; command type = "
<< m_type;
}
return result;
}
QDataStream &operator<<(QDataStream &out, const View3DActionCommand &command)
{
out << command.value();
out << command.type();
return out;
}
QDataStream &operator>>(QDataStream &in, View3DActionCommand &command)
{
in >> command.m_value;
in >> command.m_type;
return in;
}
QDebug operator<<(QDebug debug, const View3DActionCommand &command)
{
return debug.nospace() << "View3DActionCommand(type: "
<< command.m_type << ","
<< command.m_value << ")\n";
}
template<typename Enumeration>
constexpr std::underlying_type_t<Enumeration> to_underlying(Enumeration enumeration) noexcept
{
static_assert(std::is_enum_v<Enumeration>, "to_underlying expect an enumeration");
return static_cast<std::underlying_type_t<Enumeration>>(enumeration);
}
QDebug operator<<(QDebug debug, View3DActionType type)
{
return debug.nospace() << to_underlying(type);
}
} // namespace QmlDesigner
|