14 #include <QAbstractProxyModel>
34 m_source->disconnect(
this);
40 this, &ConstraintProxy::slotSourceConstraintAdded);
42 this, &ConstraintProxy::slotSourceConstraintRemoved);
48 m_destination->disconnect(
this);
54 this, &ConstraintProxy::slotDestinationConstraintAdded);
56 this, &ConstraintProxy::slotDestinationConstraintRemoved);
64 m_proxy->disconnect(
this);
67 connect(m_proxy, &QAbstractProxyModel::layoutChanged,
this, &ConstraintProxy::slotLayoutChanged);
68 connect(m_proxy, &QAbstractProxyModel::modelReset,
this, &ConstraintProxy::slotLayoutChanged);
85 void ConstraintProxy::copyFromSource()
88 m_destination->clear();
91 const QList<Constraint> lst = m_source->constraints();
93 Constraint temp(m_proxy->mapFromSource(c.startIndex()), m_proxy->mapFromSource(c.endIndex()),
94 c.type(), c.relationType(), c.dataMap());
95 m_destination->addConstraint(temp);
105 m_destination->addConstraint(temp);
114 m_destination->removeConstraint(temp);
123 m_source->addConstraint(temp);
132 m_source->removeConstraint(temp);
136 void ConstraintProxy::slotLayoutChanged()
141 #include "moc_kdganttconstraintproxy.cpp"
The ConstraintModel keeps track of the interdependencies between gantt items in a View.
void constraintRemoved(const KDGantt::Constraint &)
void constraintAdded(const KDGantt::Constraint &)
void setProxyModel(QAbstractProxyModel *proxy)
ConstraintProxy(QObject *parent=nullptr)
QAbstractProxyModel * proxyModel() const
~ConstraintProxy() override
ConstraintModel * sourceModel() const
void setDestinationModel(ConstraintModel *dest)
void setSourceModel(ConstraintModel *src)
ConstraintModel * destinationModel() const
A class used to represent a dependency.
QModelIndex endIndex() const
Type type() const
This is unused for now.
RelationType relationType() const
This is unused for now.
QModelIndex startIndex() const
QMap< int, QVariant > dataMap() const