0
0
mirror of https://github.com/fralx/LimeReport.git synced 2025-09-23 16:39:07 +03:00

Band names translation has been fixed

Subdetail header render has been fixed

# Conflicts:
#	limereport/lrreportrender.cpp
This commit is contained in:
Arin Alexander
2017-06-30 13:29:00 +03:00
3 changed files with 28 additions and 11 deletions

View File

@@ -146,6 +146,8 @@ BandDesignIntf::BandDesignIntf(BandsType bandType, const QString &xmlTypeName, Q
m_bandNameLabel->setVisible(false);
if (scene()) scene()->addItem(m_bandNameLabel);
m_alternateBackgroundColor = backgroundColor();
connect(this, SIGNAL(propertyObjectNameChanged(QString, QString)),
this, SLOT(slotPropertyObjectNameChanged(const QString&,const QString&)));
}
BandDesignIntf::~BandDesignIntf()
@@ -167,7 +169,12 @@ int extractItemIndex(const BaseDesignIntf* item){
}
QString BandDesignIntf::translateBandName(const BaseDesignIntf* item) const{
return tr(extractClassName(item->metaObject()->className()).toLatin1())+QString::number(extractItemIndex(item));
QString defaultBandName = extractClassName(item->metaObject()->className()).toLatin1()+QString::number(extractItemIndex(item));
if (item->objectName().compare(defaultBandName) == 0){
return tr(extractClassName(item->metaObject()->className()).toLatin1())+QString::number(extractItemIndex(item));
} else {
return item->objectName();
}
}
void BandDesignIntf::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
@@ -626,7 +633,7 @@ void BandDesignIntf::trimToMaxHeight(int maxHeight)
void BandDesignIntf::setBandTypeText(const QString &value){
m_bandTypeText=value;
m_bandNameLabel->updateLabel();
m_bandNameLabel->updateLabel(bandTitle());
}
QSet<BandDesignIntf::BandsType> BandDesignIntf::groupBands()
@@ -684,7 +691,7 @@ QVariant BandDesignIntf::itemChange(QGraphicsItem::GraphicsItemChange change, co
m_bandMarker->update(0,0,
m_bandMarker->boundingRect().width(),
m_bandMarker->boundingRect().width());
m_bandNameLabel->updateLabel();
m_bandNameLabel->updateLabel(bandTitle());
m_bandNameLabel->setVisible(value.toBool());
}
@@ -758,6 +765,13 @@ void BandDesignIntf::setAlternateBackgroundColor(const QColor &alternateBackgrou
}
}
void BandDesignIntf::slotPropertyObjectNameChanged(const QString &, const QString& newName)
{
update();
if (m_bandNameLabel)
m_bandNameLabel->updateLabel(newName);
}
bool BandDesignIntf::repeatOnEachRow() const
{
return m_repeatOnEachRow;
@@ -923,7 +937,7 @@ void BandDesignIntf::restoreItems()
void BandDesignIntf::updateBandNameLabel()
{
if (m_bandNameLabel) m_bandNameLabel->updateLabel();
if (m_bandNameLabel) m_bandNameLabel->updateLabel(bandTitle());
}
QColor BandDesignIntf::selectionColor() const
@@ -966,7 +980,7 @@ QRectF BandNameLabel::boundingRect() const
return m_rect;
}
void BandNameLabel::updateLabel()
void BandNameLabel::updateLabel(const QString& bandName)
{
QFont font("Arial",7*Const::fontFACTOR,-1,true);
QFontMetrics fontMetrics(font);
@@ -974,7 +988,7 @@ void BandNameLabel::updateLabel()
m_rect = QRectF(
m_band->pos().x()+10,
m_band->pos().y()-(fontMetrics.height()+10),
fontMetrics.width(m_band->bandTitle())+20,fontMetrics.height()+10
fontMetrics.width(bandName)+20,fontMetrics.height()+10
);
update();
}