selectioncontext.cpp 2.84 KB
Newer Older
1 2
/****************************************************************************
**
3 4
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
5 6 7 8 9 10 11
**
** This file is part of Qt Creator.
**
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
12 13 14
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
15
**
16 17
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
18 19 20 21 22
** General Public License version 3 as published by the Free Software
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
23 24 25 26 27
**
****************************************************************************/

#include "selectioncontext.h"

Marco Bubke's avatar
Marco Bubke committed
28 29
#include <qmlstate.h>

30 31 32
namespace QmlDesigner {


Tim Jenssen's avatar
Tim Jenssen committed
33
SelectionContext::SelectionContext() = default;
34

35
SelectionContext::SelectionContext(AbstractView *view) :
36
    m_view(view)
37
{
38 39 40 41 42 43 44 45 46 47 48 49
}

void SelectionContext::setTargetNode(const ModelNode &modelNode)
{
    m_targetNode = modelNode;
}

ModelNode SelectionContext::targetNode() const
{
    return m_targetNode;
}

50
bool SelectionContext::singleNodeIsSelected() const
51
{
52
    return view()->hasSingleSelectedModelNode();
53 54 55 56
}

bool SelectionContext::isInBaseState() const
{
57
    return view()->currentState().isBaseState();
58 59 60 61
}

ModelNode SelectionContext::currentSingleSelectedNode() const
{
62
    return view()->singleSelectedModelNode();
63 64
}

65 66 67 68 69
ModelNode SelectionContext::firstSelectedModelNode() const
{
    return view()->firstSelectedModelNode();
}

70 71
QList<ModelNode> SelectionContext::selectedModelNodes() const
{
72
    return view()->selectedModelNodes();
73 74
}

75 76 77 78 79
bool SelectionContext::hasSingleSelectedModelNode() const
{
    return view()->hasSelectedModelNodes();
}

80
AbstractView *SelectionContext::view() const
81
{
82
    return m_view.data();
83 84 85 86 87 88 89 90 91 92 93 94
}

void SelectionContext::setShowSelectionTools(bool show)
{
    m_showSelectionTools = show;
}

bool SelectionContext::showSelectionTools() const
{
    return m_showSelectionTools;
}

95
void SelectionContext::setScenePosition(const QPointF &postition)
96 97 98
{
    m_scenePosition = postition;
}
99

100
QPointF SelectionContext::scenePosition() const
101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
{
    return m_scenePosition;
}

void SelectionContext::setToggled(bool toggled)
{
    m_toggled = toggled;
}

bool SelectionContext::toggled() const
{
    return m_toggled;
}

bool SelectionContext::isValid() const
{
117
    return view() && view()->model();
118 119 120
}

} //QmlDesigner