QElectroTech
0.70
|
The ElementTextItemGroup class This class represent a group of element text Texts in the group can be aligned left / center /right. More...
#include <elementtextitemgroup.h>
Signals | |
void | rotationChanged (qreal) |
void | verticalAdjustmentChanged (int) |
void | alignmentChanged (Qt::Alignment) |
void | nameChanged (QString) |
void | holdToBottomPageChanged (bool) |
void | xChanged () |
void | yChanged () |
void | frameChanged (bool frame) |
Public Member Functions | |
ElementTextItemGroup (const QString &name, Element *parent) | |
ElementTextItemGroup::ElementTextItemGroup. More... | |
~ElementTextItemGroup () override | |
void | addToGroup (QGraphicsItem *item) |
ElementTextItemGroup::addToGroup. More... | |
void | removeFromGroup (QGraphicsItem *item) |
ElementTextItemGroup::removeFromGroup. More... | |
void | blockAlignmentUpdate (bool block) |
ElementTextItemGroup::blockAlignmentUpdate If true, the texts in this group are never aligned, moved, rotated etc... the texts stay as it was, until blockAlignmentUpdate is set to false. More... | |
void | setAlignment (Qt::Alignment alignement) |
ElementTextItemGroup::setAlignement Set the alignement of this group. More... | |
Qt::Alignment | alignment () const |
void | updateAlignment () |
ElementTextItemGroup::setAlignment Update the alignement of the items in this group, according to the current alignement. More... | |
int | verticalAdjustment () const |
void | setVerticalAdjustment (int v) |
ElementTextItemGroup::setVerticalAdjustment Set the value of the vertical adjustment to . The vertical adjutment is use to adjust the space between the texts of this group. More... | |
void | setName (QString name) |
ElementTextItemGroup::setName. More... | |
QString | name () const |
void | setHoldToBottomPage (bool hold) |
bool | holdToBottomPage () const |
void | setFrame (const bool frame) |
bool | frame () const |
QList< DynamicElementTextItem * > | texts () const |
ElementTextItemGroup::texts. More... | |
Diagram * | diagram () const |
ElementTextItemGroup::diagram. More... | |
Element * | parentElement () const |
ElementTextItemGroup::parentElement. More... | |
QDomElement | toXml (QDomDocument &dom_document) const |
ElementTextItemGroup::toXml Export data of this group to xml. More... | |
void | fromXml (QDomElement &dom_element) |
ElementTextItemGroup::fromXml Import data of this group from xml. More... | |
void | paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override |
ElementTextItemGroup::paint. More... | |
QRectF | boundingRect () const override |
ElementTextItemGroup::boundingRect. More... | |
void | setRotation (qreal angle) |
void | setPos (const QPointF &pos) |
void | setPos (qreal x, qreal y) |
Static Public Member Functions | |
static QString | xmlTaggName () |
Protected Member Functions | |
void | mousePressEvent (QGraphicsSceneMouseEvent *event) override |
ElementTextItemGroup::mousePressEvent. More... | |
void | mouseMoveEvent (QGraphicsSceneMouseEvent *event) override |
ElementTextItemGroup::mouseMoveEvent. More... | |
void | mouseReleaseEvent (QGraphicsSceneMouseEvent *event) override |
ElementTextItemGroup::mouseReleaseEvent. More... | |
void | mouseDoubleClickEvent (QGraphicsSceneMouseEvent *event) override |
void | keyPressEvent (QKeyEvent *event) override |
ElementTextItemGroup::keyPressEvent. More... | |
void | hoverEnterEvent (QGraphicsSceneHoverEvent *event) override |
void | hoverLeaveEvent (QGraphicsSceneHoverEvent *event) override |
Properties | |
QPointF | pos |
qreal | rotation |
int | verticalAdjustment |
Qt::Alignment | alignment |
QString | name |
bool | holdToBottomPage |
bool | frame |
Private Member Functions | |
void | updateXref () |
void | adjustSlaveXrefPos () |
void | autoPos () |
Private Attributes | |
Qt::Alignment | m_alignment = Qt::AlignJustify |
QString | m_name |
bool | m_first_move = true |
bool | m_hold_to_bottom_of_page = false |
bool | m_block_alignment_update = false |
bool | m_frame = false |
QPointF | m_initial_position |
int | m_vertical_adjustment = 0 |
CrossRefItem * | m_Xref_item = nullptr |
Element * | m_parent_element = nullptr |
QList< QMetaObject::Connection > | m_update_slave_Xref_connection |
QGraphicsTextItem * | m_slave_Xref_item = nullptr |
QMetaObject::Connection | m_XrefChanged_timer |
QMetaObject::Connection | m_linked_changed_timer |
The ElementTextItemGroup class This class represent a group of element text Texts in the group can be aligned left / center /right.
Definition at line 35 of file elementtextitemgroup.h.
ElementTextItemGroup::ElementTextItemGroup | ( | const QString & | name, |
Element * | parent | ||
) |
ElementTextItemGroup::ElementTextItemGroup.
parent |
Definition at line 42 of file elementtextitemgroup.cpp.
References Element::linkedElementChanged(), and updateXref().
|
override |
Definition at line 51 of file elementtextitemgroup.cpp.
void ElementTextItemGroup::addToGroup | ( | QGraphicsItem * | item | ) |
ElementTextItemGroup::addToGroup.
item |
Definition at line 58 of file elementtextitemgroup.cpp.
References DynamicElementTextItem::compositeTextChanged(), DiagramTextItem::fontChanged(), DynamicElementTextItem::infoNameChanged(), m_block_alignment_update, DynamicElementTextItem::plainTextChanged(), rotation, DynamicElementTextItem::textChanged(), DynamicElementTextItem::textFromChanged(), DynamicElementTextItem::textWidthChanged(), DynamicElementTextItem::Type, updateAlignment(), and updateXref().
Referenced by Element::addTextToGroup().
|
private |
Definition at line 766 of file elementtextitemgroup.cpp.
References boundingRect(), m_slave_Xref_item, and pos.
Referenced by updateAlignment(), and updateXref().
Qt::Alignment ElementTextItemGroup::alignment | ( | ) | const |
|
signal |
Referenced by setAlignment(), and DynamicElementTextModel::setConnection().
|
private |
Definition at line 774 of file elementtextitemgroup.cpp.
References XRefProperties::Bottom, centerToBottomDiagram(), QETProject::defaultXRefProperties(), diagram(), Element::kindInformations(), Element::linkType(), m_parent_element, Element::Master, XRefProperties::offset(), Diagram::project(), rotation, rotationChanged(), XRefProperties::snapTo(), and MasterElement::XrefBoundingRect().
Referenced by setHoldToBottomPage(), and updateAlignment().
void ElementTextItemGroup::blockAlignmentUpdate | ( | bool | block | ) |
ElementTextItemGroup::blockAlignmentUpdate If true, the texts in this group are never aligned, moved, rotated etc... the texts stay as it was, until blockAlignmentUpdate is set to false.
block |
Definition at line 122 of file elementtextitemgroup.cpp.
References m_block_alignment_update.
|
override |
ElementTextItemGroup::boundingRect.
Definition at line 490 of file elementtextitemgroup.cpp.
References texts().
Referenced by adjustSlaveXrefPos(), and paint().
Diagram * ElementTextItemGroup::diagram | ( | ) | const |
ElementTextItemGroup::diagram.
Definition at line 332 of file elementtextitemgroup.cpp.
Referenced by autoPos(), keyPressEvent(), mouseMoveEvent(), and mouseReleaseEvent().
bool ElementTextItemGroup::frame | ( | ) | const |
Referenced by setFrame().
|
signal |
Referenced by DynamicElementTextModel::setConnection(), and setFrame().
void ElementTextItemGroup::fromXml | ( | QDomElement & | dom_element | ) |
ElementTextItemGroup::fromXml Import data of this group from xml.
dom_element |
Definition at line 392 of file elementtextitemgroup.cpp.
References Element::addTextToGroup(), Element::dynamicTextItems(), QET::findInDomElement(), m_block_alignment_update, parentElement(), setAlignment(), setFrame(), setHoldToBottomPage(), setName(), setPos(), setRotation(), setVerticalAdjustment(), and xmlTaggName().
Referenced by Element::fromXml().
|
inline |
Definition at line 73 of file elementtextitemgroup.h.
References m_hold_to_bottom_of_page.
|
signal |
Referenced by DynamicElementTextModel::setConnection(), and setHoldToBottomPage().
|
overrideprotected |
Definition at line 666 of file elementtextitemgroup.cpp.
References m_slave_Xref_item.
|
overrideprotected |
Definition at line 677 of file elementtextitemgroup.cpp.
References m_slave_Xref_item.
|
overrideprotected |
ElementTextItemGroup::keyPressEvent.
event |
Definition at line 637 of file elementtextitemgroup.cpp.
References diagram(), m_alignment, setAlignment(), and Diagram::undoStack().
|
overrideprotected |
Definition at line 601 of file elementtextitemgroup.cpp.
References QetGraphicsItem::diagram(), Element::linkedElements(), Element::linkType(), m_slave_Xref_item, parentElement(), Diagram::showMe(), and Element::Slave.
|
overrideprotected |
ElementTextItemGroup::mouseMoveEvent.
event |
Definition at line 552 of file elementtextitemgroup.cpp.
References ElementTextsMover::beginMovement(), ElementTextsMover::continueMovement(), diagram(), Diagram::elementTextsMover(), m_first_move, m_initial_position, parentElement(), pos, Element::setHighlighted(), setPos(), and Diagram::snapToGrid().
|
overrideprotected |
ElementTextItemGroup::mousePressEvent.
event |
Definition at line 536 of file elementtextitemgroup.cpp.
References m_first_move.
|
overrideprotected |
ElementTextItemGroup::mouseReleaseEvent.
event |
Definition at line 588 of file elementtextitemgroup.cpp.
References diagram(), Diagram::elementTextsMover(), ElementTextsMover::endMovement(), parentElement(), and Element::setHighlighted().
|
inline |
|
signal |
Referenced by setName().
|
override |
painter | |
option | |
widget |
Definition at line 438 of file elementtextitemgroup.cpp.
References boundingRect(), m_frame, QET::Icons::ro, and texts().
Element * ElementTextItemGroup::parentElement | ( | ) | const |
ElementTextItemGroup::parentElement.
Definition at line 344 of file elementtextitemgroup.cpp.
References Element::Type.
Referenced by Element::addTextGroup(), DeleteQGraphicsItemCommand::DeleteQGraphicsItemCommand(), fromXml(), mouseDoubleClickEvent(), mouseMoveEvent(), mouseReleaseEvent(), and DeleteQGraphicsItemCommand::redo().
void ElementTextItemGroup::removeFromGroup | ( | QGraphicsItem * | item | ) |
ElementTextItemGroup::removeFromGroup.
item |
Definition at line 89 of file elementtextitemgroup.cpp.
References DynamicElementTextItem::compositeTextChanged(), DiagramTextItem::fontChanged(), DynamicElementTextItem::infoNameChanged(), DynamicElementTextItem::plainTextChanged(), rotation, DynamicElementTextItem::textChanged(), DynamicElementTextItem::textFromChanged(), DynamicElementTextItem::textWidthChanged(), updateAlignment(), and updateXref().
Referenced by Element::removeTextFromGroup().
|
signal |
Referenced by autoPos(), DynamicElementTextModel::setConnection(), and setRotation().
void ElementTextItemGroup::setAlignment | ( | Qt::Alignment | alignement | ) |
ElementTextItemGroup::setAlignement Set the alignement of this group.
alignement |
Definition at line 132 of file elementtextitemgroup.cpp.
References alignmentChanged(), m_alignment, and updateAlignment().
Referenced by fromXml(), Element::fromXml(), and keyPressEvent().
void ElementTextItemGroup::setFrame | ( | const bool | frame | ) |
Definition at line 302 of file elementtextitemgroup.cpp.
References frame(), frameChanged(), and m_frame.
Referenced by fromXml().
void ElementTextItemGroup::setHoldToBottomPage | ( | bool | hold | ) |
Definition at line 261 of file elementtextitemgroup.cpp.
References autoPos(), QetGraphicsItem::diagram(), holdToBottomPageChanged(), Element::linkedElementChanged(), Element::linkType(), m_hold_to_bottom_of_page, m_linked_changed_timer, m_parent_element, m_XrefChanged_timer, Element::Master, Diagram::project(), and QETProject::XRefPropertiesChanged().
Referenced by fromXml(), and Element::fromXml().
void ElementTextItemGroup::setName | ( | QString | name | ) |
ElementTextItemGroup::setName.
name | Set the name of this group |
Definition at line 255 of file elementtextitemgroup.cpp.
References m_name, name(), and nameChanged().
Referenced by fromXml().
void ElementTextItemGroup::setPos | ( | const QPointF & | pos | ) |
Definition at line 512 of file elementtextitemgroup.cpp.
References pos, xChanged(), and yChanged().
Referenced by fromXml(), Element::fromXml(), mouseMoveEvent(), and updateAlignment().
void ElementTextItemGroup::setPos | ( | qreal | x, |
qreal | y | ||
) |
Definition at line 522 of file elementtextitemgroup.cpp.
References pos, xChanged(), and yChanged().
void ElementTextItemGroup::setRotation | ( | qreal | angle | ) |
Definition at line 506 of file elementtextitemgroup.cpp.
References rotationChanged().
Referenced by fromXml(), Element::fromXml(), and updateAlignment().
void ElementTextItemGroup::setVerticalAdjustment | ( | int | v | ) |
ElementTextItemGroup::setVerticalAdjustment Set the value of the vertical adjustment to . The vertical adjutment is use to adjust the space between the texts of this group.
v |
Definition at line 243 of file elementtextitemgroup.cpp.
References m_vertical_adjustment, updateAlignment(), and verticalAdjustmentChanged().
Referenced by fromXml(), and Element::fromXml().
QList< DynamicElementTextItem * > ElementTextItemGroup::texts | ( | ) | const |
Definition at line 317 of file elementtextitemgroup.cpp.
References DynamicElementTextItem::Type.
Referenced by DynamicElementTextModel::addGroup(), AlignmentTextsGroupCommand::AlignmentTextsGroupCommand(), boundingRect(), paint(), Element::removeTextFromGroup(), RemoveTextsGroupCommand::RemoveTextsGroupCommand(), toXml(), updateAlignment(), and updateXref().
QDomElement ElementTextItemGroup::toXml | ( | QDomDocument & | dom_document | ) | const |
ElementTextItemGroup::toXml Export data of this group to xml.
dom_document |
Definition at line 358 of file elementtextitemgroup.cpp.
References m_alignment, m_frame, m_hold_to_bottom_of_page, m_name, m_vertical_adjustment, pos, rotation, texts(), and xmlTaggName().
void ElementTextItemGroup::updateAlignment | ( | ) |
ElementTextItemGroup::setAlignment Update the alignement of the items in this group, according to the current alignement.
alignement |
Definition at line 150 of file elementtextitemgroup.cpp.
References adjustSlaveXrefPos(), CrossRefItem::autoPos(), autoPos(), m_alignment, m_block_alignment_update, m_hold_to_bottom_of_page, m_slave_Xref_item, m_vertical_adjustment, m_Xref_item, pos, rotation, setPos(), setRotation(), sorting(), and texts().
Referenced by addToGroup(), removeFromGroup(), setAlignment(), and setVerticalAdjustment().
|
private |
Definition at line 685 of file elementtextitemgroup.cpp.
References adjustSlaveXrefPos(), CrossRefItem::autoPos(), DynamicElementTextItem::CompositeText, QETProject::defaultXRefProperties(), QetGraphicsItem::diagram(), QETProject::diagramRemoved(), QETApp::diagramTextsFont(), DynamicElementTextItem::ElementInfo, Element::elementInfoChange(), autonum::AssignVariables::formulaToLabel(), Element::kindInformations(), XRefProperties::Label, Element::linkedElements(), Element::linkType(), m_parent_element, m_slave_Xref_item, m_update_slave_Xref_connection, m_Xref_item, Element::Master, Diagram::project(), QETProject::projectDiagramsOrderChanged(), Element::rSequenceStruct(), Element::Slave, XRefProperties::slaveLabel(), XRefProperties::snapTo(), texts(), and QETProject::XRefPropertiesChanged().
Referenced by addToGroup(), ElementTextItemGroup(), and removeFromGroup().
|
inline |
Definition at line 68 of file elementtextitemgroup.h.
References m_vertical_adjustment.
|
signal |
Referenced by DynamicElementTextModel::setConnection(), and setVerticalAdjustment().
|
signal |
Referenced by DynamicElementTextModel::setConnection(), and setPos().
|
inlinestatic |
Definition at line 82 of file elementtextitemgroup.h.
Referenced by fromXml(), Element::fromXml(), and toXml().
|
signal |
Referenced by DynamicElementTextModel::setConnection(), and setPos().
|
private |
Definition at line 105 of file elementtextitemgroup.h.
Referenced by keyPressEvent(), setAlignment(), toXml(), and updateAlignment().
|
private |
Definition at line 109 of file elementtextitemgroup.h.
Referenced by addToGroup(), blockAlignmentUpdate(), fromXml(), and updateAlignment().
|
private |
Definition at line 107 of file elementtextitemgroup.h.
Referenced by mouseMoveEvent(), and mousePressEvent().
|
private |
Definition at line 110 of file elementtextitemgroup.h.
Referenced by paint(), setFrame(), and toXml().
|
private |
Definition at line 108 of file elementtextitemgroup.h.
Referenced by holdToBottomPage(), setHoldToBottomPage(), toXml(), and updateAlignment().
|
private |
Definition at line 111 of file elementtextitemgroup.h.
Referenced by mouseMoveEvent().
|
private |
Definition at line 117 of file elementtextitemgroup.h.
Referenced by setHoldToBottomPage().
|
private |
Definition at line 106 of file elementtextitemgroup.h.
|
private |
Definition at line 114 of file elementtextitemgroup.h.
Referenced by autoPos(), setHoldToBottomPage(), and updateXref().
|
private |
Definition at line 116 of file elementtextitemgroup.h.
Referenced by adjustSlaveXrefPos(), hoverEnterEvent(), hoverLeaveEvent(), mouseDoubleClickEvent(), updateAlignment(), and updateXref().
|
private |
Definition at line 115 of file elementtextitemgroup.h.
Referenced by updateXref().
|
private |
Definition at line 112 of file elementtextitemgroup.h.
Referenced by setVerticalAdjustment(), toXml(), updateAlignment(), and verticalAdjustment().
|
private |
Definition at line 113 of file elementtextitemgroup.h.
Referenced by updateAlignment(), and updateXref().
|
private |
Definition at line 117 of file elementtextitemgroup.h.
Referenced by setHoldToBottomPage().
|
readwrite |
Definition at line 42 of file elementtextitemgroup.h.
Referenced by DynamicElementTextModel::addGroup(), DynamicElementTextModel::undoForEditedGroup(), and DynamicElementTextModel::updateDataFromGroup().
|
readwrite |
Definition at line 45 of file elementtextitemgroup.h.
Referenced by DynamicElementTextModel::addGroup(), DynamicElementTextModel::undoForEditedGroup(), and DynamicElementTextModel::updateDataFromGroup().
|
readwrite |
Definition at line 44 of file elementtextitemgroup.h.
Referenced by DynamicElementTextModel::addGroup(), DynamicElementTextModel::enableGroupRotationAndPos(), DynamicElementTextModel::undoForEditedGroup(), and DynamicElementTextModel::updateDataFromGroup().
|
readwrite |
Definition at line 43 of file elementtextitemgroup.h.
Referenced by DynamicElementTextModel::addGroup(), DynamicElementTextModel::undoForEditedGroup(), and DynamicElementTextModel::updateDataFromGroup().
|
readwrite |
Definition at line 39 of file elementtextitemgroup.h.
Referenced by DynamicElementTextModel::addGroup(), adjustSlaveXrefPos(), mouseMoveEvent(), setPos(), toXml(), DynamicElementTextModel::undoForEditedGroup(), updateAlignment(), and DynamicElementTextModel::updateDataFromGroup().
|
readwrite |
Definition at line 40 of file elementtextitemgroup.h.
Referenced by DynamicElementTextModel::addGroup(), addToGroup(), autoPos(), removeFromGroup(), toXml(), DynamicElementTextModel::undoForEditedGroup(), updateAlignment(), and DynamicElementTextModel::updateDataFromGroup().
|
readwrite |
Definition at line 41 of file elementtextitemgroup.h.
Referenced by DynamicElementTextModel::addGroup(), DynamicElementTextModel::undoForEditedGroup(), and DynamicElementTextModel::updateDataFromGroup().