diff options
Diffstat (limited to 'src/measurementprofile')
18 files changed, 1071 insertions, 0 deletions
diff --git a/src/measurementprofile/doc/images/.gitignore b/src/measurementprofile/doc/images/.gitignore new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/src/measurementprofile/doc/images/.gitignore diff --git a/src/measurementprofile/doc/qtmeasurementprofile.qdocconf b/src/measurementprofile/doc/qtmeasurementprofile.qdocconf new file mode 100644 index 00000000..d2eb4d6f --- /dev/null +++ b/src/measurementprofile/doc/qtmeasurementprofile.qdocconf @@ -0,0 +1,44 @@ +include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf) + +project = QtMeasurementProfile +description = Qt MeasurementProfile Reference Documentation +url = http://qt-project.org/doc/qt-$QT_VER +version = $QT_VERSION + +examplesinstallpath = measurementprofile + +qhp.projects = QtMeasurementProfile + +qhp.QtMeasurementProfile.file = qtmeasurementprofile.qhp +qhp.QtMeasurementProfile.namespace = org.qt-project.qtmeasurementprofile.$QT_VERSION_TAG +qhp.QtMeasurementProfile.virtualFolder = qtmeasurementprofile +qhp.QtMeasurementProfile.indexTitle = Qt Measurement Profile +qhp.QtMeasurementProfile.indexRoot = + +qhp.QtMeasurementProfile.filterAttributes = qtmeasurementprofile $QT_VERSION qtrefdoc +qhp.QtMeasurementProfile.customFilters.Qt.name = QtMeasurementProfile $QT_VERSION +qhp.QtMeasurementProfile.customFilters.Qt.filterAttributes = qtmeasurementprofile $QT_VERSION + +qhp.QtMeasurementProfile.subprojects = classes +qhp.QtMeasurementProfile.subprojects.classes.title = C++ Classes +qhp.QtMeasurementProfile.subprojects.classes.indexTitle = Qt Measurement Profile C++ Classes +qhp.QtMeasurementProfile.subprojects.classes.selectors = class fake:headerfile +qhp.QtMeasurementProfile.subprojects.classes.sortPages = true +tagfile = ../../../doc/qtmeasurementprofile/qtmeasurementprofile.tags + +depends += qtcore qtdoc qtmodeling qtuml + +headerdirs += .. + +sourcedirs += .. \ + ../../../examples/measurementprofile/doc/src + +exampledirs += ../../../examples/measurementprofile \ + ../ \ + snippets + +imagedirs += images \ + ../../../examples/measurementprofile/doc/images + +navigation.landingpage = "Qt Measurement Profiles" +navigation.cppclassespage = "Qt Measurement Profile C++ Classes" diff --git a/src/measurementprofile/doc/snippets/code/doc_src_qtmeasurementprofile.cpp b/src/measurementprofile/doc/snippets/code/doc_src_qtmeasurementprofile.cpp new file mode 100644 index 00000000..f4769a25 --- /dev/null +++ b/src/measurementprofile/doc/snippets/code/doc_src_qtmeasurementprofile.cpp @@ -0,0 +1,43 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +//! [0] +#include <QtMeasurementProfile> +//! [0] diff --git a/src/measurementprofile/doc/snippets/code/doc_src_qtmeasurementprofile.pro b/src/measurementprofile/doc/snippets/code/doc_src_qtmeasurementprofile.pro new file mode 100644 index 00000000..301574ac --- /dev/null +++ b/src/measurementprofile/doc/snippets/code/doc_src_qtmeasurementprofile.pro @@ -0,0 +1,3 @@ +#! [0] +QT += measurementprofile +#! [0] diff --git a/src/measurementprofile/doc/src/qtmeasurementprofile.qdoc b/src/measurementprofile/doc/src/qtmeasurementprofile.qdoc new file mode 100644 index 00000000..b17b2f28 --- /dev/null +++ b/src/measurementprofile/doc/src/qtmeasurementprofile.qdoc @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: http://www.gnu.org/copyleft/fdl.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ +/*! + \page qtmeasurementprofile-index.html + \title Qt Measurement Profile + \brief Implements the DuSE profile for measuring architecture complexity. + + Qt Measurement Profile is an add-on module which implements a profile for measuring architecture complexity. + + \section1 Getting Started + To enable Qt Measurement Profile in a project, add this directive into the C++ files: + \code + #include <QtMeasurementProfile> + \endcode + To link against the Qt Measurement Profile module, add this line to the project file: + \code + QT += measurementprofile + \endcode + + \section1 Reference + These are links to the API reference materials. + \list + \li \l{Qt Measurement Profile C++ Classes}{C++ classes} + \endlist +*/ + +/*! + \module QtMeasurementProfile + \title Qt Measurement Profile C++ Classes + \ingroup modules + \brief Implements the DuSE profile for measuring architecture complexity. + + To include the definitions of the module's classes, use the + following directive: + + \snippet code/doc_src_qtmeasurementprofile.cpp 0 + + To link against the module, add this line to your \l qmake \c + .pro file: + + \snippet code/doc_src_qtmeasurementprofile.pro 0 +*/ diff --git a/src/measurementprofile/measurementprofile.pri b/src/measurementprofile/measurementprofile.pri new file mode 100644 index 00000000..c067d493 --- /dev/null +++ b/src/measurementprofile/measurementprofile.pri @@ -0,0 +1,16 @@ +HEADERS += \ + qtmeasurementprofileglobal.h \ + qtmeasurementprofilenamespace.h \ + qmeasurementprofileilfinterface.h \ + qmeasurementprofileeifinterface.h + +PRIVATE_HEADERS += \ + qobjects/qmeasurementprofileilfinterfaceobject_p.h \ + qobjects/qmeasurementprofileeifinterfaceobject_p.h + +SOURCES += \ + qtmeasurementprofilenamespace.cpp \ + qobjects/qmeasurementprofileilfinterfaceobject.cpp \ + qmeasurementprofileilfinterface.cpp \ + qobjects/qmeasurementprofileeifinterfaceobject.cpp \ + qmeasurementprofileeifinterface.cpp diff --git a/src/measurementprofile/measurementprofile.pro b/src/measurementprofile/measurementprofile.pro new file mode 100644 index 00000000..d8702f5f --- /dev/null +++ b/src/measurementprofile/measurementprofile.pro @@ -0,0 +1,12 @@ +load(qt_build_config) + +TARGET = QtMeasurementProfile +QT = core-private modeling-private uml + +QMAKE_DOCS = $$PWD/doc/qtmeasurementprofile.qdocconf + +load(qt_module) + +include(measurementprofile.pri) + +HEADERS += $$PUBLIC_HEADERS $$PRIVATE_HEADERS diff --git a/src/measurementprofile/qmeasurementprofileeifinterface.cpp b/src/measurementprofile/qmeasurementprofileeifinterface.cpp new file mode 100644 index 00000000..0b96bc3c --- /dev/null +++ b/src/measurementprofile/qmeasurementprofileeifinterface.cpp @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include "qmeasurementprofileeifinterface.h" + +#include "private/qmeasurementprofileeifinterfaceobject_p.h" + +#include <QtUml/QUmlInterface> + +QT_BEGIN_NAMESPACE + +QMeasurementProfileEIFInterface::QMeasurementProfileEIFInterface(bool createQModelingObject) : + _base_Interface(0) +{ + if (createQModelingObject) + _qModelingObject = qobject_cast<QModelingObject *>(new QMeasurementProfileEIFInterfaceObject(this)); +} + +/*! + Destroys the QMeasurementProfileEIFInterface. + */ +QMeasurementProfileEIFInterface::~QMeasurementProfileEIFInterface() +{ + QModelingElement::deleteQModelingObject(); +} + +QModelingElement *QMeasurementProfileEIFInterface::clone() const +{ + QMeasurementProfileEIFInterface *c = new QMeasurementProfileEIFInterface; + c->asQModelingObject()->setObjectName(this->asQModelingObject()->objectName()); + c->asQModelingObject()->setProperty("role", this->asQModelingObject()->property("role")); + return c; +} + +// OWNED ATTRIBUTES + +QUmlInterface *QMeasurementProfileEIFInterface::base_Interface() const +{ + // This is a read-write association end + + return _base_Interface; +} + +void QMeasurementProfileEIFInterface::setBase_Interface(QUmlInterface *base_Interface) +{ + // This is a read-write association end + + if (_base_Interface != base_Interface) { + _base_Interface = base_Interface; + if (base_Interface && base_Interface->asQModelingObject() && this->asQModelingObject()) + QObject::connect(base_Interface->asQModelingObject(), SIGNAL(destroyed()), this->asQModelingObject(), SLOT(setBase_Interface())); + } +} + +QT_END_NAMESPACE + diff --git a/src/measurementprofile/qmeasurementprofileeifinterface.h b/src/measurementprofile/qmeasurementprofileeifinterface.h new file mode 100644 index 00000000..b12316e6 --- /dev/null +++ b/src/measurementprofile/qmeasurementprofileeifinterface.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QMEASUREMENTPROFILEEIFINTERFACE_H +#define QMEASUREMENTPROFILEEIFINTERFACE_H + +#include <QtMeasurementProfile/QtMeasurementProfileGlobal> + +#include <QtModeling/QModelingElement> + +QT_BEGIN_NAMESPACE + +QT_MODULE(QtMeasurementProfile) + +class QUmlInterface; + +class Q_MEASUREMENTPROFILE_EXPORT QMeasurementProfileEIFInterface : public QModelingElement +{ +public: + explicit QMeasurementProfileEIFInterface(bool createQModelingObject = true); + virtual ~QMeasurementProfileEIFInterface(); + + virtual QModelingElement *clone() const; + + // Owned attributes + QUmlInterface *base_Interface() const; + void setBase_Interface(QUmlInterface *base_Interface); + +protected: + QUmlInterface *_base_Interface; +}; + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE(QMeasurementProfileEIFInterface) *) + +#endif // QMEASUREMENTPROFILEEIFINTERFACE_H + diff --git a/src/measurementprofile/qmeasurementprofileilfinterface.cpp b/src/measurementprofile/qmeasurementprofileilfinterface.cpp new file mode 100644 index 00000000..2e5356bb --- /dev/null +++ b/src/measurementprofile/qmeasurementprofileilfinterface.cpp @@ -0,0 +1,93 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include "qmeasurementprofileilfinterface.h" + +#include "private/qmeasurementprofileilfinterfaceobject_p.h" + +#include <QtUml/QUmlInterface> + +QT_BEGIN_NAMESPACE + +QMeasurementProfileILFInterface::QMeasurementProfileILFInterface(bool createQModelingObject) : + _base_Interface(0) +{ + if (createQModelingObject) + _qModelingObject = qobject_cast<QModelingObject *>(new QMeasurementProfileILFInterfaceObject(this)); +} + +/*! + Destroys the QMeasurementProfileILFInterface. + */ +QMeasurementProfileILFInterface::~QMeasurementProfileILFInterface() +{ + QModelingElement::deleteQModelingObject(); +} + +QModelingElement *QMeasurementProfileILFInterface::clone() const +{ + QMeasurementProfileILFInterface *c = new QMeasurementProfileILFInterface; + c->asQModelingObject()->setObjectName(this->asQModelingObject()->objectName()); + c->asQModelingObject()->setProperty("role", this->asQModelingObject()->property("role")); + return c; +} + +// OWNED ATTRIBUTES + +QUmlInterface *QMeasurementProfileILFInterface::base_Interface() const +{ + // This is a read-write association end + + return _base_Interface; +} + +void QMeasurementProfileILFInterface::setBase_Interface(QUmlInterface *base_Interface) +{ + // This is a read-write association end + + if (_base_Interface != base_Interface) { + _base_Interface = base_Interface; + if (base_Interface && base_Interface->asQModelingObject() && this->asQModelingObject()) + QObject::connect(base_Interface->asQModelingObject(), SIGNAL(destroyed()), this->asQModelingObject(), SLOT(setBase_Interface())); + } +} + +QT_END_NAMESPACE + diff --git a/src/measurementprofile/qmeasurementprofileilfinterface.h b/src/measurementprofile/qmeasurementprofileilfinterface.h new file mode 100644 index 00000000..a06dfdac --- /dev/null +++ b/src/measurementprofile/qmeasurementprofileilfinterface.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QMEASUREMENTPROFILEILFINTERFACE_H +#define QMEASUREMENTPROFILEILFINTERFACE_H + +#include <QtMeasurementProfile/QtMeasurementProfileGlobal> + +#include <QtModeling/QModelingElement> + +QT_BEGIN_NAMESPACE + +QT_MODULE(QtMeasurementProfile) + +class QUmlInterface; + +class Q_MEASUREMENTPROFILE_EXPORT QMeasurementProfileILFInterface : public QModelingElement +{ +public: + explicit QMeasurementProfileILFInterface(bool createQModelingObject = true); + virtual ~QMeasurementProfileILFInterface(); + + virtual QModelingElement *clone() const; + + // Owned attributes + QUmlInterface *base_Interface() const; + void setBase_Interface(QUmlInterface *base_Interface); + +protected: + QUmlInterface *_base_Interface; +}; + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE(QMeasurementProfileILFInterface) *) + +#endif // QMEASUREMENTPROFILEILFINTERFACE_H + diff --git a/src/measurementprofile/qobjects/qmeasurementprofileeifinterfaceobject.cpp b/src/measurementprofile/qobjects/qmeasurementprofileeifinterfaceobject.cpp new file mode 100644 index 00000000..46bb9fe8 --- /dev/null +++ b/src/measurementprofile/qobjects/qmeasurementprofileeifinterfaceobject.cpp @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include "qmeasurementprofileeifinterfaceobject_p.h" +#include "private/qmodelingobject_p.h" + +#include <QtMeasurementProfile/QMeasurementProfileEIFInterface> +#include <QtUml/QUmlInterface> + +QT_BEGIN_NAMESPACE + +QMeasurementProfileEIFInterfaceObject::QMeasurementProfileEIFInterfaceObject(QMeasurementProfileEIFInterface *modelingElement) +{ + setProperty("modelingElement", QVariant::fromValue(static_cast<QModelingElement *>(modelingElement))); + setGroupProperties(); + setPropertyData(); +} + +// OWNED ATTRIBUTES [EIFInterface] + +QObject *QMeasurementProfileEIFInterfaceObject::base_Interface() const +{ + if (!qmodelingelementproperty_cast<QMeasurementProfileEIFInterface *>(this)->base_Interface()) + return 0; + else + return qmodelingelementproperty_cast<QMeasurementProfileEIFInterface *>(this)->base_Interface()->asQModelingObject(); +} + +// SLOTS FOR OWNED ATTRIBUTES [EIFInterface] + +void QMeasurementProfileEIFInterfaceObject::setBase_Interface(QObject *base_Interface) +{ + qmodelingelementproperty_cast<QMeasurementProfileEIFInterface *>(this)->setBase_Interface(qmodelingelementproperty_cast<QUmlInterface *>(base_Interface)); + emit base_InterfaceChanged(this->base_Interface()); +} + + +void QMeasurementProfileEIFInterfaceObject::setGroupProperties() +{ + Q_D(QModelingObject); + const QMetaObject *metaObject = this->metaObject(); + + d->propertyGroups << QStringLiteral("QObject"); + d->groupProperties.insert(QStringLiteral("QObject"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("objectName")))); + + d->propertyGroups << QStringLiteral("QMeasurementProfileEIFInterface"); + d->groupProperties.insert(QStringLiteral("QMeasurementProfileEIFInterface"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("base_Interface")))); +} + +void QMeasurementProfileEIFInterfaceObject::setPropertyData() +{ + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileEIFInterface, base_Interface, AggregationRole, QStringLiteral("none")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileEIFInterface, base_Interface, PropertyClassRole, QStringLiteral("QMeasurementProfileEIFInterface")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileEIFInterface, base_Interface, PropertyTypeRole, QStringLiteral("QUmlInterface *")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileEIFInterface, base_Interface, IsDerivedRole, false); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileEIFInterface, base_Interface, IsDerivedUnionRole, false); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileEIFInterface, base_Interface, DocumentationRole, QStringLiteral("")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileEIFInterface, base_Interface, RedefinedPropertiesRole, QStringLiteral("")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileEIFInterface, base_Interface, SubsettedPropertiesRole, QStringLiteral("")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileEIFInterface, base_Interface, OppositeEndRole, QStringLiteral("")); + +} + +QT_END_NAMESPACE + diff --git a/src/measurementprofile/qobjects/qmeasurementprofileeifinterfaceobject_p.h b/src/measurementprofile/qobjects/qmeasurementprofileeifinterfaceobject_p.h new file mode 100644 index 00000000..30f26b53 --- /dev/null +++ b/src/measurementprofile/qobjects/qmeasurementprofileeifinterfaceobject_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QMEASUREMENTPROFILEEIFINTERFACEOBJECT_H +#define QMEASUREMENTPROFILEEIFINTERFACEOBJECT_H + +#include <QtMeasurementProfile/QtMeasurementProfileGlobal> + +#include <QtModeling/QModelingObject> + +QT_BEGIN_NAMESPACE + +QT_MODULE(QtMeasurementProfile) + +class QMeasurementProfileEIFInterface; +class QModelingObjectPrivate; +class Q_MEASUREMENTPROFILE_EXPORT QMeasurementProfileEIFInterfaceObject : public QModelingObject +{ + Q_OBJECT + Q_DISABLE_COPY(QMeasurementProfileEIFInterfaceObject) + Q_DECLARE_PRIVATE(QModelingObject) + + // Properties [EIFInterface] + Q_PROPERTY(QObject * base_Interface READ base_Interface WRITE setBase_Interface NOTIFY base_InterfaceChanged) + +public: + Q_INVOKABLE explicit QMeasurementProfileEIFInterfaceObject(QMeasurementProfileEIFInterface *modelingElement); + + // Owned attributes [EIFInterface] + Q_INVOKABLE QObject *base_Interface() const; + +public Q_SLOTS: + + // Slots for owned attributes [EIFInterface] + void setBase_Interface(QObject *base_Interface = 0); + +Q_SIGNALS: + + // Signals for owned attributes [EIFInterface] + void base_InterfaceChanged(QObject *base_Interface); + +protected: + virtual void setGroupProperties(); + virtual void setPropertyData(); +}; + +QT_END_NAMESPACE + +#endif // QMEASUREMENTPROFILEEIFINTERFACEOBJECT_H + diff --git a/src/measurementprofile/qobjects/qmeasurementprofileilfinterfaceobject.cpp b/src/measurementprofile/qobjects/qmeasurementprofileilfinterfaceobject.cpp new file mode 100644 index 00000000..1eb968c9 --- /dev/null +++ b/src/measurementprofile/qobjects/qmeasurementprofileilfinterfaceobject.cpp @@ -0,0 +1,102 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include "qmeasurementprofileilfinterfaceobject_p.h" +#include "private/qmodelingobject_p.h" + +#include <QtMeasurementProfile/QMeasurementProfileILFInterface> +#include <QtUml/QUmlInterface> + +QT_BEGIN_NAMESPACE + +QMeasurementProfileILFInterfaceObject::QMeasurementProfileILFInterfaceObject(QMeasurementProfileILFInterface *modelingElement) +{ + setProperty("modelingElement", QVariant::fromValue(static_cast<QModelingElement *>(modelingElement))); + setGroupProperties(); + setPropertyData(); +} + +// OWNED ATTRIBUTES [ILFInterface] + +QObject *QMeasurementProfileILFInterfaceObject::base_Interface() const +{ + if (!qmodelingelementproperty_cast<QMeasurementProfileILFInterface *>(this)->base_Interface()) + return 0; + else + return qmodelingelementproperty_cast<QMeasurementProfileILFInterface *>(this)->base_Interface()->asQModelingObject(); +} + +// SLOTS FOR OWNED ATTRIBUTES [ILFInterface] + +void QMeasurementProfileILFInterfaceObject::setBase_Interface(QObject *base_Interface) +{ + qmodelingelementproperty_cast<QMeasurementProfileILFInterface *>(this)->setBase_Interface(qmodelingelementproperty_cast<QUmlInterface *>(base_Interface)); + emit base_InterfaceChanged(this->base_Interface()); +} + + +void QMeasurementProfileILFInterfaceObject::setGroupProperties() +{ + Q_D(QModelingObject); + const QMetaObject *metaObject = this->metaObject(); + + d->propertyGroups << QStringLiteral("QObject"); + d->groupProperties.insert(QStringLiteral("QObject"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("objectName")))); + + d->propertyGroups << QStringLiteral("QMeasurementProfileILFInterface"); + d->groupProperties.insert(QStringLiteral("QMeasurementProfileILFInterface"), new QMetaProperty(metaObject->property(metaObject->indexOfProperty("base_Interface")))); +} + +void QMeasurementProfileILFInterfaceObject::setPropertyData() +{ + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileILFInterface, base_Interface, AggregationRole, QStringLiteral("none")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileILFInterface, base_Interface, PropertyClassRole, QStringLiteral("QMeasurementProfileILFInterface")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileILFInterface, base_Interface, PropertyTypeRole, QStringLiteral("QUmlInterface *")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileILFInterface, base_Interface, IsDerivedRole, false); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileILFInterface, base_Interface, IsDerivedUnionRole, false); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileILFInterface, base_Interface, DocumentationRole, QStringLiteral("")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileILFInterface, base_Interface, RedefinedPropertiesRole, QStringLiteral("")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileILFInterface, base_Interface, SubsettedPropertiesRole, QStringLiteral("")); + Q_DECLARE_METAPROPERTY_INFO(QMeasurementProfileILFInterface, base_Interface, OppositeEndRole, QStringLiteral("")); + +} + +QT_END_NAMESPACE + diff --git a/src/measurementprofile/qobjects/qmeasurementprofileilfinterfaceobject_p.h b/src/measurementprofile/qobjects/qmeasurementprofileilfinterfaceobject_p.h new file mode 100644 index 00000000..75e15d31 --- /dev/null +++ b/src/measurementprofile/qobjects/qmeasurementprofileilfinterfaceobject_p.h @@ -0,0 +1,87 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QMEASUREMENTPROFILEILFINTERFACEOBJECT_H +#define QMEASUREMENTPROFILEILFINTERFACEOBJECT_H + +#include <QtMeasurementProfile/QtMeasurementProfileGlobal> + +#include <QtModeling/QModelingObject> + +QT_BEGIN_NAMESPACE + +QT_MODULE(QtMeasurementProfile) + +class QMeasurementProfileILFInterface; +class QModelingObjectPrivate; +class Q_MEASUREMENTPROFILE_EXPORT QMeasurementProfileILFInterfaceObject : public QModelingObject +{ + Q_OBJECT + Q_DISABLE_COPY(QMeasurementProfileILFInterfaceObject) + Q_DECLARE_PRIVATE(QModelingObject) + + // Properties [ILFInterface] + Q_PROPERTY(QObject * base_Interface READ base_Interface WRITE setBase_Interface NOTIFY base_InterfaceChanged) + +public: + Q_INVOKABLE explicit QMeasurementProfileILFInterfaceObject(QMeasurementProfileILFInterface *modelingElement); + + // Owned attributes [ILFInterface] + Q_INVOKABLE QObject *base_Interface() const; + +public Q_SLOTS: + + // Slots for owned attributes [ILFInterface] + void setBase_Interface(QObject *base_Interface = 0); + +Q_SIGNALS: + + // Signals for owned attributes [ILFInterface] + void base_InterfaceChanged(QObject *base_Interface); + +protected: + virtual void setGroupProperties(); + virtual void setPropertyData(); +}; + +QT_END_NAMESPACE + +#endif // QMEASUREMENTPROFILEILFINTERFACEOBJECT_H + diff --git a/src/measurementprofile/qtmeasurementprofileglobal.h b/src/measurementprofile/qtmeasurementprofileglobal.h new file mode 100644 index 00000000..f5032fbc --- /dev/null +++ b/src/measurementprofile/qtmeasurementprofileglobal.h @@ -0,0 +1,66 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QTMEASUREMENTPROFILEGLOBAL_H +#define QTMEASUREMENTPROFILEGLOBAL_H + +#include <QtCore/QtGlobal> + +#include <QtCore/QMetaType> +#include <QtCore/QList> +#include <QtCore/QSet> +#include <QtCore/QString> + +QT_BEGIN_NAMESPACE + +#ifndef QT_STATIC +# if defined(QT_BUILD_MEASUREMENTPROFILE_LIB) +# define Q_MEASUREMENTPROFILE_EXPORT Q_DECL_EXPORT +# else +# define Q_MEASUREMENTPROFILE_EXPORT Q_DECL_IMPORT +# endif +#else +# define Q_MEASUREMENTPROFILE_EXPORT +#endif + +QT_END_NAMESPACE + +#endif // QTMEASUREMENTPROFILEGLOBAL_H + diff --git a/src/measurementprofile/qtmeasurementprofilenamespace.cpp b/src/measurementprofile/qtmeasurementprofilenamespace.cpp new file mode 100644 index 00000000..13dfd1b9 --- /dev/null +++ b/src/measurementprofile/qtmeasurementprofilenamespace.cpp @@ -0,0 +1,45 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#include "qtmeasurementprofilenamespace.h" + +QT_BEGIN_NAMESPACE +QT_END_NAMESPACE + diff --git a/src/measurementprofile/qtmeasurementprofilenamespace.h b/src/measurementprofile/qtmeasurementprofilenamespace.h new file mode 100644 index 00000000..eedaed1e --- /dev/null +++ b/src/measurementprofile/qtmeasurementprofilenamespace.h @@ -0,0 +1,62 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Sandro S. Andrade <sandroandrade@kde.org> +** Contact: http://www.qt-project.org/legal +** +** This file is part of the QtMeasurementProfile module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** 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 +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Digia gives you certain additional +** rights. These rights are described in the Digia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3.0 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU General Public License version 3.0 requirements will be +** met: http://www.gnu.org/copyleft/gpl.html. +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ +#ifndef QTMEASUREMENTPROFILENAMESPACE_H +#define QTMEASUREMENTPROFILENAMESPACE_H + +#include <QtMeasurementProfile/QtMeasurementProfileGlobal> + +#include <QtCore/QObject> + +QT_BEGIN_NAMESPACE + +QT_MODULE(QtMeasurementProfile) + +class Q_MEASUREMENTPROFILE_EXPORT QtMeasurementProfile : public QObject +{ + Q_OBJECT + +public: +}; + +QT_END_NAMESPACE + +#endif // QTMEASUREMENTPROFILENAMESPACE_H + |