Minor : add QGIUtility namespace

This commit is contained in:
joshua
2022-07-15 20:48:06 +02:00
parent 2a307a74da
commit d9a0b03e23
4 changed files with 21 additions and 10 deletions

View File

@@ -253,13 +253,13 @@ void CrossRefItem::autoPos()
{
//We calcul the position according to the snapTo of the xrefproperties
if (m_properties.snapTo() == XRefProperties::Bottom)
centerToBottomDiagram(this,
QGIUtility::centerToBottomDiagram(this,
m_element,
m_properties.offset() <= 40
? 5
: m_properties.offset());
else
centerToParentBottom(this);
QGIUtility::centerToParentBottom(this);
}
/**

View File

@@ -861,7 +861,7 @@ void ElementTextItemGroup::autoPos()
}
}
qreal r = rotation();
centerToBottomDiagram(this, m_parent_element, offset);
QGIUtility::centerToBottomDiagram(this, m_parent_element, offset);
//centerToBottomDiagram change the rotation of this group if needed,
//but setRotation is not a virtual function of QGraphicsItem, and the function centerToBottomDiagram
//work with a QGraphicsItem. So we emit the signal if rotation changed

View File

@@ -23,6 +23,9 @@
#include <QDebug>
#include <QGraphicsItem>
namespace QGIUtility
{
/**
@brief centerToParentBottom
Center the item at the bottom of is parent.
@@ -51,10 +54,10 @@ bool centerToParentBottom(QGraphicsItem *item) {
@param offset
@return true if element is centered else false (element_to_follow have not diagram)
*/
#include "elementtextitemgroup.h"
#include "crossrefitem.h"
bool centerToBottomDiagram (QGraphicsItem *item_to_center, Element *element_to_follow, qreal offset) {
if (! element_to_follow -> diagram()) {
bool centerToBottomDiagram (QGraphicsItem *item_to_center, Element *element_to_follow, qreal offset)
{
if (! element_to_follow -> diagram())
{
qDebug() << "qgraphicsitemutility centerAtBottomDiagram : Element_to_follow have not diagram";
return false;
}
@@ -81,8 +84,11 @@ bool centerToBottomDiagram (QGraphicsItem *item_to_center, Element *element_to_f
rot += parent->rotation();
parent = parent->parentItem();
}
if(rot != 0)
if(rot != 0) {
item_to_center->setRotation(item_to_center->rotation() - rot);
}
return true;
}
}

View File

@@ -17,11 +17,16 @@
*/
#ifndef QGRAPHICSITEMUTILITY_H
#define QGRAPHICSITEMUTILITY_H
#include <QtGlobal>
class QGraphicsItem;
class Element;
namespace QGIUtility
{
bool centerToParentBottom (QGraphicsItem *item);
bool centerToBottomDiagram (QGraphicsItem *item_to_center, Element *element_to_follow, qreal offset = 0 );
}
#endif // QGRAPHICSITEMUTILITY_H