mirror of
https://github.com/python-LimeReport/LimeReport.git
synced 2025-01-12 04:41:03 +03:00
addTableOfContensItem function has been modified
This commit is contained in:
parent
c7a5646241
commit
f68a8fff65
@ -331,21 +331,6 @@ void PageItemDesignIntf::initColumnsPos(QVector<qreal> &posByColumns, qreal pos,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QString PageItemDesignIntf::initScript() const
|
|
||||||
{
|
|
||||||
return m_initScript;
|
|
||||||
}
|
|
||||||
|
|
||||||
void PageItemDesignIntf::setInitScript(const QString& value)
|
|
||||||
{
|
|
||||||
if (m_initScript.compare(value) != 0){
|
|
||||||
QString old_value = m_initScript;
|
|
||||||
m_initScript = value;
|
|
||||||
if (!isLoading())
|
|
||||||
notify("initScript", old_value, value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool PageItemDesignIntf::getIsTOC() const
|
bool PageItemDesignIntf::getIsTOC() const
|
||||||
{
|
{
|
||||||
return m_isTOC;
|
return m_isTOC;
|
||||||
|
@ -56,7 +56,6 @@ class PageItemDesignIntf : public LimeReport::ItemsContainerDesignInft
|
|||||||
Q_PROPERTY(bool isExtendedInDesignMode READ isExtendedInDesignMode WRITE setExtendedInDesignMode)
|
Q_PROPERTY(bool isExtendedInDesignMode READ isExtendedInDesignMode WRITE setExtendedInDesignMode)
|
||||||
Q_PROPERTY(int extendedHeight READ extendedHeight WRITE setExtendedHeight)
|
Q_PROPERTY(int extendedHeight READ extendedHeight WRITE setExtendedHeight)
|
||||||
Q_PROPERTY(bool pageIsTOC READ getIsTOC WRITE setIsTOC)
|
Q_PROPERTY(bool pageIsTOC READ getIsTOC WRITE setIsTOC)
|
||||||
Q_PROPERTY(QString initScript READ initScript WRITE setInitScript)
|
|
||||||
friend class ReportRender;
|
friend class ReportRender;
|
||||||
public:
|
public:
|
||||||
enum Orientation { Portrait, Landscape };
|
enum Orientation { Portrait, Landscape };
|
||||||
@ -130,9 +129,6 @@ public:
|
|||||||
|
|
||||||
bool getIsTOC() const;
|
bool getIsTOC() const;
|
||||||
void setIsTOC(bool isTOC);
|
void setIsTOC(bool isTOC);
|
||||||
|
|
||||||
QString initScript() const;
|
|
||||||
void setInitScript(const QString& value);
|
|
||||||
signals:
|
signals:
|
||||||
void beforeFirstPageRendered();
|
void beforeFirstPageRendered();
|
||||||
void afterLastPageRendered();
|
void afterLastPageRendered();
|
||||||
@ -167,7 +163,6 @@ private:
|
|||||||
bool m_isExtendedInDesignMode;
|
bool m_isExtendedInDesignMode;
|
||||||
int m_extendedHeight;
|
int m_extendedHeight;
|
||||||
bool m_isTOC;
|
bool m_isTOC;
|
||||||
QString m_initScript;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef QList<PageItemDesignIntf::Ptr> ReportPages;
|
typedef QList<PageItemDesignIntf::Ptr> ReportPages;
|
||||||
|
@ -237,6 +237,8 @@ void ReportDesignWidget::createTabs(){
|
|||||||
connectPage(m_report->pageAt(i));
|
connectPage(m_report->pageAt(i));
|
||||||
pageIndex = m_tabWidget->addTab(view,QIcon(),m_report->pageAt(i)->pageItem()->objectName());
|
pageIndex = m_tabWidget->addTab(view,QIcon(),m_report->pageAt(i)->pageItem()->objectName());
|
||||||
m_tabWidget->setTabWhatsThis(pageIndex, "page");
|
m_tabWidget->setTabWhatsThis(pageIndex, "page");
|
||||||
|
connect(m_report->pageAt(i)->pageItem(), SIGNAL(propertyObjectNameChanged(QString,QString)),
|
||||||
|
this, SLOT(slotPagePropertyObjectNameChanged(QString,QString)));
|
||||||
}
|
}
|
||||||
|
|
||||||
m_scriptEditor = new QTextEdit(this);
|
m_scriptEditor = new QTextEdit(this);
|
||||||
@ -827,6 +829,9 @@ void ReportDesignWidget::slotPagePropertyObjectNameChanged(const QString &oldVal
|
|||||||
|
|
||||||
void ReportDesignWidget::slotTabMoved(int from, int to)
|
void ReportDesignWidget::slotTabMoved(int from, int to)
|
||||||
{
|
{
|
||||||
|
Q_UNUSED(from)
|
||||||
|
Q_UNUSED(to)
|
||||||
|
|
||||||
QList<PageDesignIntf*> pages;
|
QList<PageDesignIntf*> pages;
|
||||||
|
|
||||||
for ( int i = 0; i < m_tabWidget->tabBar()->count(); ++i){
|
for ( int i = 0; i < m_tabWidget->tabBar()->count(); ++i){
|
||||||
|
@ -538,9 +538,9 @@ QVariant ScriptEngineManager::evaluateScript(const QString& script){
|
|||||||
return QVariant();
|
return QVariant();
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptEngineManager::addTableOfContensItem(const QString& content, int pageNumber, int indent)
|
void ScriptEngineManager::addTableOfContensItem(const QString& uniqKey, const QString& content, int pageNumber, int indent)
|
||||||
{
|
{
|
||||||
m_tableOfContens->setItem(content, pageNumber, indent);
|
m_tableOfContens->setItem(uniqKey, content, pageNumber, indent);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptEngineManager::updateModel()
|
void ScriptEngineManager::updateModel()
|
||||||
@ -756,9 +756,9 @@ bool ScriptEngineManager::createAddTableOfContensItemFunction()
|
|||||||
fd.setManagerName(LimeReport::Const::FUNCTION_MANAGER_NAME);
|
fd.setManagerName(LimeReport::Const::FUNCTION_MANAGER_NAME);
|
||||||
fd.setCategory(tr("GENERAL"));
|
fd.setCategory(tr("GENERAL"));
|
||||||
fd.setName("addTableOfContensItem");
|
fd.setName("addTableOfContensItem");
|
||||||
fd.setDescription("addTableOfContensItem(\""+tr("Content")+"\", \""+tr("Page Number")+", \""+tr("Indent")+"\")");
|
fd.setDescription("addTableOfContensItem(\""+tr("Unique identifier")+" \""+tr("Content")+"\", \""+tr("Page Number")+", \""+tr("Indent")+"\")");
|
||||||
fd.setScriptWrapper(QString("function addTableOfContensItem(content, pageNumber, indent){"
|
fd.setScriptWrapper(QString("function addTableOfContensItem(uniqKey, content, pageNumber, indent){"
|
||||||
"return %1.addTableOfContensItem(content, pageNumber, indent);}"
|
"return %1.addTableOfContensItem(uniqKey, content, pageNumber, indent);}"
|
||||||
).arg(LimeReport::Const::FUNCTION_MANAGER_NAME)
|
).arg(LimeReport::Const::FUNCTION_MANAGER_NAME)
|
||||||
);
|
);
|
||||||
return addFunction(fd);
|
return addFunction(fd);
|
||||||
@ -1418,9 +1418,9 @@ QVariant ScriptFunctionsManager::getField(const QString &field)
|
|||||||
return dm->fieldData(field);
|
return dm->fieldData(field);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptFunctionsManager::addTableOfContensItem(const QString& content, int pageNumber, int indent)
|
void ScriptFunctionsManager::addTableOfContensItem(const QString& uniqKey, const QString& content, int pageNumber, int indent)
|
||||||
{
|
{
|
||||||
scriptEngineManager()->addTableOfContensItem(content, pageNumber, indent);
|
scriptEngineManager()->addTableOfContensItem(uniqKey, content, pageNumber, indent);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptFunctionsManager::clearTableOfContens()
|
void ScriptFunctionsManager::clearTableOfContens()
|
||||||
@ -1470,21 +1470,21 @@ TableOfContens::~TableOfContens()
|
|||||||
clear();
|
clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TableOfContens::setItem(const QString& content, int pageNumber, int indent)
|
void TableOfContens::setItem(const QString& uniqKey, const QString& content, int pageNumber, int indent)
|
||||||
{
|
{
|
||||||
ContentItem * item = 0;
|
ContentItem * item = 0;
|
||||||
if (m_hash.contains(content)){
|
if (m_hash.contains(uniqKey)){
|
||||||
ContentItem* item = m_hash.value(content);
|
item = m_hash.value(uniqKey);
|
||||||
item->pageNumber = pageNumber;
|
item->content = content;
|
||||||
item->indent = indent;
|
item->pageNumber = pageNumber;
|
||||||
} else {
|
item->indent = indent;
|
||||||
ContentItem* item = new ContentItem;
|
} else {
|
||||||
|
item = new ContentItem;
|
||||||
item->content = content;
|
item->content = content;
|
||||||
item->pageNumber = pageNumber;
|
item->pageNumber = pageNumber;
|
||||||
item->indent = indent;
|
item->indent = indent;
|
||||||
|
|
||||||
m_tableOfContens.append(item);
|
m_tableOfContens.append(item);
|
||||||
m_hash.insert(content, item);
|
m_hash.insert(uniqKey, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -67,7 +67,7 @@ class TableOfContens : public QObject{
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
~TableOfContens();
|
~TableOfContens();
|
||||||
void setItem(const QString& content, int pageNumber, int indent = 0);
|
void setItem(const QString& uniqKey, const QString& content, int pageNumber, int indent = 0);
|
||||||
void clear();
|
void clear();
|
||||||
private slots:
|
private slots:
|
||||||
void slotOneSlotDS(LimeReport::CallbackInfo info, QVariant &data);
|
void slotOneSlotDS(LimeReport::CallbackInfo info, QVariant &data);
|
||||||
@ -264,7 +264,7 @@ public:
|
|||||||
Q_INVOKABLE QVariant getVariable(const QString& name);
|
Q_INVOKABLE QVariant getVariable(const QString& name);
|
||||||
Q_INVOKABLE QVariant getField(const QString& field);
|
Q_INVOKABLE QVariant getField(const QString& field);
|
||||||
Q_INVOKABLE QVariant color(const QString& color){ return QColor(color);}
|
Q_INVOKABLE QVariant color(const QString& color){ return QColor(color);}
|
||||||
Q_INVOKABLE void addTableOfContensItem(const QString& content, int pageNumber, int indent = 0);
|
Q_INVOKABLE void addTableOfContensItem(const QString& uniqKey, const QString& content, int pageNumber, int indent = 0);
|
||||||
Q_INVOKABLE void clearTableOfContens();
|
Q_INVOKABLE void clearTableOfContens();
|
||||||
#ifdef USE_QJSENGINE
|
#ifdef USE_QJSENGINE
|
||||||
Q_INVOKABLE QFont font(const QString& family, int pointSize = -1, bool bold = false, bool italic = false, bool underLine = false);
|
Q_INVOKABLE QFont font(const QString& family, int pointSize = -1, bool bold = false, bool italic = false, bool underLine = false);
|
||||||
@ -305,7 +305,7 @@ public:
|
|||||||
QString expandDataFields(QString context, ExpandType expandType, QVariant &varValue, QObject* reportItem);
|
QString expandDataFields(QString context, ExpandType expandType, QVariant &varValue, QObject* reportItem);
|
||||||
QString expandScripts(QString context, QVariant &varValue, QObject* reportItem);
|
QString expandScripts(QString context, QVariant &varValue, QObject* reportItem);
|
||||||
QVariant evaluateScript(const QString &script);
|
QVariant evaluateScript(const QString &script);
|
||||||
void addTableOfContensItem(const QString& content, int pageNumber, int indent);
|
void addTableOfContensItem(const QString& uniqKey, const QString& content, int pageNumber, int indent);
|
||||||
void clearTableOfContens(){ m_tableOfContens->clear(); }
|
void clearTableOfContens(){ m_tableOfContens->clear(); }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
Loading…
Reference in New Issue
Block a user