source: trunk/src/xmlpatterns/schema/qxsdvalidatedxmlnodemodel.cpp@ 651

Last change on this file since 651 was 561, checked in by Dmitry A. Kuminov, 15 years ago

trunk: Merged in qt 4.6.1 sources.

  • Property svn:eol-style set to native
File size: 7.1 KB
Line 
1/****************************************************************************
2**
3** Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies).
4** All rights reserved.
5** Contact: Nokia Corporation ([email protected])
6**
7** This file is part of the QtXmlPatterns module of the Qt Toolkit.
8**
9** $QT_BEGIN_LICENSE:LGPL$
10** Commercial Usage
11** Licensees holding valid Qt Commercial licenses may use this file in
12** accordance with the Qt Commercial License Agreement provided with the
13** Software or, alternatively, in accordance with the terms contained in
14** a written agreement between you and Nokia.
15**
16** GNU Lesser General Public License Usage
17** Alternatively, this file may be used under the terms of the GNU Lesser
18** General Public License version 2.1 as published by the Free Software
19** Foundation and appearing in the file LICENSE.LGPL included in the
20** packaging of this file. Please review the following information to
21** ensure the GNU Lesser General Public License version 2.1 requirements
22** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
23**
24** In addition, as a special exception, Nokia gives you certain additional
25** rights. These rights are described in the Nokia Qt LGPL Exception
26** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
27**
28** GNU General Public License Usage
29** Alternatively, this file may be used under the terms of the GNU
30** General Public License version 3.0 as published by the Free Software
31** Foundation and appearing in the file LICENSE.GPL included in the
32** packaging of this file. Please review the following information to
33** ensure the GNU General Public License version 3.0 requirements will be
34** met: http://www.gnu.org/copyleft/gpl.html.
35**
36** If you have questions regarding the use of this file, please contact
37** Nokia at [email protected].
38** $QT_END_LICENSE$
39**
40****************************************************************************/
41
42#include "qxsdvalidatedxmlnodemodel_p.h"
43
44#include <QtCore/QUrl>
45#include <QtCore/QVariant>
46#include <QtCore/QVector>
47
48QT_BEGIN_NAMESPACE
49
50using namespace QPatternist;
51
52XsdValidatedXmlNodeModel::XsdValidatedXmlNodeModel(const QAbstractXmlNodeModel *model)
53 : m_internalModel(model)
54{
55}
56
57XsdValidatedXmlNodeModel::~XsdValidatedXmlNodeModel()
58{
59}
60
61QUrl XsdValidatedXmlNodeModel::baseUri(const QXmlNodeModelIndex &index) const
62{
63 return m_internalModel->baseUri(index);
64}
65
66QUrl XsdValidatedXmlNodeModel::documentUri(const QXmlNodeModelIndex &index) const
67{
68 return m_internalModel->documentUri(index);
69}
70
71QXmlNodeModelIndex::NodeKind XsdValidatedXmlNodeModel::kind(const QXmlNodeModelIndex &index) const
72{
73 return m_internalModel->kind(index);
74}
75
76QXmlNodeModelIndex::DocumentOrder XsdValidatedXmlNodeModel::compareOrder(const QXmlNodeModelIndex &index, const QXmlNodeModelIndex &otherIndex) const
77{
78 return m_internalModel->compareOrder(index, otherIndex);
79}
80
81QXmlNodeModelIndex XsdValidatedXmlNodeModel::root(const QXmlNodeModelIndex &index) const
82{
83 return m_internalModel->root(index);
84}
85
86QXmlName XsdValidatedXmlNodeModel::name(const QXmlNodeModelIndex &index) const
87{
88 return m_internalModel->name(index);
89}
90
91QString XsdValidatedXmlNodeModel::stringValue(const QXmlNodeModelIndex &index) const
92{
93 return m_internalModel->stringValue(index);
94}
95
96QVariant XsdValidatedXmlNodeModel::typedValue(const QXmlNodeModelIndex &index) const
97{
98 return m_internalModel->typedValue(index);
99}
100
101QExplicitlySharedDataPointer<QAbstractXmlForwardIterator<QXmlNodeModelIndex> > XsdValidatedXmlNodeModel::iterate(const QXmlNodeModelIndex &index, QXmlNodeModelIndex::Axis axis) const
102{
103 return m_internalModel->iterate(index, axis);
104}
105
106QPatternist::ItemIteratorPtr XsdValidatedXmlNodeModel::sequencedTypedValue(const QXmlNodeModelIndex &index) const
107{
108 return m_internalModel->sequencedTypedValue(index);
109}
110
111QPatternist::ItemTypePtr XsdValidatedXmlNodeModel::type(const QXmlNodeModelIndex &index) const
112{
113 return m_internalModel->type(index);
114}
115
116QXmlName::NamespaceCode XsdValidatedXmlNodeModel::namespaceForPrefix(const QXmlNodeModelIndex &index, const QXmlName::PrefixCode prefix) const
117{
118 return m_internalModel->namespaceForPrefix(index, prefix);
119}
120
121bool XsdValidatedXmlNodeModel::isDeepEqual(const QXmlNodeModelIndex &index, const QXmlNodeModelIndex &otherIndex) const
122{
123 return m_internalModel->isDeepEqual(index, otherIndex);
124}
125
126void XsdValidatedXmlNodeModel::sendNamespaces(const QXmlNodeModelIndex &index, QAbstractXmlReceiver *const receiver) const
127{
128 m_internalModel->sendNamespaces(index, receiver);
129}
130
131QVector<QXmlName> XsdValidatedXmlNodeModel::namespaceBindings(const QXmlNodeModelIndex &index) const
132{
133 return m_internalModel->namespaceBindings(index);
134}
135
136QXmlNodeModelIndex XsdValidatedXmlNodeModel::elementById(const QXmlName &name) const
137{
138 return m_internalModel->elementById(name);
139}
140
141QVector<QXmlNodeModelIndex> XsdValidatedXmlNodeModel::nodesByIdref(const QXmlName &name) const
142{
143 return m_internalModel->nodesByIdref(name);
144}
145
146void XsdValidatedXmlNodeModel::copyNodeTo(const QXmlNodeModelIndex &index, QAbstractXmlReceiver *const receiver, const NodeCopySettings &settings) const
147{
148 return m_internalModel->copyNodeTo(index, receiver, settings);
149}
150
151QXmlNodeModelIndex XsdValidatedXmlNodeModel::nextFromSimpleAxis(SimpleAxis axis, const QXmlNodeModelIndex &origin) const
152{
153 return m_internalModel->nextFromSimpleAxis(axis, origin);
154}
155
156QVector<QXmlNodeModelIndex> XsdValidatedXmlNodeModel::attributes(const QXmlNodeModelIndex &index) const
157{
158 return m_internalModel->attributes(index);
159}
160
161void XsdValidatedXmlNodeModel::setAssignedElement(const QXmlNodeModelIndex &index, const XsdElement::Ptr &element)
162{
163 m_assignedElements.insert(index, element);
164}
165
166XsdElement::Ptr XsdValidatedXmlNodeModel::assignedElement(const QXmlNodeModelIndex &index) const
167{
168 if (m_assignedElements.contains(index))
169 return m_assignedElements.value(index);
170 else
171 return XsdElement::Ptr();
172}
173
174void XsdValidatedXmlNodeModel::setAssignedAttribute(const QXmlNodeModelIndex &index, const XsdAttribute::Ptr &attribute)
175{
176 m_assignedAttributes.insert(index, attribute);
177}
178
179XsdAttribute::Ptr XsdValidatedXmlNodeModel::assignedAttribute(const QXmlNodeModelIndex &index) const
180{
181 if (m_assignedAttributes.contains(index))
182 return m_assignedAttributes.value(index);
183 else
184 return XsdAttribute::Ptr();
185}
186
187void XsdValidatedXmlNodeModel::setAssignedType(const QXmlNodeModelIndex &index, const SchemaType::Ptr &type)
188{
189 m_assignedTypes.insert(index, type);
190}
191
192SchemaType::Ptr XsdValidatedXmlNodeModel::assignedType(const QXmlNodeModelIndex &index) const
193{
194 if (m_assignedTypes.contains(index))
195 return m_assignedTypes.value(index);
196 else
197 return SchemaType::Ptr();
198}
199
200void XsdValidatedXmlNodeModel::addIdIdRefBinding(const QString &id, const NamedSchemaComponent::Ptr &binding)
201{
202 m_idIdRefBindings[id].insert(binding);
203}
204
205QStringList XsdValidatedXmlNodeModel::idIdRefBindingIds() const
206{
207 return m_idIdRefBindings.keys();
208}
209
210QSet<NamedSchemaComponent::Ptr> XsdValidatedXmlNodeModel::idIdRefBindings(const QString &id) const
211{
212 return m_idIdRefBindings.value(id);
213}
214
215QT_END_NAMESPACE
Note: See TracBrowser for help on using the repository browser.