mirror of
https://github.com/fralx/LimeReport.git
synced 2025-09-23 08:29:07 +03:00
replaceCRwithBR property has been added
This commit is contained in:
@@ -59,7 +59,8 @@ namespace LimeReport{
|
||||
|
||||
TextItem::TextItem(QObject *owner, QGraphicsItem *parent)
|
||||
: ContentItemDesignIntf(xmlTag,owner,parent), m_angle(Angle0), m_trimValue(true), m_allowHTML(false),
|
||||
m_allowHTMLInFields(false), m_followTo(""), m_follower(0), m_textIndent(0), m_textLayoutDirection(Qt::LayoutDirectionAuto)
|
||||
m_allowHTMLInFields(false), m_replaceCarriageReturns(false), m_followTo(""), m_follower(0), m_textIndent(0),
|
||||
m_textLayoutDirection(Qt::LayoutDirectionAuto)
|
||||
{
|
||||
PageItemDesignIntf* pageItem = dynamic_cast<PageItemDesignIntf*>(parent);
|
||||
BaseDesignIntf* parentItem = dynamic_cast<BaseDesignIntf*>(parent);
|
||||
@@ -289,8 +290,10 @@ void TextItem::setContent(const QString &value)
|
||||
|
||||
void TextItem::updateItemSize(DataSourceManager* dataManager, RenderPass pass, int maxHeight)
|
||||
{
|
||||
|
||||
if (isNeedExpandContent())
|
||||
expandContent(dataManager, pass);
|
||||
|
||||
if (!isLoading() && (autoHeight() || autoWidth() || hasFollower()) )
|
||||
initTextSizes();
|
||||
|
||||
@@ -331,12 +334,12 @@ bool TextItem::isNeedExpandContent() const
|
||||
return content().contains(rx);
|
||||
}
|
||||
|
||||
QString TextItem::replaceBR(QString text)
|
||||
QString TextItem::replaceBR(QString text) const
|
||||
{
|
||||
return text.replace("<br/>","\n");
|
||||
}
|
||||
|
||||
QString TextItem::replaceReturns(QString text)
|
||||
QString TextItem::replaceReturns(QString text) const
|
||||
{
|
||||
QString result = text.replace("\r\n","<br/>");
|
||||
result = result.replace("\n","<br/>");
|
||||
@@ -465,7 +468,11 @@ TextItem::TextPtr TextItem::textDocument() const
|
||||
TextPtr text(new QTextDocument);
|
||||
|
||||
if (allowHTML())
|
||||
text->setHtml(m_strText);
|
||||
if (isReplaceCarriageReturns()){
|
||||
text->setHtml(replaceReturns(m_strText));
|
||||
} else {
|
||||
text->setHtml(m_strText);
|
||||
}
|
||||
else
|
||||
text->setPlainText(m_strText);
|
||||
|
||||
@@ -513,6 +520,21 @@ TextItem::TextPtr TextItem::textDocument() const
|
||||
|
||||
}
|
||||
|
||||
bool TextItem::isReplaceCarriageReturns() const
|
||||
{
|
||||
return m_replaceCarriageReturns;
|
||||
}
|
||||
|
||||
void TextItem::setReplaceCarriageReturns(bool replaceCarriageReturns)
|
||||
{
|
||||
if (replaceCarriageReturns != m_replaceCarriageReturns){
|
||||
m_replaceCarriageReturns = replaceCarriageReturns;
|
||||
update();
|
||||
notify("replaceCRwithBR",!replaceCarriageReturns, replaceCarriageReturns);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
qreal TextItem::textIndent() const
|
||||
{
|
||||
return m_textIndent;
|
||||
|
@@ -72,6 +72,7 @@ class TextItem : public LimeReport::ContentItemDesignIntf, IPageInit {
|
||||
Q_PROPERTY(qreal textIndent READ textIndent WRITE setTextIndent)
|
||||
Q_PROPERTY(Qt::LayoutDirection textLayoutDirection READ textLayoutDirection WRITE setTextLayoutDirection)
|
||||
Q_PROPERTY(bool watermark READ isWatermark WRITE setWatermark)
|
||||
Q_PROPERTY(bool replaceCRwithBR READ isReplaceCarriageReturns WRITE setReplaceCarriageReturns)
|
||||
public:
|
||||
|
||||
enum AutoWidth{NoneAutoWidth,MaxWordLength,MaxStringLength};
|
||||
@@ -167,11 +168,14 @@ public:
|
||||
|
||||
void setWatermark(bool watermark);
|
||||
|
||||
bool isReplaceCarriageReturns() const;
|
||||
void setReplaceCarriageReturns(bool isReplaceCarriageReturns);
|
||||
|
||||
protected:
|
||||
void updateLayout();
|
||||
bool isNeedExpandContent() const;
|
||||
QString replaceBR(QString text);
|
||||
QString replaceReturns(QString text);
|
||||
QString replaceBR(QString text) const;
|
||||
QString replaceReturns(QString text) const;
|
||||
int fakeMarginSize() const;
|
||||
QString getTextPart(int height, int skipHeight);
|
||||
void restoreLinksEvent();
|
||||
@@ -204,6 +208,7 @@ private:
|
||||
int m_underlineLineSize;
|
||||
bool m_allowHTML;
|
||||
bool m_allowHTMLInFields;
|
||||
bool m_replaceCarriageReturns;
|
||||
|
||||
QString m_format;
|
||||
ValueType m_valueType;
|
||||
|
Reference in New Issue
Block a user