Tried QGraphicsTextItem::boundingBox approach
--HG-- branch : feature
This commit is contained in:
parent
6fbffd2834
commit
caa6b425b9
|
@ -1,7 +1,7 @@
|
||||||
<?xml version='1.0' encoding='UTF-8'?>
|
<?xml version='1.0' encoding='UTF-8'?>
|
||||||
<pattern>
|
<pattern>
|
||||||
<!--Valentina pattern format.-->
|
<!--Valentina pattern format.-->
|
||||||
<version>0.3.1</version>
|
<version>0.2.4</version>
|
||||||
<unit>cm</unit>
|
<unit>cm</unit>
|
||||||
<author/>
|
<author/>
|
||||||
<description/>
|
<description/>
|
||||||
|
@ -26,14 +26,14 @@
|
||||||
<point type="alongLine" typeLine="hair" name="M" id="15" firstPoint="6" secondPoint="11" mx="0.132292" lineColor="black" my="0.264583" length="1.15"/>
|
<point type="alongLine" typeLine="hair" name="M" id="15" firstPoint="6" secondPoint="11" mx="0.132292" lineColor="black" my="0.264583" length="1.15"/>
|
||||||
<spline point4="12" type="simple" kAsm1="1" kAsm2="0.951923" angle1="180" angle2="352.272" id="19" kCurve="1" color="black" point1="14"/>
|
<spline point4="12" type="simple" kAsm1="1" kAsm2="0.951923" angle1="180" angle2="352.272" id="19" kCurve="1" color="black" point1="14"/>
|
||||||
<spline point4="13" type="simple" kAsm1="1.03" kAsm2="0.99" angle1="0" angle2="184" id="20" kCurve="1" color="black" point1="15"/>
|
<spline point4="13" type="simple" kAsm1="1.03" kAsm2="0.99" angle1="0" angle2="184" id="20" kCurve="1" color="black" point1="15"/>
|
||||||
<point type="cutSpline" name="N" id="21" spline="19" mx="0.132292" my="0.264583" length="Spl_L_J/3"/>
|
<point type="cutSpline" name="N" id="21" spline="19" color="black" mx="0.132292" my="0.264583" length="Spl_L_J/3"/>
|
||||||
<point type="cutSpline" name="P" id="25" spline="19" mx="0.0124795" my="0.504208" length="Spl_L_J*0.66"/>
|
<point type="cutSpline" name="P" id="25" spline="19" color="black" mx="0.0124795" my="0.504208" length="Spl_L_J*0.66"/>
|
||||||
<point type="cutSpline" name="p1" id="28" spline="23" mx="-0.439814" my="-1.99663" length="(Spl_L_J - (waist_circ/4))/2"/>
|
<point type="cutSpline" name="p1" id="28" spline="23" color="black" mx="-0.439814" my="-1.99663" length="(Spl_L_J - (waist_circ/4))/2"/>
|
||||||
<point type="cutSpline" name="p2" id="31" spline="27" mx="-0.762067" my="-2.16296" length="(Spl_L_J - (waist_circ/4))/2"/>
|
<point type="cutSpline" name="p2" id="31" spline="27" color="black" mx="-0.762067" my="-2.16296" length="(Spl_L_J - (waist_circ/4))/2"/>
|
||||||
<point type="cutSpline" name="R" id="42" spline="20" mx="0.132292" my="0.264583" length="Spl_M_K/3"/>
|
<point type="cutSpline" name="R" id="42" spline="20" color="black" mx="0.132292" my="0.264583" length="Spl_M_K/3"/>
|
||||||
<point type="cutSpline" name="T" id="45" spline="20" mx="-0.378769" my="0.328469" length="Spl_M_K*0.66"/>
|
<point type="cutSpline" name="T" id="45" spline="20" color="black" mx="-0.378769" my="0.328469" length="Spl_M_K*0.66"/>
|
||||||
<point type="cutSpline" name="p5" id="48" spline="44" mx="-0.37877" my="-2.40734" length="(Spl_M_K - waist_circ/4)/2"/>
|
<point type="cutSpline" name="p5" id="48" spline="44" color="black" mx="-0.37877" my="-2.40734" length="(Spl_M_K - waist_circ/4)/2"/>
|
||||||
<point type="cutSpline" name="p6" id="51" spline="47" mx="-0.442653" my="-2.22685" length="(Spl_M_K - waist_circ/4)/2"/>
|
<point type="cutSpline" name="p6" id="51" spline="47" color="black" mx="-0.442653" my="-2.22685" length="(Spl_M_K - waist_circ/4)/2"/>
|
||||||
<point type="alongLine" typeLine="hair" name="p9" id="60" firstPoint="3" secondPoint="9" mx="0.132292" lineColor="black" my="0.264583" length="Line_C_G - 3"/>
|
<point type="alongLine" typeLine="hair" name="p9" id="60" firstPoint="3" secondPoint="9" mx="0.132292" lineColor="black" my="0.264583" length="Line_C_G - 3"/>
|
||||||
<spline point4="9" type="simple" kAsm1="1.36147" kAsm2="0.520526" angle1="291.592" angle2="91.5128" id="73" kCurve="1" color="black" point1="13"/>
|
<spline point4="9" type="simple" kAsm1="1.36147" kAsm2="0.520526" angle1="291.592" angle2="91.5128" id="73" kCurve="1" color="black" point1="13"/>
|
||||||
<point type="alongLine" typeLine="hair" name="A1" id="74" firstPoint="3" secondPoint="9" mx="0.132292" lineColor="black" my="0.264583" length="Line_C_G/2"/>
|
<point type="alongLine" typeLine="hair" name="A1" id="74" firstPoint="3" secondPoint="9" mx="0.132292" lineColor="black" my="0.264583" length="Line_C_G/2"/>
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
#ifndef VPATTERNPIECEDATA_H
|
#ifndef VPATTERNPIECEDATA_H
|
||||||
#define VPATTERNPIECEDATA_H
|
#define VPATTERNPIECEDATA_H
|
||||||
|
|
||||||
#define MIN_FONT_SIZE 24
|
#define MIN_FONT_SIZE 12
|
||||||
|
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QString>
|
#include <QString>
|
||||||
|
|
|
@ -29,11 +29,16 @@
|
||||||
#include <QPainter>
|
#include <QPainter>
|
||||||
#include <QStyleOptionGraphicsItem>
|
#include <QStyleOptionGraphicsItem>
|
||||||
#include <QGraphicsSceneMouseEvent>
|
#include <QGraphicsSceneMouseEvent>
|
||||||
|
#include <QTextDocument>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
|
|
||||||
#include "vtextgraphicsitem.h"
|
#include "vtextgraphicsitem.h"
|
||||||
|
|
||||||
#define RESIZE_SQUARE 30
|
#define RESIZE_SQUARE 30
|
||||||
|
#define MIN_W 120
|
||||||
|
#define MIN_H 60
|
||||||
|
#define MIN_FONT_SIZE 12
|
||||||
|
#define MAX_FONT_SIZE 36
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
VTextGraphicsItem::VTextGraphicsItem(QGraphicsItem* pParent)
|
VTextGraphicsItem::VTextGraphicsItem(QGraphicsItem* pParent)
|
||||||
|
@ -42,7 +47,12 @@ VTextGraphicsItem::VTextGraphicsItem(QGraphicsItem* pParent)
|
||||||
setFlag(QGraphicsItem::ItemIsMovable, true);
|
setFlag(QGraphicsItem::ItemIsMovable, true);
|
||||||
setFlag(QGraphicsItem::ItemIsSelectable, true);
|
setFlag(QGraphicsItem::ItemIsSelectable, true);
|
||||||
m_eMode = mNormal;
|
m_eMode = mNormal;
|
||||||
m_iMinW = 100;
|
m_rectBoundingBox.setTopLeft(QPointF(0, 0));
|
||||||
|
setTextWidth(MIN_W);
|
||||||
|
m_rectBoundingBox.setWidth(MIN_W);
|
||||||
|
m_iMinH = MIN_H;
|
||||||
|
m_rectBoundingBox.setHeight(m_iMinH);
|
||||||
|
setZValue(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
@ -67,13 +77,6 @@ void VTextGraphicsItem::paint(QPainter *painter, const QStyleOptionGraphicsItem
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
|
||||||
void VTextGraphicsItem::SetMinimalWidth(int iW)
|
|
||||||
{
|
|
||||||
m_iMinW = iW;
|
|
||||||
setTextWidth(m_iMinW);
|
|
||||||
}
|
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
void VTextGraphicsItem::Reset()
|
void VTextGraphicsItem::Reset()
|
||||||
{
|
{
|
||||||
|
@ -82,11 +85,21 @@ void VTextGraphicsItem::Reset()
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
void VTextGraphicsItem::SetHTML(const QString& qsHTML)
|
QRectF VTextGraphicsItem::boundingRect() const
|
||||||
|
{ return m_rectBoundingBox; }
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
void VTextGraphicsItem::SetHTML(const QString& qsHtml)
|
||||||
{
|
{
|
||||||
QGraphicsTextItem::setHtml(qsHTML);
|
QGraphicsTextItem::setHtml(qsHtml);
|
||||||
m_iMinFontSize = font().pixelSize();
|
m_rectBoundingBox.setHeight(document()->size().height());
|
||||||
m_iMinH = boundingRect().height();
|
|
||||||
|
// calculate the minimal height
|
||||||
|
QScopedPointer<QTextDocument> pDoc(document()->clone());
|
||||||
|
QFont fnt = font();
|
||||||
|
fnt.setPixelSize(MIN_FONT_SIZE);
|
||||||
|
pDoc->setDefaultFont(fnt);
|
||||||
|
m_iMinH = pDoc->size().height();
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
@ -98,13 +111,11 @@ void VTextGraphicsItem::mousePressEvent(QGraphicsSceneMouseEvent *pME)
|
||||||
if (m_rectResize.contains(pME->pos()) == true)
|
if (m_rectResize.contains(pME->pos()) == true)
|
||||||
{
|
{
|
||||||
m_eMode = mResize;
|
m_eMode = mResize;
|
||||||
m_iCurrentH = boundingRect().height();
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_eMode = mMove;
|
m_eMode = mMove;
|
||||||
}
|
}
|
||||||
qDebug() << "MOUSEPRESS" << m_rectResize << pME->pos() << int(m_eMode);
|
|
||||||
Update();
|
Update();
|
||||||
m_ptStart = pME->pos();
|
m_ptStart = pME->pos();
|
||||||
}
|
}
|
||||||
|
@ -122,29 +133,21 @@ void VTextGraphicsItem::mouseMoveEvent(QGraphicsSceneMouseEvent *pME)
|
||||||
else if (m_eMode == mResize)
|
else if (m_eMode == mResize)
|
||||||
{
|
{
|
||||||
prepareGeometryChange();
|
prepareGeometryChange();
|
||||||
int iNewW = textWidth() + pME->pos().x() - m_ptStart.x();
|
qreal fW = m_rectBoundingBox.width() + pME->pos().x() - m_ptStart.x();
|
||||||
m_iCurrentH += pME->pos().y() - m_ptStart.y();
|
qreal fH = m_rectBoundingBox.height() + pME->pos().y() - m_ptStart.y();
|
||||||
if (iNewW >= m_iMinW)
|
|
||||||
{
|
|
||||||
setTextWidth(iNewW);
|
|
||||||
m_ptStart.setX(pME->pos().x());
|
|
||||||
Update();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (m_iCurrentH >= m_iMinH)
|
if (fW >= MIN_W)
|
||||||
{
|
{
|
||||||
int iFontSize = m_iMinFontSize*m_iCurrentH/m_iMinH;
|
m_rectBoundingBox.setWidth(fW);
|
||||||
if (iFontSize > m_iMinFontSize*2)
|
setTextWidth(fW);
|
||||||
|
}
|
||||||
|
if (fH >= m_iMinH)
|
||||||
{
|
{
|
||||||
// prevent too big letters
|
m_rectBoundingBox.setHeight(fH);
|
||||||
return;
|
|
||||||
}
|
|
||||||
QFont fnt = font();
|
|
||||||
fnt.setPixelSize(iFontSize);
|
|
||||||
setFont(fnt);
|
|
||||||
m_ptStart.setY(pME->pos().y());
|
|
||||||
Update();
|
|
||||||
}
|
}
|
||||||
|
m_ptStart = pME->pos();
|
||||||
|
|
||||||
|
UpdateFont();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -183,10 +186,34 @@ void VTextGraphicsItem::SetResizeArea()
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
void VTextGraphicsItem::setHtml(const QString &qsHtml)
|
void VTextGraphicsItem::UpdateFont()
|
||||||
{
|
{
|
||||||
Q_UNUSED(qsHtml);
|
QScopedPointer<QTextDocument> pDoc(document()->clone());
|
||||||
// prevent using this method! Use SetHTML instead!
|
pDoc->setTextWidth(m_rectBoundingBox.width());
|
||||||
|
|
||||||
|
QFont fnt = font();
|
||||||
|
int iFS = fnt.pixelSize();
|
||||||
|
QSizeF sz = pDoc->size();
|
||||||
|
while (sz.width() < m_rectBoundingBox.width() && sz.height() < m_rectBoundingBox.height() && iFS < MAX_FONT_SIZE)
|
||||||
|
{
|
||||||
|
++iFS;
|
||||||
|
fnt.setPixelSize(iFS);
|
||||||
|
pDoc->setDefaultFont(fnt);
|
||||||
|
sz = pDoc->size();
|
||||||
|
}
|
||||||
|
|
||||||
|
while ((sz.width() >= m_rectBoundingBox.width() || sz.height() >= m_rectBoundingBox.height()) && iFS > MIN_FONT_SIZE)
|
||||||
|
{
|
||||||
|
--iFS;
|
||||||
|
fnt.setPixelSize(iFS);
|
||||||
|
pDoc->setDefaultFont(fnt);
|
||||||
|
sz = pDoc->size();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
fnt.setPixelSize(iFS);
|
||||||
|
setFont(fnt);
|
||||||
|
Update();
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
|
@ -48,10 +48,10 @@ public:
|
||||||
|
|
||||||
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
|
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
|
||||||
|
|
||||||
void SetMinimalWidth(int iW);
|
|
||||||
|
|
||||||
void Reset();
|
void Reset();
|
||||||
void SetHTML(const QString& qsHTML);
|
|
||||||
|
QRectF boundingRect() const;
|
||||||
|
void SetHTML(const QString& qsHtml);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void SignalMoved(QPointF ptPos);
|
void SignalMoved(QPointF ptPos);
|
||||||
|
@ -64,16 +64,15 @@ protected:
|
||||||
|
|
||||||
void Update();
|
void Update();
|
||||||
void SetResizeArea();
|
void SetResizeArea();
|
||||||
void setHtml(const QString& qsHtml);
|
|
||||||
|
void UpdateFont();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int m_iMinW;
|
|
||||||
Mode m_eMode;
|
Mode m_eMode;
|
||||||
QPointF m_ptStart;
|
QPointF m_ptStart;
|
||||||
QRectF m_rectResize;
|
QRectF m_rectResize;
|
||||||
int m_iMinFontSize;
|
|
||||||
int m_iMinH;
|
int m_iMinH;
|
||||||
int m_iCurrentH;
|
QRectF m_rectBoundingBox;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // VTEXTGRAPHICSITEM_H
|
#endif // VTEXTGRAPHICSITEM_H
|
||||||
|
|
|
@ -130,6 +130,7 @@ VToolDetail::VToolDetail(VAbstractPattern *doc, VContainer *data, const quint32
|
||||||
|
|
||||||
connect(dataLabel, &VTextGraphicsItem::SignalMoved, this, &VToolDetail::SaveMove);
|
connect(dataLabel, &VTextGraphicsItem::SignalMoved, this, &VToolDetail::SaveMove);
|
||||||
connect(dataLabel, &VTextGraphicsItem::SignalResized, this, &VToolDetail::SaveResize);
|
connect(dataLabel, &VTextGraphicsItem::SignalResized, this, &VToolDetail::SaveResize);
|
||||||
|
UpdateLabel();
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
@ -302,7 +303,6 @@ void VToolDetail::FullUpdateFromGuiOk(int result)
|
||||||
{
|
{
|
||||||
if (result == QDialog::Accepted)
|
if (result == QDialog::Accepted)
|
||||||
{
|
{
|
||||||
qDebug() << "FullUpdate" << qApp->getUndoStack()->count();
|
|
||||||
SCASSERT(dialog != nullptr);
|
SCASSERT(dialog != nullptr);
|
||||||
DialogDetail *dialogTool = qobject_cast<DialogDetail*>(dialog);
|
DialogDetail *dialogTool = qobject_cast<DialogDetail*>(dialog);
|
||||||
SCASSERT(dialogTool != nullptr);
|
SCASSERT(dialogTool != nullptr);
|
||||||
|
@ -313,7 +313,7 @@ void VToolDetail::FullUpdateFromGuiOk(int result)
|
||||||
SaveDetailOptions *saveCommand = new SaveDetailOptions(oldDet, newDet, doc, id, this->scene());
|
SaveDetailOptions *saveCommand = new SaveDetailOptions(oldDet, newDet, doc, id, this->scene());
|
||||||
connect(saveCommand, &SaveDetailOptions::NeedLiteParsing, doc, &VAbstractPattern::LiteParseTree);
|
connect(saveCommand, &SaveDetailOptions::NeedLiteParsing, doc, &VAbstractPattern::LiteParseTree);
|
||||||
qApp->getUndoStack()->push(saveCommand);
|
qApp->getUndoStack()->push(saveCommand);
|
||||||
qDebug() << "FullUpdate finished" << qApp->getUndoStack()->count();
|
UpdateLabel();
|
||||||
}
|
}
|
||||||
delete dialog;
|
delete dialog;
|
||||||
dialog = nullptr;
|
dialog = nullptr;
|
||||||
|
@ -629,6 +629,41 @@ void VToolDetail::contextMenuEvent(QGraphicsSceneContextMenuEvent *event)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
/**
|
||||||
|
* @brief UpdateLabel updates the text label, making it just big enough for the text to fit it
|
||||||
|
*/
|
||||||
|
void VToolDetail::UpdateLabel()
|
||||||
|
{
|
||||||
|
const VDetail detail = VAbstractTool::data.GetDetail(id);
|
||||||
|
|
||||||
|
const VPatternPieceData& data = detail.GetPatternPieceData();
|
||||||
|
if (data.GetLetter().isEmpty() == false || data.GetName().isEmpty() == false || data.GetMCPCount() > 0)
|
||||||
|
{
|
||||||
|
QString qsText = "Cut %1 on %2%3";
|
||||||
|
QStringList qslPlace;
|
||||||
|
qslPlace << "" << " on Fold";
|
||||||
|
QFont fnt = qApp->font();
|
||||||
|
fnt.setPixelSize(data.GetFontSize());
|
||||||
|
dataLabel->setFont(fnt);
|
||||||
|
QString qsHTML = "<b><font size=\"+4\"><center>" + data.GetLetter() + "</center></font></b><br/>";
|
||||||
|
qsHTML += "<font size=\"+2\" align=\"center\">" + data.GetName() + "</font><br/>";
|
||||||
|
for (int i = 0; i < data.GetMCPCount(); ++i)
|
||||||
|
{
|
||||||
|
MaterialCutPlacement mcp = data.GetMCP(i);
|
||||||
|
QString qsLine = qsText.arg(mcp.m_iCutNumber).arg(mcp.m_qsMaterialUserDef).arg(qslPlace[int(mcp.m_ePlacement)]);
|
||||||
|
qsHTML += qsLine + "<br/>";
|
||||||
|
}
|
||||||
|
dataLabel->SetHTML(qsHTML);
|
||||||
|
dataLabel->setPos(data.GetPos());
|
||||||
|
dataLabel->show();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dataLabel->hide();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
/**
|
/**
|
||||||
* @brief SaveMove saves the move operation to the undo stack
|
* @brief SaveMove saves the move operation to the undo stack
|
||||||
|
@ -752,42 +787,6 @@ void VToolDetail::RefreshGeometry()
|
||||||
}
|
}
|
||||||
|
|
||||||
this->setFlag(QGraphicsItem::ItemSendsGeometryChanges, true);
|
this->setFlag(QGraphicsItem::ItemSendsGeometryChanges, true);
|
||||||
|
|
||||||
const VPatternPieceData& data = detail.GetPatternPieceData();
|
|
||||||
if (data.GetLetter().isEmpty() == false || data.GetName().isEmpty() == false || data.GetMCPCount() > 0)
|
|
||||||
{
|
|
||||||
QString qsText = "Cut %1 on %2%3";
|
|
||||||
QStringList qslPlace;
|
|
||||||
qslPlace << "" << " on Fold";
|
|
||||||
QFont fnt = qApp->font();
|
|
||||||
fnt.setPixelSize(data.GetFontSize());
|
|
||||||
QFontMetrics fm(fnt);
|
|
||||||
dataLabel->setFont(fnt);
|
|
||||||
int iMinW = 200;
|
|
||||||
QString qsHTML = "<b><font size=\"+4\">" + data.GetLetter() + "</font></b><br/>";
|
|
||||||
qsHTML += "<font size=\"+2\">" + data.GetName() + "</font><br/>";
|
|
||||||
for (int i = 0; i < data.GetMCPCount(); ++i)
|
|
||||||
{
|
|
||||||
MaterialCutPlacement mcp = data.GetMCP(i);
|
|
||||||
QString qsLine = qsText.arg(mcp.m_iCutNumber).arg(mcp.m_qsMaterialUserDef).arg(qslPlace[int(mcp.m_ePlacement)]);
|
|
||||||
if (fm.width(qsLine) > iMinW)
|
|
||||||
iMinW = fm.width(qsLine);
|
|
||||||
qsHTML += qsLine + "<br/>";
|
|
||||||
}
|
|
||||||
// also add some offset
|
|
||||||
dataLabel->SetMinimalWidth(iMinW + 10);
|
|
||||||
if (data.GetLabelWidth() > iMinW)
|
|
||||||
{
|
|
||||||
dataLabel->setTextWidth(data.GetLabelWidth());
|
|
||||||
}
|
|
||||||
dataLabel->SetHTML(qsHTML);
|
|
||||||
dataLabel->setPos(data.GetPos());
|
|
||||||
dataLabel->show();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dataLabel->hide();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
|
@ -104,6 +104,7 @@ protected:
|
||||||
virtual void contextMenuEvent ( QGraphicsSceneContextMenuEvent * event ) Q_DECL_OVERRIDE;
|
virtual void contextMenuEvent ( QGraphicsSceneContextMenuEvent * event ) Q_DECL_OVERRIDE;
|
||||||
virtual void keyReleaseEvent(QKeyEvent * event) Q_DECL_OVERRIDE;
|
virtual void keyReleaseEvent(QKeyEvent * event) Q_DECL_OVERRIDE;
|
||||||
virtual void SetVisualization() Q_DECL_OVERRIDE {}
|
virtual void SetVisualization() Q_DECL_OVERRIDE {}
|
||||||
|
virtual void UpdateLabel();
|
||||||
|
|
||||||
protected slots:
|
protected slots:
|
||||||
virtual void SaveMove(QPointF ptPos);
|
virtual void SaveMove(QPointF ptPos);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user