File: streamoperators.cpp

package info (click to toggle)
gammaray 3.1.0%2Bds-3
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 24,796 kB
  • sloc: cpp: 109,174; ansic: 2,156; sh: 336; python: 274; yacc: 90; lex: 82; xml: 61; makefile: 28; javascript: 9; ruby: 5
file content (65 lines) | stat: -rw-r--r-- 2,399 bytes parent folder | download
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
/*
  streamoperators.cpp

  This file is part of GammaRay, the Qt application inspection and manipulation tool.

  SPDX-FileCopyrightText: 2013 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
  Author: Volker Krause <volker.krause@kdab.com>

  SPDX-License-Identifier: GPL-2.0-or-later

  Contact KDAB at <info@kdab.com> for commercial licensing options.
*/

#include "streamoperators.h"
#include "metatypedeclarations.h"
#include "variantwrapper.h"
#include "sourcelocation.h"
#include "qmetaobjectvalidatorresult.h"
#include "objectid.h"
#include "enumdefinition.h"
#include "enumvalue.h"
#include "propertymodel.h"

#include <QMetaMethod>

using namespace GammaRay;

QT_BEGIN_NAMESPACE
GAMMARAY_ENUM_STREAM_OPERATORS(QMetaMethod::Access)
GAMMARAY_ENUM_STREAM_OPERATORS(QMetaMethod::MethodType)
GAMMARAY_ENUM_STREAM_OPERATORS(Qt::ConnectionType)
GAMMARAY_ENUM_STREAM_OPERATORS(Qt::CaseSensitivity)
GAMMARAY_ENUM_STREAM_OPERATORS(GammaRay::QMetaObjectValidatorResult::Results)
GAMMARAY_ENUM_STREAM_OPERATORS(GammaRay::PropertyModel::PropertyFlags)
QT_END_NAMESPACE

void StreamOperators::registerOperators()
{
    StreamOperators::registerOperators<QMetaMethod::Access>();
    StreamOperators::registerOperators<QMetaMethod::MethodType>();
    StreamOperators::registerOperators<Qt::ConnectionType>();
    StreamOperators::registerOperators<Qt::CaseSensitivity>();
    StreamOperators::registerOperators<QHash<int, QByteArray>>();

    StreamOperators::registerOperators<ObjectId>();
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
    // This is needed so QVariant based comparison works (ie: QAIM::match)
    QMetaType::registerComparators<ObjectId>();
#endif

    StreamOperators::registerOperators<ObjectIds>();
#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0))
    // This is needed so QVariant based comparison works (ie: QAIM::match)
    QMetaType::registerComparators<ObjectIds>();
#endif

    StreamOperators::registerOperators<GammaRay::VariantWrapper>();
    StreamOperators::registerOperators<GammaRay::SourceLocation>();
    StreamOperators::registerOperators<QVector<SourceLocation>>();
    StreamOperators::registerOperators<GammaRay::QMetaObjectValidatorResult::Results>();
    StreamOperators::registerOperators<GammaRay::PropertyModel::PropertyFlags>();

    StreamOperators::registerOperators<EnumDefinition>();
    StreamOperators::registerOperators<EnumValue>();
}