Fix reset of properties with default value
[qt:qtmodeling.git] / src / uml / qobjects / qumlpackageobject.cpp
1 /****************************************************************************
2 **
3 ** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org>
4 ** Contact: http://www.qt-project.org/legal
5 **
6 ** This file is part of the QtUml module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and Digia.  For licensing terms and
14 ** conditions see http://qt.digia.com/licensing.  For further information
15 ** use the contact form at http://qt.digia.com/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 2.1 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL included in the
21 ** packaging of this file.  Please review the following information to
22 ** ensure the GNU Lesser General Public License version 2.1 requirements
23 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
24 **
25 ** In addition, as a special exception, Digia gives you certain additional
26 ** rights.  These rights are described in the Digia Qt LGPL Exception
27 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
28 **
29 ** GNU General Public License Usage
30 ** Alternatively, this file may be used under the terms of the GNU
31 ** General Public License version 3.0 as published by the Free Software
32 ** Foundation and appearing in the file LICENSE.GPL included in the
33 ** packaging of this file.  Please review the following information to
34 ** ensure the GNU General Public License version 3.0 requirements will be
35 ** met: http://www.gnu.org/copyleft/gpl.html.
36 **
37 **
38 ** $QT_END_LICENSE$
39 **
40 ****************************************************************************/
41 #include "qumlpackageobject_p.h"
42 #include "private/qmodelingobject_p.h"
43
44 #include <QtUml/QUmlPackage>
45 #include <QtUml/QUmlComment>
46 #include <QtUml/QUmlConstraint>
47 #include <QtUml/QUmlDependency>
48 #include <QtUml/QUmlElement>
49 #include <QtUml/QUmlElementImport>
50 #include <QtUml/QUmlNamedElement>
51 #include <QtUml/QUmlNamespace>
52 #include <QtUml/QUmlPackageableElement>
53 #include <QtUml/QUmlPackageImport>
54 #include <QtUml/QUmlPackageMerge>
55 #include <QtUml/QUmlParameterableElement>
56 #include <QtUml/QUmlProfile>
57 #include <QtUml/QUmlProfileApplication>
58 #include <QtUml/QUmlStereotype>
59 #include <QtUml/QUmlStringExpression>
60 #include <QtUml/QUmlTemplateBinding>
61 #include <QtUml/QUmlTemplateParameter>
62 #include <QtUml/QUmlTemplateSignature>
63 #include <QtUml/QUmlType>
64
65 QT_BEGIN_NAMESPACE
66
67 QUmlPackageObject::QUmlPackageObject(QUmlPackage *modelingElement)
68 {
69     setProperty("modelingElement", QVariant::fromValue(static_cast<QModelingElement *>(modelingElement)));
70     setGroupProperties();
71     setPropertyData();
72 }
73
74 // OWNED ATTRIBUTES [Element]
75
76 const QSet<QObject *> QUmlPackageObject::ownedComments() const
77 {
78     QSet<QObject *> set;
79     foreach (QUmlComment *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->ownedComments())
80         set.insert(element->asQModelingObject());
81     return set;
82 }
83
84 const QSet<QObject *> QUmlPackageObject::ownedElements() const
85 {
86     QSet<QObject *> set;
87     foreach (QUmlElement *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->ownedElements())
88         set.insert(element->asQModelingObject());
89     return set;
90 }
91
92 QObject *QUmlPackageObject::owner() const
93 {
94     if (!qmodelingelementproperty_cast<QUmlPackage *>(this)->owner())
95         return 0;
96     else
97         return qmodelingelementproperty_cast<QUmlPackage *>(this)->owner()->asQModelingObject();
98 }
99
100 // OWNED ATTRIBUTES [NamedElement]
101
102 const QSet<QObject *> QUmlPackageObject::clientDependencies() const
103 {
104     QSet<QObject *> set;
105     foreach (QUmlDependency *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->clientDependencies())
106         set.insert(element->asQModelingObject());
107     return set;
108 }
109
110 QString QUmlPackageObject::name() const
111 {
112     return qmodelingelementproperty_cast<QUmlPackage *>(this)->name();
113 }
114
115 QObject *QUmlPackageObject::nameExpression() const
116 {
117     if (!qmodelingelementproperty_cast<QUmlPackage *>(this)->nameExpression())
118         return 0;
119     else
120         return qmodelingelementproperty_cast<QUmlPackage *>(this)->nameExpression()->asQModelingObject();
121 }
122
123 QObject *QUmlPackageObject::namespace_() const
124 {
125     if (!qmodelingelementproperty_cast<QUmlPackage *>(this)->namespace_())
126         return 0;
127     else
128         return qmodelingelementproperty_cast<QUmlPackage *>(this)->namespace_()->asQModelingObject();
129 }
130
131 QString QUmlPackageObject::qualifiedName() const
132 {
133     return qmodelingelementproperty_cast<QUmlPackage *>(this)->qualifiedName();
134 }
135
136 // OWNED ATTRIBUTES [Namespace]
137
138 const QSet<QObject *> QUmlPackageObject::elementImports() const
139 {
140     QSet<QObject *> set;
141     foreach (QUmlElementImport *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->elementImports())
142         set.insert(element->asQModelingObject());
143     return set;
144 }
145
146 const QSet<QObject *> QUmlPackageObject::importedMembers() const
147 {
148     QSet<QObject *> set;
149     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->importedMembers())
150         set.insert(element->asQModelingObject());
151     return set;
152 }
153
154 const QSet<QObject *> QUmlPackageObject::members() const
155 {
156     QSet<QObject *> set;
157     foreach (QUmlNamedElement *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->members())
158         set.insert(element->asQModelingObject());
159     return set;
160 }
161
162 const QSet<QObject *> QUmlPackageObject::ownedMembers() const
163 {
164     QSet<QObject *> set;
165     foreach (QUmlNamedElement *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->ownedMembers())
166         set.insert(element->asQModelingObject());
167     return set;
168 }
169
170 const QSet<QObject *> QUmlPackageObject::ownedRules() const
171 {
172     QSet<QObject *> set;
173     foreach (QUmlConstraint *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->ownedRules())
174         set.insert(element->asQModelingObject());
175     return set;
176 }
177
178 const QSet<QObject *> QUmlPackageObject::packageImports() const
179 {
180     QSet<QObject *> set;
181     foreach (QUmlPackageImport *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->packageImports())
182         set.insert(element->asQModelingObject());
183     return set;
184 }
185
186 // OWNED ATTRIBUTES [ParameterableElement]
187
188 QObject *QUmlPackageObject::owningTemplateParameter() const
189 {
190     if (!qmodelingelementproperty_cast<QUmlPackage *>(this)->owningTemplateParameter())
191         return 0;
192     else
193         return qmodelingelementproperty_cast<QUmlPackage *>(this)->owningTemplateParameter()->asQModelingObject();
194 }
195
196 QObject *QUmlPackageObject::templateParameter() const
197 {
198     if (!qmodelingelementproperty_cast<QUmlPackage *>(this)->templateParameter())
199         return 0;
200     else
201         return qmodelingelementproperty_cast<QUmlPackage *>(this)->templateParameter()->asQModelingObject();
202 }
203
204 // OWNED ATTRIBUTES [PackageableElement]
205
206 QtUml::VisibilityKind QUmlPackageObject::visibility() const
207 {
208     return qmodelingelementproperty_cast<QUmlPackage *>(this)->visibility();
209 }
210
211 // OWNED ATTRIBUTES [TemplateableElement]
212
213 QObject *QUmlPackageObject::ownedTemplateSignature() const
214 {
215     if (!qmodelingelementproperty_cast<QUmlPackage *>(this)->ownedTemplateSignature())
216         return 0;
217     else
218         return qmodelingelementproperty_cast<QUmlPackage *>(this)->ownedTemplateSignature()->asQModelingObject();
219 }
220
221 const QSet<QObject *> QUmlPackageObject::templateBindings() const
222 {
223     QSet<QObject *> set;
224     foreach (QUmlTemplateBinding *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->templateBindings())
225         set.insert(element->asQModelingObject());
226     return set;
227 }
228
229 // OWNED ATTRIBUTES [Package]
230
231 QString QUmlPackageObject::URI() const
232 {
233     return qmodelingelementproperty_cast<QUmlPackage *>(this)->URI();
234 }
235
236 const QSet<QObject *> QUmlPackageObject::nestedPackages() const
237 {
238     QSet<QObject *> set;
239     foreach (QUmlPackage *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->nestedPackages())
240         set.insert(element->asQModelingObject());
241     return set;
242 }
243
244 QObject *QUmlPackageObject::nestingPackage() const
245 {
246     if (!qmodelingelementproperty_cast<QUmlPackage *>(this)->nestingPackage())
247         return 0;
248     else
249         return qmodelingelementproperty_cast<QUmlPackage *>(this)->nestingPackage()->asQModelingObject();
250 }
251
252 const QSet<QObject *> QUmlPackageObject::ownedStereotypes() const
253 {
254     QSet<QObject *> set;
255     foreach (QUmlStereotype *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->ownedStereotypes())
256         set.insert(element->asQModelingObject());
257     return set;
258 }
259
260 const QSet<QObject *> QUmlPackageObject::ownedTypes() const
261 {
262     QSet<QObject *> set;
263     foreach (QUmlType *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->ownedTypes())
264         set.insert(element->asQModelingObject());
265     return set;
266 }
267
268 const QSet<QObject *> QUmlPackageObject::packageMerges() const
269 {
270     QSet<QObject *> set;
271     foreach (QUmlPackageMerge *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->packageMerges())
272         set.insert(element->asQModelingObject());
273     return set;
274 }
275
276 const QSet<QObject *> QUmlPackageObject::packagedElements() const
277 {
278     QSet<QObject *> set;
279     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->packagedElements())
280         set.insert(element->asQModelingObject());
281     return set;
282 }
283
284 const QSet<QObject *> QUmlPackageObject::profileApplications() const
285 {
286     QSet<QObject *> set;
287     foreach (QUmlProfileApplication *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->profileApplications())
288         set.insert(element->asQModelingObject());
289     return set;
290 }
291
292 // OPERATIONS [Element]
293
294 QSet<QObject *> QUmlPackageObject::allOwnedElements() const
295 {
296     QSet<QObject *> set;
297     foreach (QUmlElement *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->allOwnedElements())
298         set.insert(element->asQModelingObject());
299     return set;
300 }
301
302 // OPERATIONS [NamedElement]
303
304 QList<QObject *> QUmlPackageObject::allNamespaces() const
305 {
306     QList<QObject *> set;
307     foreach (QUmlNamespace *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->allNamespaces())
308         set.append(element->asQModelingObject());
309     return set;
310 }
311
312 QSet<QObject *> QUmlPackageObject::allOwningPackages() const
313 {
314     QSet<QObject *> set;
315     foreach (QUmlPackage *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->allOwningPackages())
316         set.insert(element->asQModelingObject());
317     return set;
318 }
319
320 bool QUmlPackageObject::isDistinguishableFrom(QObject *n, QObject *ns) const
321 {
322     return qmodelingelementproperty_cast<QUmlPackage *>(this)->isDistinguishableFrom(qmodelingelementproperty_cast<QUmlNamedElement *>(n), qmodelingelementproperty_cast<QUmlNamespace *>(ns));
323 }
324
325 QString QUmlPackageObject::separator() const
326 {
327     return qmodelingelementproperty_cast<QUmlPackage *>(this)->separator();
328 }
329
330 // OPERATIONS [Namespace]
331
332 QSet<QObject *> QUmlPackageObject::excludeCollisions(QSet<QObject *> imps) const
333 {
334     QSet<QUmlPackageableElement *> impsConverted;
335     foreach (QObject *object, imps)
336         impsConverted.insert(qmodelingelementproperty_cast<QUmlPackageableElement *>(object));
337     QSet<QObject *> set;
338     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->excludeCollisions(impsConverted))
339         set.insert(element->asQModelingObject());
340     return set;
341 }
342
343 QSet<QString> QUmlPackageObject::getNamesOfMember(QObject *element) const
344 {
345     return qmodelingelementproperty_cast<QUmlPackage *>(this)->getNamesOfMember(qmodelingelementproperty_cast<QUmlNamedElement *>(element));
346 }
347
348 QSet<QObject *> QUmlPackageObject::importMembers(QSet<QObject *> imps) const
349 {
350     QSet<QUmlPackageableElement *> impsConverted;
351     foreach (QObject *object, imps)
352         impsConverted.insert(qmodelingelementproperty_cast<QUmlPackageableElement *>(object));
353     QSet<QObject *> set;
354     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->importMembers(impsConverted))
355         set.insert(element->asQModelingObject());
356     return set;
357 }
358
359 bool QUmlPackageObject::membersAreDistinguishable() const
360 {
361     return qmodelingelementproperty_cast<QUmlPackage *>(this)->membersAreDistinguishable();
362 }
363
364 // OPERATIONS [ParameterableElement]
365
366 bool QUmlPackageObject::isCompatibleWith(QObject *p) const
367 {
368     return qmodelingelementproperty_cast<QUmlPackage *>(this)->isCompatibleWith(qmodelingelementproperty_cast<QUmlParameterableElement *>(p));
369 }
370
371 bool QUmlPackageObject::isTemplateParameter() const
372 {
373     return qmodelingelementproperty_cast<QUmlPackage *>(this)->isTemplateParameter();
374 }
375
376 // OPERATIONS [TemplateableElement]
377
378 bool QUmlPackageObject::isTemplate() const
379 {
380     return qmodelingelementproperty_cast<QUmlPackage *>(this)->isTemplate();
381 }
382
383 QSet<QObject *> QUmlPackageObject::parameterableElements() const
384 {
385     QSet<QObject *> set;
386     foreach (QUmlParameterableElement *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->parameterableElements())
387         set.insert(element->asQModelingObject());
388     return set;
389 }
390
391 // OPERATIONS [Package]
392
393 QSet<QObject *> QUmlPackageObject::allApplicableStereotypes() const
394 {
395     QSet<QObject *> set;
396     foreach (QUmlStereotype *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->allApplicableStereotypes())
397         set.insert(element->asQModelingObject());
398     return set;
399 }
400
401 QObject *QUmlPackageObject::containingProfile() const
402 {
403     if (!qmodelingelementproperty_cast<QUmlPackage *>(this)->containingProfile())
404         return 0;
405     else
406         return qmodelingelementproperty_cast<QUmlPackage *>(this)->containingProfile()->asQModelingObject();
407 }
408
409 bool QUmlPackageObject::makesVisible(QObject *el) const
410 {
411     return qmodelingelementproperty_cast<QUmlPackage *>(this)->makesVisible(qmodelingelementproperty_cast<QUmlNamedElement *>(el));
412 }
413
414 bool QUmlPackageObject::mustBeOwned() const
415 {
416     return qmodelingelementproperty_cast<QUmlPackage *>(this)->mustBeOwned();
417 }
418
419 QSet<QObject *> QUmlPackageObject::visibleMembers() const
420 {
421     QSet<QObject *> set;
422     foreach (QUmlPackageableElement *element, qmodelingelementproperty_cast<QUmlPackage *>(this)->visibleMembers())
423         set.insert(element->asQModelingObject());
424     return set;
425 }
426
427 // SLOTS FOR OWNED ATTRIBUTES [Element]
428
429 void QUmlPackageObject::addOwnedComment(QObject *ownedComment)
430 {
431     qmodelingelementproperty_cast<QUmlPackage *>(this)->addOwnedComment(qmodelingelementproperty_cast<QUmlComment *>(ownedComment));
432 }
433
434 void QUmlPackageObject::removeOwnedComment(QObject *ownedComment)
435 {
436     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeOwnedComment(qmodelingelementproperty_cast<QUmlComment *>(ownedComment));
437 }
438
439 void QUmlPackageObject::addOwnedElement(QObject *ownedElement)
440 {
441     qmodelingelementproperty_cast<QUmlPackage *>(this)->addOwnedElement(qmodelingelementproperty_cast<QUmlElement *>(ownedElement));
442 }
443
444 void QUmlPackageObject::removeOwnedElement(QObject *ownedElement)
445 {
446     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeOwnedElement(qmodelingelementproperty_cast<QUmlElement *>(ownedElement));
447 }
448
449 void QUmlPackageObject::setOwner(QObject *owner)
450 {
451     qmodelingelementproperty_cast<QUmlPackage *>(this)->setOwner(qmodelingelementproperty_cast<QUmlElement *>(owner));
452 }
453
454 // SLOTS FOR OWNED ATTRIBUTES [NamedElement]
455
456 void QUmlPackageObject::addClientDependency(QObject *clientDependency)
457 {
458     qmodelingelementproperty_cast<QUmlPackage *>(this)->addClientDependency(qmodelingelementproperty_cast<QUmlDependency *>(clientDependency));
459 }
460
461 void QUmlPackageObject::removeClientDependency(QObject *clientDependency)
462 {
463     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeClientDependency(qmodelingelementproperty_cast<QUmlDependency *>(clientDependency));
464 }
465
466 void QUmlPackageObject::setName(QString name)
467 {
468     qmodelingelementproperty_cast<QUmlPackage *>(this)->setName(name);
469 }
470
471 void QUmlPackageObject::setNameExpression(QObject *nameExpression)
472 {
473     qmodelingelementproperty_cast<QUmlPackage *>(this)->setNameExpression(qmodelingelementproperty_cast<QUmlStringExpression *>(nameExpression));
474 }
475
476 void QUmlPackageObject::setNamespace(QObject *namespace_)
477 {
478     qmodelingelementproperty_cast<QUmlPackage *>(this)->setNamespace(qmodelingelementproperty_cast<QUmlNamespace *>(namespace_));
479 }
480
481 void QUmlPackageObject::setQualifiedName(QString qualifiedName)
482 {
483     qmodelingelementproperty_cast<QUmlPackage *>(this)->setQualifiedName(qualifiedName);
484 }
485 // SLOTS FOR OWNED ATTRIBUTES [Namespace]
486
487 void QUmlPackageObject::addElementImport(QObject *elementImport)
488 {
489     qmodelingelementproperty_cast<QUmlPackage *>(this)->addElementImport(qmodelingelementproperty_cast<QUmlElementImport *>(elementImport));
490 }
491
492 void QUmlPackageObject::removeElementImport(QObject *elementImport)
493 {
494     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeElementImport(qmodelingelementproperty_cast<QUmlElementImport *>(elementImport));
495 }
496
497 void QUmlPackageObject::addImportedMember(QObject *importedMember)
498 {
499     qmodelingelementproperty_cast<QUmlPackage *>(this)->addImportedMember(qmodelingelementproperty_cast<QUmlPackageableElement *>(importedMember));
500 }
501
502 void QUmlPackageObject::removeImportedMember(QObject *importedMember)
503 {
504     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeImportedMember(qmodelingelementproperty_cast<QUmlPackageableElement *>(importedMember));
505 }
506
507 void QUmlPackageObject::addMember(QObject *member)
508 {
509     qmodelingelementproperty_cast<QUmlPackage *>(this)->addMember(qmodelingelementproperty_cast<QUmlNamedElement *>(member));
510 }
511
512 void QUmlPackageObject::removeMember(QObject *member)
513 {
514     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeMember(qmodelingelementproperty_cast<QUmlNamedElement *>(member));
515 }
516
517 void QUmlPackageObject::addOwnedMember(QObject *ownedMember)
518 {
519     qmodelingelementproperty_cast<QUmlPackage *>(this)->addOwnedMember(qmodelingelementproperty_cast<QUmlNamedElement *>(ownedMember));
520 }
521
522 void QUmlPackageObject::removeOwnedMember(QObject *ownedMember)
523 {
524     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeOwnedMember(qmodelingelementproperty_cast<QUmlNamedElement *>(ownedMember));
525 }
526
527 void QUmlPackageObject::addOwnedRule(QObject *ownedRule)
528 {
529     qmodelingelementproperty_cast<QUmlPackage *>(this)->addOwnedRule(qmodelingelementproperty_cast<QUmlConstraint *>(ownedRule));
530 }
531
532 void QUmlPackageObject::removeOwnedRule(QObject *ownedRule)
533 {
534     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeOwnedRule(qmodelingelementproperty_cast<QUmlConstraint *>(ownedRule));
535 }
536
537 void QUmlPackageObject::addPackageImport(QObject *packageImport)
538 {
539     qmodelingelementproperty_cast<QUmlPackage *>(this)->addPackageImport(qmodelingelementproperty_cast<QUmlPackageImport *>(packageImport));
540 }
541
542 void QUmlPackageObject::removePackageImport(QObject *packageImport)
543 {
544     qmodelingelementproperty_cast<QUmlPackage *>(this)->removePackageImport(qmodelingelementproperty_cast<QUmlPackageImport *>(packageImport));
545 }
546
547 // SLOTS FOR OWNED ATTRIBUTES [ParameterableElement]
548
549 void QUmlPackageObject::setOwningTemplateParameter(QObject *owningTemplateParameter)
550 {
551     qmodelingelementproperty_cast<QUmlPackage *>(this)->setOwningTemplateParameter(qmodelingelementproperty_cast<QUmlTemplateParameter *>(owningTemplateParameter));
552 }
553
554 void QUmlPackageObject::setTemplateParameter(QObject *templateParameter)
555 {
556     qmodelingelementproperty_cast<QUmlPackage *>(this)->setTemplateParameter(qmodelingelementproperty_cast<QUmlTemplateParameter *>(templateParameter));
557 }
558
559 // SLOTS FOR OWNED ATTRIBUTES [PackageableElement]
560
561 void QUmlPackageObject::setVisibility(QtUml::VisibilityKind visibility)
562 {
563     qmodelingelementproperty_cast<QUmlPackage *>(this)->setVisibility(visibility);
564 }
565
566 void QUmlPackageObject::unsetVisibility()
567 {
568     Q_D(QModelingObject);
569     setVisibility(QtUml::VisibilityKindPublic);
570     d->modifiedResettableProperties.removeAll(QStringLiteral("visibility"));
571 }
572
573 // SLOTS FOR OWNED ATTRIBUTES [TemplateableElement]
574
575 void QUmlPackageObject::setOwnedTemplateSignature(QObject *ownedTemplateSignature)
576 {
577     qmodelingelementproperty_cast<QUmlPackage *>(this)->setOwnedTemplateSignature(qmodelingelementproperty_cast<QUmlTemplateSignature *>(ownedTemplateSignature));
578 }
579
580 void QUmlPackageObject::addTemplateBinding(QObject *templateBinding)
581 {
582     qmodelingelementproperty_cast<QUmlPackage *>(this)->addTemplateBinding(qmodelingelementproperty_cast<QUmlTemplateBinding *>(templateBinding));
583 }
584
585 void QUmlPackageObject::removeTemplateBinding(QObject *templateBinding)
586 {
587     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeTemplateBinding(qmodelingelementproperty_cast<QUmlTemplateBinding *>(templateBinding));
588 }
589
590 // SLOTS FOR OWNED ATTRIBUTES [Package]
591
592 void QUmlPackageObject::setURI(QString URI)
593 {
594     qmodelingelementproperty_cast<QUmlPackage *>(this)->setURI(URI);
595 }
596
597 void QUmlPackageObject::addNestedPackage(QObject *nestedPackage)
598 {
599     qmodelingelementproperty_cast<QUmlPackage *>(this)->addNestedPackage(qmodelingelementproperty_cast<QUmlPackage *>(nestedPackage));
600 }
601
602 void QUmlPackageObject::removeNestedPackage(QObject *nestedPackage)
603 {
604     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeNestedPackage(qmodelingelementproperty_cast<QUmlPackage *>(nestedPackage));
605 }
606
607 void QUmlPackageObject::setNestingPackage(QObject *nestingPackage)
608 {
609     qmodelingelementproperty_cast<QUmlPackage *>(this)->setNestingPackage(qmodelingelementproperty_cast<QUmlPackage *>(nestingPackage));
610 }
611
612 void QUmlPackageObject::addOwnedStereotype(QObject *ownedStereotype)
613 {
614     qmodelingelementproperty_cast<QUmlPackage *>(this)->addOwnedStereotype(qmodelingelementproperty_cast<QUmlStereotype *>(ownedStereotype));
615 }
616
617 void QUmlPackageObject::removeOwnedStereotype(QObject *ownedStereotype)
618 {
619     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeOwnedStereotype(qmodelingelementproperty_cast<QUmlStereotype *>(ownedStereotype));
620 }
621
622 void QUmlPackageObject::addOwnedType(QObject *ownedType)
623 {
624     qmodelingelementproperty_cast<QUmlPackage *>(this)->addOwnedType(qmodelingelementproperty_cast<QUmlType *>(ownedType));
625 }
626
627 void QUmlPackageObject::removeOwnedType(QObject *ownedType)
628 {
629     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeOwnedType(qmodelingelementproperty_cast<QUmlType *>(ownedType));
630 }
631
632 void QUmlPackageObject::addPackageMerge(QObject *packageMerge)
633 {
634     qmodelingelementproperty_cast<QUmlPackage *>(this)->addPackageMerge(qmodelingelementproperty_cast<QUmlPackageMerge *>(packageMerge));
635 }
636
637 void QUmlPackageObject::removePackageMerge(QObject *packageMerge)
638 {
639     qmodelingelementproperty_cast<QUmlPackage *>(this)->removePackageMerge(qmodelingelementproperty_cast<QUmlPackageMerge *>(packageMerge));
640 }
641
642 void QUmlPackageObject::addPackagedElement(QObject *packagedElement)
643 {
644     qmodelingelementproperty_cast<QUmlPackage *>(this)->addPackagedElement(qmodelingelementproperty_cast<QUmlPackageableElement *>(packagedElement));
645 }
646
647 void QUmlPackageObject::removePackagedElement(QObject *packagedElement)
648 {
649     qmodelingelementproperty_cast<QUmlPackage *>(this)->removePackagedElement(qmodelingelementproperty_cast<QUmlPackageableElement *>(packagedElement));
650 }
651
652 void QUmlPackageObject::addProfileApplication(QObject *profileApplication)
653 {
654     qmodelingelementproperty_cast<QUmlPackage *>(this)->addProfileApplication(qmodelingelementproperty_cast<QUmlProfileApplication *>(profileApplication));
655 }
656
657 void QUmlPackageObject::removeProfileApplication(QObject *profileApplication)
658 {
659     qmodelingelementproperty_cast<QUmlPackage *>(this)->removeProfileApplication(qmodelingelementproperty_cast<QUmlProfileApplication *>(profileApplication));
660 }
661
662
663 void QUmlPackageObject::setGroupProperties()
664 {
665     Q_D(QModelingObject);
666     const QMetaObject *metaObject = this->metaObject();
667
668     d->propertyGroups << QStringLiteral("QObject");
669     d->groupProperties.insert(QStringLiteral("QObject"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("objectName"))));
670
671     d->propertyGroups << QStringLiteral("QUmlElement");
672     d->groupProperties.insert(QStringLiteral("QUmlElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedComments"))));
673     d->groupProperties.insert(QStringLiteral("QUmlElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedElements"))));
674     d->groupProperties.insert(QStringLiteral("QUmlElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("owner"))));
675
676     d->propertyGroups << QStringLiteral("QUmlNamedElement");
677     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("clientDependencies"))));
678     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("name"))));
679     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("nameExpression"))));
680     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("namespace_"))));
681     d->groupProperties.insert(QStringLiteral("QUmlNamedElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("qualifiedName"))));
682
683     d->propertyGroups << QStringLiteral("QUmlNamespace");
684     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("elementImports"))));
685     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("importedMembers"))));
686     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("members"))));
687     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedMembers"))));
688     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedRules"))));
689     d->groupProperties.insert(QStringLiteral("QUmlNamespace"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("packageImports"))));
690
691     d->propertyGroups << QStringLiteral("QUmlParameterableElement");
692     d->groupProperties.insert(QStringLiteral("QUmlParameterableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("owningTemplateParameter"))));
693     d->groupProperties.insert(QStringLiteral("QUmlParameterableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("templateParameter"))));
694
695     d->propertyGroups << QStringLiteral("QUmlPackageableElement");
696     d->groupProperties.insert(QStringLiteral("QUmlPackageableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("visibility"))));
697
698     d->propertyGroups << QStringLiteral("QUmlTemplateableElement");
699     d->groupProperties.insert(QStringLiteral("QUmlTemplateableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedTemplateSignature"))));
700     d->groupProperties.insert(QStringLiteral("QUmlTemplateableElement"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("templateBindings"))));
701
702     d->propertyGroups << QStringLiteral("QUmlPackage");
703     d->groupProperties.insert(QStringLiteral("QUmlPackage"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("URI"))));
704     d->groupProperties.insert(QStringLiteral("QUmlPackage"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("nestedPackages"))));
705     d->groupProperties.insert(QStringLiteral("QUmlPackage"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("nestingPackage"))));
706     d->groupProperties.insert(QStringLiteral("QUmlPackage"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedStereotypes"))));
707     d->groupProperties.insert(QStringLiteral("QUmlPackage"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("ownedTypes"))));
708     d->groupProperties.insert(QStringLiteral("QUmlPackage"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("packageMerges"))));
709     d->groupProperties.insert(QStringLiteral("QUmlPackage"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("packagedElements"))));
710     d->groupProperties.insert(QStringLiteral("QUmlPackage"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("profileApplications"))));
711 }
712
713 void QUmlPackageObject::setPropertyData()
714 {
715     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, AggregationRole, QStringLiteral("composite"));
716     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, PropertyClassRole, QStringLiteral("QUmlElement"));
717     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, IsDerivedRole, false);
718     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, IsDerivedUnionRole, false);
719     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, DocumentationRole, QStringLiteral("The Comments owned by this element."));
720     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, RedefinedPropertiesRole, QStringLiteral(""));
721     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement"));
722     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedComments, OppositeEndRole, QStringLiteral(""));
723
724     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, AggregationRole, QStringLiteral("composite"));
725     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, PropertyClassRole, QStringLiteral("QUmlElement"));
726     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, IsDerivedRole, true);
727     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, IsDerivedUnionRole, true);
728     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, DocumentationRole, QStringLiteral("The Elements owned by this element."));
729     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, RedefinedPropertiesRole, QStringLiteral(""));
730     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, SubsettedPropertiesRole, QStringLiteral(""));
731     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, ownedElements, OppositeEndRole, QStringLiteral("Element-owner"));
732
733     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, AggregationRole, QStringLiteral("none"));
734     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, PropertyClassRole, QStringLiteral("QUmlElement"));
735     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, IsDerivedRole, true);
736     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, IsDerivedUnionRole, true);
737     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, DocumentationRole, QStringLiteral("The Element that owns this element."));
738     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, RedefinedPropertiesRole, QStringLiteral(""));
739     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, SubsettedPropertiesRole, QStringLiteral(""));
740     Q_DECLARE_METAPROPERTY_INFO(QUmlElement, owner, OppositeEndRole, QStringLiteral("Element-ownedElement"));
741
742     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, AggregationRole, QStringLiteral("none"));
743     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
744     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, IsDerivedRole, false);
745     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, IsDerivedUnionRole, false);
746     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, DocumentationRole, QStringLiteral("Indicates the dependencies that reference the client."));
747     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, RedefinedPropertiesRole, QStringLiteral(""));
748     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship"));
749     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, clientDependencies, OppositeEndRole, QStringLiteral("Dependency-client"));
750
751     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, AggregationRole, QStringLiteral("none"));
752     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
753     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, IsDerivedRole, false);
754     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, IsDerivedUnionRole, false);
755     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, DocumentationRole, QStringLiteral("The name of the NamedElement."));
756     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, RedefinedPropertiesRole, QStringLiteral(""));
757     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, SubsettedPropertiesRole, QStringLiteral(""));
758     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, name, OppositeEndRole, QStringLiteral(""));
759
760     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, AggregationRole, QStringLiteral("composite"));
761     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
762     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, IsDerivedRole, false);
763     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, IsDerivedUnionRole, false);
764     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, DocumentationRole, QStringLiteral("The string expression used to define the name of this named element."));
765     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, RedefinedPropertiesRole, QStringLiteral(""));
766     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement"));
767     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, nameExpression, OppositeEndRole, QStringLiteral(""));
768
769     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, AggregationRole, QStringLiteral("none"));
770     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
771     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, IsDerivedRole, true);
772     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, IsDerivedUnionRole, true);
773     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, DocumentationRole, QStringLiteral("Specifies the namespace that owns the NamedElement."));
774     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, RedefinedPropertiesRole, QStringLiteral(""));
775     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, SubsettedPropertiesRole, QStringLiteral("A_member_memberNamespace-memberNamespace Element-owner"));
776     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, namespace_, OppositeEndRole, QStringLiteral("Namespace-ownedMember"));
777
778     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, AggregationRole, QStringLiteral("none"));
779     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
780     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, IsDerivedRole, true);
781     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, IsDerivedUnionRole, false);
782     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, DocumentationRole, QStringLiteral("A name which allows the NamedElement to be identified within a hierarchy of nested Namespaces. It is constructed from the names of the containing namespaces starting at the root of the hierarchy and ending with the name of the NamedElement itself."));
783     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, RedefinedPropertiesRole, QStringLiteral(""));
784     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, SubsettedPropertiesRole, QStringLiteral(""));
785     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, qualifiedName, OppositeEndRole, QStringLiteral(""));
786
787     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, AggregationRole, QStringLiteral("none"));
788     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, PropertyClassRole, QStringLiteral("QUmlNamedElement"));
789     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, IsDerivedRole, false);
790     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, IsDerivedUnionRole, false);
791     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, DocumentationRole, QStringLiteral("Determines where the NamedElement appears within different Namespaces within the overall model, and its accessibility."));
792     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, RedefinedPropertiesRole, QStringLiteral(""));
793     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, SubsettedPropertiesRole, QStringLiteral(""));
794     Q_DECLARE_METAPROPERTY_INFO(QUmlNamedElement, visibility, OppositeEndRole, QStringLiteral(""));
795
796     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, AggregationRole, QStringLiteral("composite"));
797     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, PropertyClassRole, QStringLiteral("QUmlNamespace"));
798     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, IsDerivedRole, false);
799     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, IsDerivedUnionRole, false);
800     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, DocumentationRole, QStringLiteral("References the ElementImports owned by the Namespace."));
801     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, RedefinedPropertiesRole, QStringLiteral(""));
802     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
803     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, elementImports, OppositeEndRole, QStringLiteral("ElementImport-importingNamespace"));
804
805     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, AggregationRole, QStringLiteral("none"));
806     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, PropertyClassRole, QStringLiteral("QUmlNamespace"));
807     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, IsDerivedRole, true);
808     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, IsDerivedUnionRole, false);
809     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, DocumentationRole, QStringLiteral("References the PackageableElements that are members of this Namespace as a result of either PackageImports or ElementImports."));
810     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, RedefinedPropertiesRole, QStringLiteral(""));
811     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, SubsettedPropertiesRole, QStringLiteral("Namespace-member"));
812     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, importedMembers, OppositeEndRole, QStringLiteral(""));
813
814     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, AggregationRole, QStringLiteral("none"));
815     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, PropertyClassRole, QStringLiteral("QUmlNamespace"));
816     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, IsDerivedRole, true);
817     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, IsDerivedUnionRole, true);
818     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, DocumentationRole, QStringLiteral("A collection of NamedElements identifiable within the Namespace, either by being owned or by being introduced by importing or inheritance."));
819     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, RedefinedPropertiesRole, QStringLiteral(""));
820     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, SubsettedPropertiesRole, QStringLiteral(""));
821     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, members, OppositeEndRole, QStringLiteral(""));
822
823     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, AggregationRole, QStringLiteral("composite"));
824     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, PropertyClassRole, QStringLiteral("QUmlNamespace"));
825     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, IsDerivedRole, true);
826     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, IsDerivedUnionRole, true);
827     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, DocumentationRole, QStringLiteral("A collection of NamedElements owned by the Namespace."));
828     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, RedefinedPropertiesRole, QStringLiteral(""));
829     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, SubsettedPropertiesRole, QStringLiteral("Namespace-member Element-ownedElement"));
830     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedMembers, OppositeEndRole, QStringLiteral("NamedElement-namespace"));
831
832     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, AggregationRole, QStringLiteral("composite"));
833     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, PropertyClassRole, QStringLiteral("QUmlNamespace"));
834     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, IsDerivedRole, false);
835     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, IsDerivedUnionRole, false);
836     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, DocumentationRole, QStringLiteral("Specifies a set of Constraints owned by this Namespace."));
837     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, RedefinedPropertiesRole, QStringLiteral(""));
838     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedMember"));
839     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, ownedRules, OppositeEndRole, QStringLiteral("Constraint-context"));
840
841     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, AggregationRole, QStringLiteral("composite"));
842     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, PropertyClassRole, QStringLiteral("QUmlNamespace"));
843     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, IsDerivedRole, false);
844     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, IsDerivedUnionRole, false);
845     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, DocumentationRole, QStringLiteral("References the PackageImports owned by the Namespace."));
846     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, RedefinedPropertiesRole, QStringLiteral(""));
847     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
848     Q_DECLARE_METAPROPERTY_INFO(QUmlNamespace, packageImports, OppositeEndRole, QStringLiteral("PackageImport-importingNamespace"));
849
850     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, AggregationRole, QStringLiteral("none"));
851     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, PropertyClassRole, QStringLiteral("QUmlParameterableElement"));
852     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, IsDerivedRole, false);
853     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, IsDerivedUnionRole, false);
854     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, DocumentationRole, QStringLiteral("The formal template parameter that owns this element."));
855     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, RedefinedPropertiesRole, QStringLiteral(""));
856     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, SubsettedPropertiesRole, QStringLiteral("ParameterableElement-templateParameter Element-owner"));
857     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, owningTemplateParameter, OppositeEndRole, QStringLiteral("TemplateParameter-ownedParameteredElement"));
858
859     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, AggregationRole, QStringLiteral("none"));
860     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, PropertyClassRole, QStringLiteral("QUmlParameterableElement"));
861     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, IsDerivedRole, false);
862     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, IsDerivedUnionRole, false);
863     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, DocumentationRole, QStringLiteral("The template parameter that exposes this element as a formal parameter."));
864     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, RedefinedPropertiesRole, QStringLiteral(""));
865     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, SubsettedPropertiesRole, QStringLiteral(""));
866     Q_DECLARE_METAPROPERTY_INFO(QUmlParameterableElement, templateParameter, OppositeEndRole, QStringLiteral("TemplateParameter-parameteredElement"));
867
868     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, AggregationRole, QStringLiteral("none"));
869     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, PropertyClassRole, QStringLiteral("QUmlPackageableElement"));
870     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, IsDerivedRole, false);
871     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, IsDerivedUnionRole, false);
872     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, DocumentationRole, QStringLiteral("Indicates that packageable elements must always have a visibility, i.e., visibility is not optional."));
873     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, RedefinedPropertiesRole, QStringLiteral("NamedElement-visibility"));
874     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, SubsettedPropertiesRole, QStringLiteral(""));
875     Q_DECLARE_METAPROPERTY_INFO(QUmlPackageableElement, visibility, OppositeEndRole, QStringLiteral(""));
876
877     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, AggregationRole, QStringLiteral("composite"));
878     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, PropertyClassRole, QStringLiteral("QUmlTemplateableElement"));
879     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, IsDerivedRole, false);
880     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, IsDerivedUnionRole, false);
881     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, DocumentationRole, QStringLiteral("The optional template signature specifying the formal template parameters."));
882     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, RedefinedPropertiesRole, QStringLiteral(""));
883     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, SubsettedPropertiesRole, QStringLiteral("Element-ownedElement"));
884     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, ownedTemplateSignature, OppositeEndRole, QStringLiteral("TemplateSignature-template"));
885
886     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, AggregationRole, QStringLiteral("composite"));
887     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, PropertyClassRole, QStringLiteral("QUmlTemplateableElement"));
888     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, IsDerivedRole, false);
889     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, IsDerivedUnionRole, false);
890     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, DocumentationRole, QStringLiteral("The optional bindings from this element to templates."));
891     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, RedefinedPropertiesRole, QStringLiteral(""));
892     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
893     Q_DECLARE_METAPROPERTY_INFO(QUmlTemplateableElement, templateBindings, OppositeEndRole, QStringLiteral("TemplateBinding-boundElement"));
894
895     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, URI, AggregationRole, QStringLiteral("none"));
896     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, URI, PropertyClassRole, QStringLiteral("QUmlPackage"));
897     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, URI, IsDerivedRole, false);
898     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, URI, IsDerivedUnionRole, false);
899     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, URI, DocumentationRole, QStringLiteral("Provides an identifier for the package that can be used for many purposes. A URI is the universally unique identification of the package following the IETF URI specification, RFC 2396 http://www.ietf.org/rfc/rfc2396.txt and it must comply with those syntax rules."));
900     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, URI, RedefinedPropertiesRole, QStringLiteral(""));
901     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, URI, SubsettedPropertiesRole, QStringLiteral(""));
902     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, URI, OppositeEndRole, QStringLiteral(""));
903
904     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestedPackages, AggregationRole, QStringLiteral("composite"));
905     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestedPackages, PropertyClassRole, QStringLiteral("QUmlPackage"));
906     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestedPackages, IsDerivedRole, true);
907     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestedPackages, IsDerivedUnionRole, false);
908     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestedPackages, DocumentationRole, QStringLiteral("References the packaged elements that are Packages."));
909     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestedPackages, RedefinedPropertiesRole, QStringLiteral(""));
910     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestedPackages, SubsettedPropertiesRole, QStringLiteral("Package-packagedElement"));
911     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestedPackages, OppositeEndRole, QStringLiteral("Package-nestingPackage"));
912
913     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestingPackage, AggregationRole, QStringLiteral("none"));
914     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestingPackage, PropertyClassRole, QStringLiteral("QUmlPackage"));
915     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestingPackage, IsDerivedRole, false);
916     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestingPackage, IsDerivedUnionRole, false);
917     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestingPackage, DocumentationRole, QStringLiteral("References the Package that owns this Package."));
918     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestingPackage, RedefinedPropertiesRole, QStringLiteral(""));
919     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestingPackage, SubsettedPropertiesRole, QStringLiteral("A_packagedElement_owningPackage-owningPackage"));
920     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, nestingPackage, OppositeEndRole, QStringLiteral("Package-nestedPackage"));
921
922     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedStereotypes, AggregationRole, QStringLiteral("composite"));
923     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedStereotypes, PropertyClassRole, QStringLiteral("QUmlPackage"));
924     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedStereotypes, IsDerivedRole, true);
925     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedStereotypes, IsDerivedUnionRole, false);
926     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedStereotypes, DocumentationRole, QStringLiteral("References the Stereotypes that are owned by the Package"));
927     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedStereotypes, RedefinedPropertiesRole, QStringLiteral(""));
928     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedStereotypes, SubsettedPropertiesRole, QStringLiteral("Package-packagedElement"));
929     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedStereotypes, OppositeEndRole, QStringLiteral(""));
930
931     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedTypes, AggregationRole, QStringLiteral("composite"));
932     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedTypes, PropertyClassRole, QStringLiteral("QUmlPackage"));
933     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedTypes, IsDerivedRole, true);
934     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedTypes, IsDerivedUnionRole, false);
935     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedTypes, DocumentationRole, QStringLiteral("References the packaged elements that are Types."));
936     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedTypes, RedefinedPropertiesRole, QStringLiteral(""));
937     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedTypes, SubsettedPropertiesRole, QStringLiteral("Package-packagedElement"));
938     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, ownedTypes, OppositeEndRole, QStringLiteral("Type-package"));
939
940     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packageMerges, AggregationRole, QStringLiteral("composite"));
941     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packageMerges, PropertyClassRole, QStringLiteral("QUmlPackage"));
942     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packageMerges, IsDerivedRole, false);
943     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packageMerges, IsDerivedUnionRole, false);
944     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packageMerges, DocumentationRole, QStringLiteral("References the PackageMerges that are owned by this Package."));
945     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packageMerges, RedefinedPropertiesRole, QStringLiteral(""));
946     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packageMerges, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
947     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packageMerges, OppositeEndRole, QStringLiteral("PackageMerge-receivingPackage"));
948
949     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packagedElements, AggregationRole, QStringLiteral("composite"));
950     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packagedElements, PropertyClassRole, QStringLiteral("QUmlPackage"));
951     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packagedElements, IsDerivedRole, false);
952     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packagedElements, IsDerivedUnionRole, false);
953     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packagedElements, DocumentationRole, QStringLiteral("Specifies the packageable elements that are owned by this Package."));
954     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packagedElements, RedefinedPropertiesRole, QStringLiteral(""));
955     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packagedElements, SubsettedPropertiesRole, QStringLiteral("Namespace-ownedMember"));
956     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, packagedElements, OppositeEndRole, QStringLiteral(""));
957
958     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, profileApplications, AggregationRole, QStringLiteral("composite"));
959     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, profileApplications, PropertyClassRole, QStringLiteral("QUmlPackage"));
960     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, profileApplications, IsDerivedRole, false);
961     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, profileApplications, IsDerivedUnionRole, false);
962     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, profileApplications, DocumentationRole, QStringLiteral("References the ProfileApplications that indicate which profiles have been applied to the Package."));
963     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, profileApplications, RedefinedPropertiesRole, QStringLiteral(""));
964     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, profileApplications, SubsettedPropertiesRole, QStringLiteral("A_source_directedRelationship-directedRelationship Element-ownedElement"));
965     Q_DECLARE_METAPROPERTY_INFO(QUmlPackage, profileApplications, OppositeEndRole, QStringLiteral("ProfileApplication-applyingPackage"));
966
967 }
968
969 QT_END_NAMESPACE
970