18#ifndef LINKELEMENTCOMMAND_H
19#define LINKELEMENTCOMMAND_H
21#include <QUndoCommand>
37 int id()
const override {
return 2;}
38 bool mergeWith(
const QUndoCommand *other)
override;
42 void setLink (
const QList<Element *>& element_list);
44 void unlink (QList<Element *> element_list);
53 void setUpNewLink (
const QList<Element *> &element_list,
bool already_link);
54 void makeLink (
const QList <Element *> &element_list);
void redo() override
LinkElementCommand::redo Redo this command.
Definition linkelementcommand.cpp:310
QList< Element * > m_linked_before
Definition linkelementcommand.h:61
void unlink(QList< Element * > element_list)
LinkElementCommand::unlink Unlink all elements of element_list from the edited element.
Definition linkelementcommand.cpp:209
void unlinkAll()
LinkElementCommand::unlinkAll Unlink all element of the edited element.
Definition linkelementcommand.cpp:219
void setLink(const QList< Element * > &element_list)
LinkElementCommand::setLink Replace all linked elements of edited element by elements stored in eleme...
Definition linkelementcommand.cpp:186
static bool isLinkable(Element *element_a, Element *element_b, bool already_linked=false)
LinkElementCommand::isLinkable.
Definition linkelementcommand.cpp:103
void setUpNewLink(const QList< Element * > &element_list, bool already_link)
LinkElementCommand::setUpNewLink Update the content of m_link_after with the content of element_list....
Definition linkelementcommand.cpp:358
void undo() override
LinkElementCommand::undo Undo this command.
Definition linkelementcommand.cpp:228
Element * m_element
Definition linkelementcommand.h:57
void setGroupIndices(const QMap< Element *, int > &indices)
Definition linkelementcommand.h:47
void setGroupIndex(int index)
Definition linkelementcommand.h:46
int m_group_index
Definition linkelementcommand.h:59
bool m_first_redo
Definition linkelementcommand.h:58
bool mergeWith(const QUndoCommand *other) override
LinkElementCommand::mergeWith.
Definition linkelementcommand.cpp:82
void makeLink(const QList< Element * > &element_list)
LinkElementCommand::makeLink Make the link between m_element and element_list; This method unlinks el...
Definition linkelementcommand.cpp:388
LinkElementCommand(Element *element_, QUndoCommand *parent=nullptr)
LinkElementCommand::LinkElementCommand Constructor.
Definition linkelementcommand.cpp:68
QMap< Element *, int > m_group_indices
Definition linkelementcommand.h:60
int id() const override
Definition linkelementcommand.h:37
QList< Element * > m_linked_after
Definition linkelementcommand.h:62