diff --git a/common.pri b/common.pri index 8eee2c5..2847ef6 100644 --- a/common.pri +++ b/common.pri @@ -55,8 +55,8 @@ OBJECTS_DIR = $${ARCH_DIR}/$${BUILD_TYPE}/obj RCC_DIR = $${ARCH_DIR}/$${BUILD_TYPE}/rcc LIMEREPORT_VERSION_MAJOR = 1 -LIMEREPORT_VERSION_MINOR = 3 -LIMEREPORT_VERSION_RELEASE = 11 +LIMEREPORT_VERSION_MINOR = 4 +LIMEREPORT_VERSION_RELEASE = 1 LIMEREPORT_VERSION = '\\"$${LIMEREPORT_VERSION_MAJOR}.$${LIMEREPORT_VERSION_MINOR}.$${LIMEREPORT_VERSION_RELEASE}\\"' DEFINES += LIMEREPORT_VERSION_STR=\"$${LIMEREPORT_VERSION}\" diff --git a/demo_r1/demo_reports/simple_group.lrxml b/demo_r1/demo_reports/simple_group.lrxml new file mode 100644 index 0000000..3cb4b68 --- /dev/null +++ b/demo_r1/demo_reports/simple_group.lrxml @@ -0,0 +1,624 @@ + + + + + + + page1 + + + + + + + + ReportPage1 + + + + DataBand1 + + + + TextItem1 + + + + + DataBand1 + + + + + + + $D{customers.CompanyName} + + + + + + + + + + + + + + + + + + + + + + + TextItem5 + + + + + DataBand1 + + + + + + + $D{customers.Address} + + + + + + + + + + + + + + + + + + + + + + + TextItem6 + + + + + DataBand1 + + + + + + + $D{customers.Phone} + + + + + + + + + + + + + + + + + + + + + + + TextItem7 + + + + + DataBand1 + + + + + + + $D{customers.Fax} + + + + + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + + + + customers + + + + + + + + + + + + DataHeaderBand1 + + + + TextItem2 + + + + + DataHeaderBand1 + + + + + + + Company + + + + + + + + + + + + + + + + + + + + + + + TextItem4 + + + + + DataHeaderBand1 + + + + + + + Address + + + + + + + + + + + + + + + + + + + + + + + TextItem8 + + + + + DataHeaderBand1 + + + + + + + Phone + + + + + + + + + + + + + + + + + + + + + + + TextItem9 + + + + + DataHeaderBand1 + + + + + + + Fax + + + + + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + DataBand1 + + + + + + + + + + ReportHeader2 + + + + TextItem3 + + + + + ReportHeader2 + + + + + + + Customers + + + + + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + + + + + + + PageFooter9 + + + + TextItem10 + + + + + PageFooter9 + + + + + + + Page $V{#PAGE} of $V{#PAGE_COUNT} + + + + + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + + + + + + + + GroupBandHeader1 + + + + TextItem11 + + + + + GroupBandHeader1 + + + + + + + $S{$D{customers.CompanyName}.substring(0,1).toUpperCase();} + + + + + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + DataBand1 + + + + + + + + + $S{$D{customers.CompanyName}.substring(0,1).toUpperCase();} + + + GroupBandFooter11 + + + + TextItem12 + + + + + GroupBandFooter11 + + + + + + + Count: $S{COUNT($D{customers.CompanyName},"DataBand1")} + + + + + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + GroupBandHeader1 + + + + + + + + + + + + + + + + + + + + + + + + + datasources + + + + northwind.db + QSQLITE + D:/Work/C_Projects/LimeReportGitHub/build/5.6.1/win32/release/demo_r1/demo_reports/northwind.db + + + + + + + + + + customers + Select * from customers + northwind.db + + + + + + + + + + + + + + diff --git a/demo_r1/demo_reports/simple_list.lrxml b/demo_r1/demo_reports/simple_list.lrxml new file mode 100644 index 0000000..1ed49dd --- /dev/null +++ b/demo_r1/demo_reports/simple_list.lrxml @@ -0,0 +1,511 @@ + + + + + + + page1 + + + + + + + + ReportPage1 + + + + DataBand1 + + + + TextItem1 + + + + + DataBand1 + + + + + + + $D{customers.CompanyName} + + + + + + + + + + + + + + + + + + + + + + + TextItem5 + + + + + DataBand1 + + + + + + + $D{customers.Address} + + + + + + + + + + + + + + + + + + + + + + + TextItem6 + + + + + DataBand1 + + + + + + + $D{customers.Phone} + + + + + + + + + + + + + + + + + + + + + + + TextItem7 + + + + + DataBand1 + + + + + + + $D{customers.Fax} + + + + + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + + + + customers + + + + + + + + + + + + DataHeaderBand1 + + + + TextItem2 + + + + + DataHeaderBand1 + + + + + + + Company + + + + + + + + + + + + + + + + + + + + + + + TextItem4 + + + + + DataHeaderBand1 + + + + + + + Address + + + + + + + + + + + + + + + + + + + + + + + TextItem8 + + + + + DataHeaderBand1 + + + + + + + Phone + + + + + + + + + + + + + + + + + + + + + + + TextItem9 + + + + + DataHeaderBand1 + + + + + + + Fax + + + + + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + DataBand1 + + + + + + + + + + ReportHeader2 + + + + TextItem3 + + + + + ReportHeader2 + + + + + + + Customers + + + + + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + + + + + + + PageFooter9 + + + + TextItem10 + + + + + PageFooter9 + + + + + + + Page $V{#PAGE} of $V{#PAGE_COUNT} + + + + + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + datasources + + + + northwind.db + QSQLITE + D:/Work/C_Projects/LimeReportGitHub/build/5.6.1/win32/release/demo_r1/demo_reports/northwind.db + + + + + + + + + + customers + Select * from customers + northwind.db + + + + + + + + + + + + + + diff --git a/demo_r1/demo_reports/test_customers.lrxml b/demo_r1/demo_reports/test_customers.lrxml new file mode 100644 index 0000000..f726672 --- /dev/null +++ b/demo_r1/demo_reports/test_customers.lrxml @@ -0,0 +1,123 @@ + + + + + + page1 + + + + + + + + ReportPage1 + + + + DataBand1 + + + + TextItem1 + + + + + DataBand1 + + + + + + + $D{customers.CompanyName} + + + + + + + + + + + + + + + + + + + + + ReportPage1 + + + + + + + + + + customers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + datasources + + + + test + QSQLITE + /home/alex/Work/C++Projects/LimeReport/demo_r1/demo_reports/northwind.db + + + + + + + + + + customers + Select * from customers + test + + + + + + + + + diff --git a/include/lrdatasourcemanagerintf.h b/include/lrdatasourcemanagerintf.h index 7ff5aee..85cf388 100644 --- a/include/lrdatasourcemanagerintf.h +++ b/include/lrdatasourcemanagerintf.h @@ -40,6 +40,7 @@ namespace LimeReport{ class IDataSourceManager{ public: virtual void setReportVariable(const QString& name, const QVariant& value)=0; + virtual void setDefaultDatabasePath(const QString &defaultDatabasePath)=0; virtual void deleteVariable(const QString& name)=0; virtual bool containsVariable(const QString& variableName)=0; virtual QVariant variable(const QString& variableName)=0; diff --git a/limereport/bands/lrgroupbands.cpp b/limereport/bands/lrgroupbands.cpp index 965982b..74b55eb 100644 --- a/limereport/bands/lrgroupbands.cpp +++ b/limereport/bands/lrgroupbands.cpp @@ -31,7 +31,6 @@ #include "lrglobal.h" #include "lrdatasourcemanager.h" - const QString xmlTagHeader = QLatin1String("GroupHeader"); const QString xmlTagFooter = QLatin1String("GroupFooter"); @@ -98,6 +97,8 @@ void GroupBandHeader::startGroup(DataSourceManager* dataManager) if (ds && ds->columnIndexByName(m_groupFiledName)!=-1) m_groupFieldValue=ds->data(m_groupFiledName); } + + if (!m_condition.isEmpty()) m_conditionValue = calcCondition(dataManager); } QColor GroupBandHeader::bandColor() const @@ -114,20 +115,47 @@ QString GroupBandHeader::findDataSourceName(BandDesignIntf* parentBand){ } +QString GroupBandHeader::condition() const +{ + return m_condition; +} + +void GroupBandHeader::setCondition(const QString &condition) +{ + m_condition = condition; +} + +QString GroupBandHeader::calcCondition(DataSourceManager* dataManager){ + QString result = m_condition; + if (!m_condition.isEmpty()){ + result=expandUserVariables(result, FirstPass, NoEscapeSymbols, dataManager); + result=expandScripts(result, dataManager); + result=expandDataFields(result, NoEscapeSymbols, dataManager); + } + return result; +} + bool GroupBandHeader::isNeedToClose(DataSourceManager* dataManager) { if (!m_groupStarted) return false; - if (m_groupFiledName.isNull() || m_groupFiledName.isEmpty()) + if ((m_groupFiledName.isNull() || m_groupFiledName.isEmpty()) && condition().isEmpty()){ dataManager->putError(tr("Group field not found")); - QString datasourceName = findDataSourceName(parentBand()); - if (dataManager->containsDatasource(datasourceName)){ - IDataSource* ds = dataManager->dataSource(datasourceName); - if (ds){ - if (ds->data(m_groupFiledName).isNull() && m_groupFieldValue.isNull()) return false; - return ds->data(m_groupFiledName)!=m_groupFieldValue; - } + return false; + } + + if (!m_condition.isEmpty()){ + return m_conditionValue != calcCondition(dataManager); } else { - dataManager->putError(tr("Datasource \"%1\" not found !!!").arg(datasourceName)); + QString datasourceName = findDataSourceName(parentBand()); + if (dataManager->containsDatasource(datasourceName)){ + IDataSource* ds = dataManager->dataSource(datasourceName); + if (ds){ + if (ds->data(m_groupFiledName).isNull() && m_groupFieldValue.isNull()) return false; + return ds->data(m_groupFiledName)!=m_groupFieldValue; + } + } else { + dataManager->putError(tr("Datasource \"%1\" not found !!!").arg(datasourceName)); + } } return false; @@ -141,6 +169,7 @@ bool GroupBandHeader::isStarted() void GroupBandHeader::closeGroup() { m_groupFieldValue=QVariant(); + m_conditionValue=""; m_groupStarted=false; } diff --git a/limereport/bands/lrgroupbands.h b/limereport/bands/lrgroupbands.h index 9fa3eaa..42285d8 100644 --- a/limereport/bands/lrgroupbands.h +++ b/limereport/bands/lrgroupbands.h @@ -43,6 +43,7 @@ class GroupBandHeader : public BandDesignIntf, public IGroupBand{ Q_PROPERTY(bool startNewPage READ startNewPage WRITE setStartNewPage) Q_PROPERTY(bool resetPageNumber READ resetPageNumber WRITE setResetPageNumber) Q_PROPERTY(bool reprintOnEachPage READ reprintOnEachPage WRITE setReprintOnEachPage) + Q_PROPERTY(QString condition READ condition WRITE setCondition) public: GroupBandHeader(QObject* owner = 0, QGraphicsItem* parent=0); virtual bool isUnique() const; @@ -57,6 +58,8 @@ public: void setResetPageNumber(bool resetPageNumber); bool isHeader() const{return true;} bool isGroupHeader() const {return true;} + QString condition() const; + void setCondition(const QString &condition); private: virtual BaseDesignIntf* createSameTypeItem(QObject* owner=0, QGraphicsItem* parent=0); void startGroup(DataSourceManager* dataManager); @@ -65,12 +68,15 @@ private: void closeGroup(); int index(); QString findDataSourceName(BandDesignIntf *parentBand); + QString calcCondition(DataSourceManager *dataManager); private: QVariant m_groupFieldValue; QString m_groupFiledName; bool m_groupStarted; //bool m_startNewPage; bool m_resetPageNumber; + QString m_condition; + QString m_conditionValue; }; class GroupBandFooter : public BandDesignIntf{ diff --git a/limereport/databrowser/images/add.png b/limereport/databrowser/images/add.png index 7ab3357..b567125 100644 Binary files a/limereport/databrowser/images/add.png and b/limereport/databrowser/images/add.png differ diff --git a/limereport/databrowser/images/data.png b/limereport/databrowser/images/data.png index 65007f7..ee99ac8 100644 Binary files a/limereport/databrowser/images/data.png and b/limereport/databrowser/images/data.png differ diff --git a/limereport/databrowser/images/data1.png b/limereport/databrowser/images/data1.png index cf5baca..9a17437 100644 Binary files a/limereport/databrowser/images/data1.png and b/limereport/databrowser/images/data1.png differ diff --git a/limereport/databrowser/images/data_add.png b/limereport/databrowser/images/data_add.png index 4525abc..d9b3b26 100644 Binary files a/limereport/databrowser/images/data_add.png and b/limereport/databrowser/images/data_add.png differ diff --git a/limereport/databrowser/images/data_add1.png b/limereport/databrowser/images/data_add1.png index e7c035d..8ee926d 100644 Binary files a/limereport/databrowser/images/data_add1.png and b/limereport/databrowser/images/data_add1.png differ diff --git a/limereport/databrowser/images/data_delete.png b/limereport/databrowser/images/data_delete.png index 338a456..9a7c248 100644 Binary files a/limereport/databrowser/images/data_delete.png and b/limereport/databrowser/images/data_delete.png differ diff --git a/limereport/databrowser/images/data_delete1.png b/limereport/databrowser/images/data_delete1.png index f84b18c..87bb43f 100644 Binary files a/limereport/databrowser/images/data_delete1.png and b/limereport/databrowser/images/data_delete1.png differ diff --git a/limereport/databrowser/images/data_edit.png b/limereport/databrowser/images/data_edit.png index 9a51969..d92e27a 100644 Binary files a/limereport/databrowser/images/data_edit.png and b/limereport/databrowser/images/data_edit.png differ diff --git a/limereport/databrowser/images/data_edit1.png b/limereport/databrowser/images/data_edit1.png index 21f64c0..63db888 100644 Binary files a/limereport/databrowser/images/data_edit1.png and b/limereport/databrowser/images/data_edit1.png differ diff --git a/limereport/databrowser/images/database_connect.png b/limereport/databrowser/images/database_connect.png index 0628985..648463d 100644 Binary files a/limereport/databrowser/images/database_connect.png and b/limereport/databrowser/images/database_connect.png differ diff --git a/limereport/databrowser/images/database_connected.png b/limereport/databrowser/images/database_connected.png index a9afa58..7e020d8 100644 Binary files a/limereport/databrowser/images/database_connected.png and b/limereport/databrowser/images/database_connected.png differ diff --git a/limereport/databrowser/images/database_connected2.png b/limereport/databrowser/images/database_connected2.png index d5e1022..2af0f82 100644 Binary files a/limereport/databrowser/images/database_connected2.png and b/limereport/databrowser/images/database_connected2.png differ diff --git a/limereport/databrowser/images/database_connected3.png b/limereport/databrowser/images/database_connected3.png index af832d4..6c966cd 100644 Binary files a/limereport/databrowser/images/database_connected3.png and b/limereport/databrowser/images/database_connected3.png differ diff --git a/limereport/databrowser/images/database_disconnect.png b/limereport/databrowser/images/database_disconnect.png index 20ff200..518248d 100644 Binary files a/limereport/databrowser/images/database_disconnect.png and b/limereport/databrowser/images/database_disconnect.png differ diff --git a/limereport/databrowser/images/edit_table.png b/limereport/databrowser/images/edit_table.png index 4596124..40c1b5f 100644 Binary files a/limereport/databrowser/images/edit_table.png and b/limereport/databrowser/images/edit_table.png differ diff --git a/limereport/databrowser/images/error_message.png b/limereport/databrowser/images/error_message.png index 6c80de1..c7a4d9b 100644 Binary files a/limereport/databrowser/images/error_message.png and b/limereport/databrowser/images/error_message.png differ diff --git a/limereport/databrowser/images/error_message_2.png b/limereport/databrowser/images/error_message_2.png index 015d23c..6361b59 100644 Binary files a/limereport/databrowser/images/error_message_2.png and b/limereport/databrowser/images/error_message_2.png differ diff --git a/limereport/databrowser/images/field.png b/limereport/databrowser/images/field.png index da58806..459f211 100644 Binary files a/limereport/databrowser/images/field.png and b/limereport/databrowser/images/field.png differ diff --git a/limereport/databrowser/images/plug-connect.png b/limereport/databrowser/images/plug-connect.png index 7af930e..035a611 100644 Binary files a/limereport/databrowser/images/plug-connect.png and b/limereport/databrowser/images/plug-connect.png differ diff --git a/limereport/databrowser/images/plug-disconnect.png b/limereport/databrowser/images/plug-disconnect.png index ce71853..1b402f6 100644 Binary files a/limereport/databrowser/images/plug-disconnect.png and b/limereport/databrowser/images/plug-disconnect.png differ diff --git a/limereport/databrowser/images/remove.png b/limereport/databrowser/images/remove.png index afbb0ee..8a974cf 100644 Binary files a/limereport/databrowser/images/remove.png and b/limereport/databrowser/images/remove.png differ diff --git a/limereport/databrowser/images/row.png b/limereport/databrowser/images/row.png index b1971ba..bf72470 100644 Binary files a/limereport/databrowser/images/row.png and b/limereport/databrowser/images/row.png differ diff --git a/limereport/databrowser/images/table.png b/limereport/databrowser/images/table.png index 30916b5..30e3aa2 100644 Binary files a/limereport/databrowser/images/table.png and b/limereport/databrowser/images/table.png differ diff --git a/limereport/databrowser/images/table_add.png b/limereport/databrowser/images/table_add.png index c10db3e..e3c7741 100644 Binary files a/limereport/databrowser/images/table_add.png and b/limereport/databrowser/images/table_add.png differ diff --git a/limereport/databrowser/images/table_delete.png b/limereport/databrowser/images/table_delete.png index e2655d9..1cc81ad 100644 Binary files a/limereport/databrowser/images/table_delete.png and b/limereport/databrowser/images/table_delete.png differ diff --git a/limereport/databrowser/images/table_delete1.png b/limereport/databrowser/images/table_delete1.png index 1dbc388..d7b3cb2 100644 Binary files a/limereport/databrowser/images/table_delete1.png and b/limereport/databrowser/images/table_delete1.png differ diff --git a/limereport/databrowser/images/table_edit.png b/limereport/databrowser/images/table_edit.png index 1d348b1..3371ffc 100644 Binary files a/limereport/databrowser/images/table_edit.png and b/limereport/databrowser/images/table_edit.png differ diff --git a/limereport/databrowser/images/table_error.png b/limereport/databrowser/images/table_error.png index bbf8909..1fc6414 100644 Binary files a/limereport/databrowser/images/table_error.png and b/limereport/databrowser/images/table_error.png differ diff --git a/limereport/databrowser/images/table_error1.png b/limereport/databrowser/images/table_error1.png index 3976928..57e74db 100644 Binary files a/limereport/databrowser/images/table_error1.png and b/limereport/databrowser/images/table_error1.png differ diff --git a/limereport/databrowser/images/table_good.png b/limereport/databrowser/images/table_good.png index 3883f46..5e097e3 100644 Binary files a/limereport/databrowser/images/table_good.png and b/limereport/databrowser/images/table_good.png differ diff --git a/limereport/databrowser/images/table_good1.png b/limereport/databrowser/images/table_good1.png index d175d33..2574e66 100644 Binary files a/limereport/databrowser/images/table_good1.png and b/limereport/databrowser/images/table_good1.png differ diff --git a/limereport/databrowser/images/table_view.png b/limereport/databrowser/images/table_view.png index 592de5d..8677fd3 100644 Binary files a/limereport/databrowser/images/table_view.png and b/limereport/databrowser/images/table_view.png differ diff --git a/limereport/databrowser/images/table_view1.png b/limereport/databrowser/images/table_view1.png index 8f8c83c..49d09ff 100644 Binary files a/limereport/databrowser/images/table_view1.png and b/limereport/databrowser/images/table_view1.png differ diff --git a/limereport/databrowser/images/value.png b/limereport/databrowser/images/value.png index 6c4b820..a4383f9 100644 Binary files a/limereport/databrowser/images/value.png and b/limereport/databrowser/images/value.png differ diff --git a/limereport/databrowser/images/value1.png b/limereport/databrowser/images/value1.png index c255914..e99d938 100644 Binary files a/limereport/databrowser/images/value1.png and b/limereport/databrowser/images/value1.png differ diff --git a/limereport/databrowser/images/value_add.png b/limereport/databrowser/images/value_add.png index 5261b39..062c5e0 100644 Binary files a/limereport/databrowser/images/value_add.png and b/limereport/databrowser/images/value_add.png differ diff --git a/limereport/databrowser/images/value_add1.png b/limereport/databrowser/images/value_add1.png index fd3ecce..ba32d7a 100644 Binary files a/limereport/databrowser/images/value_add1.png and b/limereport/databrowser/images/value_add1.png differ diff --git a/limereport/databrowser/images/value_add2.png b/limereport/databrowser/images/value_add2.png index 5e6b9cc..92a6b2a 100644 Binary files a/limereport/databrowser/images/value_add2.png and b/limereport/databrowser/images/value_add2.png differ diff --git a/limereport/databrowser/images/value_delete.png b/limereport/databrowser/images/value_delete.png index 7038ead..3f8cb21 100644 Binary files a/limereport/databrowser/images/value_delete.png and b/limereport/databrowser/images/value_delete.png differ diff --git a/limereport/databrowser/images/value_delete1.png b/limereport/databrowser/images/value_delete1.png index 832b392..4a59178 100644 Binary files a/limereport/databrowser/images/value_delete1.png and b/limereport/databrowser/images/value_delete1.png differ diff --git a/limereport/databrowser/images/value_edit.png b/limereport/databrowser/images/value_edit.png index 1464941..3c9222f 100644 Binary files a/limereport/databrowser/images/value_edit.png and b/limereport/databrowser/images/value_edit.png differ diff --git a/limereport/databrowser/images/value_edit1.png b/limereport/databrowser/images/value_edit1.png index 70d340a..f1b7588 100644 Binary files a/limereport/databrowser/images/value_edit1.png and b/limereport/databrowser/images/value_edit1.png differ diff --git a/limereport/databrowser/images/value_edit2.png b/limereport/databrowser/images/value_edit2.png index 2cd4d7c..543fbe4 100644 Binary files a/limereport/databrowser/images/value_edit2.png and b/limereport/databrowser/images/value_edit2.png differ diff --git a/limereport/databrowser/images/varToReport.png b/limereport/databrowser/images/varToReport.png index 8fd0afe..d6fc492 100644 Binary files a/limereport/databrowser/images/varToReport.png and b/limereport/databrowser/images/varToReport.png differ diff --git a/limereport/images/Control-Edit_Box.png b/limereport/images/Control-Edit_Box.png index ea0fb75..032e364 100644 Binary files a/limereport/images/Control-Edit_Box.png and b/limereport/images/Control-Edit_Box.png differ diff --git a/limereport/images/FitPage.png b/limereport/images/FitPage.png index a630918..789c4c7 100644 Binary files a/limereport/images/FitPage.png and b/limereport/images/FitPage.png differ diff --git a/limereport/images/FitWidth.png b/limereport/images/FitWidth.png index af2fed9..dfa5d31 100644 Binary files a/limereport/images/FitWidth.png and b/limereport/images/FitWidth.png differ diff --git a/limereport/images/Hourglass_80.png b/limereport/images/Hourglass_80.png index ce174d3..2b5fda8 100644 Binary files a/limereport/images/Hourglass_80.png and b/limereport/images/Hourglass_80.png differ diff --git a/limereport/images/OneToOne.png b/limereport/images/OneToOne.png index 0858cdf..e49443c 100644 Binary files a/limereport/images/OneToOne.png and b/limereport/images/OneToOne.png differ diff --git a/limereport/images/PDF2.png b/limereport/images/PDF2.png index c931312..c1c6072 100644 Binary files a/limereport/images/PDF2.png and b/limereport/images/PDF2.png differ diff --git a/limereport/images/addBand.png b/limereport/images/addBand.png index d927ac9..eff3ca8 100644 Binary files a/limereport/images/addBand.png and b/limereport/images/addBand.png differ diff --git a/limereport/images/addBand1.png b/limereport/images/addBand1.png index 6496959..d559323 100644 Binary files a/limereport/images/addBand1.png and b/limereport/images/addBand1.png differ diff --git a/limereport/images/addBand2.png b/limereport/images/addBand2.png new file mode 100644 index 0000000..cbaec50 Binary files /dev/null and b/limereport/images/addBand2.png differ diff --git a/limereport/images/allLines.png b/limereport/images/allLines.png index 33925af..84469cc 100644 Binary files a/limereport/images/allLines.png and b/limereport/images/allLines.png differ diff --git a/limereport/images/allLines1.png b/limereport/images/allLines1.png index f613d30..6ddc43d 100644 Binary files a/limereport/images/allLines1.png and b/limereport/images/allLines1.png differ diff --git a/limereport/images/barcode.png b/limereport/images/barcode.png index 19669cd..1bf4c00 100644 Binary files a/limereport/images/barcode.png and b/limereport/images/barcode.png differ diff --git a/limereport/images/barcode2.png b/limereport/images/barcode2.png index 328a2ac..d91923a 100644 Binary files a/limereport/images/barcode2.png and b/limereport/images/barcode2.png differ diff --git a/limereport/images/bottomLine.png b/limereport/images/bottomLine.png index 70cacbd..fbaa8fb 100644 Binary files a/limereport/images/bottomLine.png and b/limereport/images/bottomLine.png differ diff --git a/limereport/images/bottomLine1.png b/limereport/images/bottomLine1.png index 6566228..cf448ef 100644 Binary files a/limereport/images/bottomLine1.png and b/limereport/images/bottomLine1.png differ diff --git a/limereport/images/bringToFront.png b/limereport/images/bringToFront.png index b411bbf..3af12b1 100644 Binary files a/limereport/images/bringToFront.png and b/limereport/images/bringToFront.png differ diff --git a/limereport/images/checked.png b/limereport/images/checked.png index e505891..fed946f 100644 Binary files a/limereport/images/checked.png and b/limereport/images/checked.png differ diff --git a/limereport/images/closebox.png b/limereport/images/closebox.png index 46d90bc..2b7ab7a 100644 Binary files a/limereport/images/closebox.png and b/limereport/images/closebox.png differ diff --git a/limereport/images/copy.png b/limereport/images/copy.png index c4a26b9..4f521cb 100644 Binary files a/limereport/images/copy.png and b/limereport/images/copy.png differ diff --git a/limereport/images/copy2.png b/limereport/images/copy2.png index da050ea..c4ceb87 100644 Binary files a/limereport/images/copy2.png and b/limereport/images/copy2.png differ diff --git a/limereport/images/copy24.png b/limereport/images/copy24.png index 4c21085..815982f 100644 Binary files a/limereport/images/copy24.png and b/limereport/images/copy24.png differ diff --git a/limereport/images/cpyright_logo.png b/limereport/images/cpyright_logo.png index d51095f..ddfc4c1 100644 Binary files a/limereport/images/cpyright_logo.png and b/limereport/images/cpyright_logo.png differ diff --git a/limereport/images/cut.png b/limereport/images/cut.png index 730625b..1ff5a6d 100644 Binary files a/limereport/images/cut.png and b/limereport/images/cut.png differ diff --git a/limereport/images/cut1.png b/limereport/images/cut1.png index 8339751..8c0ac69 100644 Binary files a/limereport/images/cut1.png and b/limereport/images/cut1.png differ diff --git a/limereport/images/cut24.png b/limereport/images/cut24.png index c87f288..443ed71 100644 Binary files a/limereport/images/cut24.png and b/limereport/images/cut24.png differ diff --git a/limereport/images/cut_24.png b/limereport/images/cut_24.png index 19a62ec..70f25ff 100644 Binary files a/limereport/images/cut_24.png and b/limereport/images/cut_24.png differ diff --git a/limereport/images/dasabases.png b/limereport/images/dasabases.png index 94a9cb1..5edc8db 100644 Binary files a/limereport/images/dasabases.png and b/limereport/images/dasabases.png differ diff --git a/limereport/images/database.png b/limereport/images/database.png index af7dd7e..834bf47 100644 Binary files a/limereport/images/database.png and b/limereport/images/database.png differ diff --git a/limereport/images/delete.png b/limereport/images/delete.png index a7ebb08..63c2e44 100644 Binary files a/limereport/images/delete.png and b/limereport/images/delete.png differ diff --git a/limereport/images/delete1.png b/limereport/images/delete1.png index 7c557a0..4c41b4e 100644 Binary files a/limereport/images/delete1.png and b/limereport/images/delete1.png differ diff --git a/limereport/images/delete2.png b/limereport/images/delete2.png new file mode 100644 index 0000000..90d6db0 Binary files /dev/null and b/limereport/images/delete2.png differ diff --git a/limereport/images/design.png b/limereport/images/design.png index c3fd61d..8845d17 100644 Binary files a/limereport/images/design.png and b/limereport/images/design.png differ diff --git a/limereport/images/dialog-close.png b/limereport/images/dialog-close.png index 8f2ae53..174f3ce 100644 Binary files a/limereport/images/dialog-close.png and b/limereport/images/dialog-close.png differ diff --git a/limereport/images/dialog-close_red.png b/limereport/images/dialog-close_red.png index 5cfdad3..3268f95 100644 Binary files a/limereport/images/dialog-close_red.png and b/limereport/images/dialog-close_red.png differ diff --git a/limereport/images/disk_blue.png b/limereport/images/disk_blue.png index 1abc0e7..e97c01d 100644 Binary files a/limereport/images/disk_blue.png and b/limereport/images/disk_blue.png differ diff --git a/limereport/images/document_add.png b/limereport/images/document_add.png index dc06d21..e75f6ad 100644 Binary files a/limereport/images/document_add.png and b/limereport/images/document_add.png differ diff --git a/limereport/images/document_add_1.png b/limereport/images/document_add_1.png index 562efc2..20cafa3 100644 Binary files a/limereport/images/document_add_1.png and b/limereport/images/document_add_1.png differ diff --git a/limereport/images/document_zoom_in.png b/limereport/images/document_zoom_in.png index 5d46e3e..e90f1e4 100644 Binary files a/limereport/images/document_zoom_in.png and b/limereport/images/document_zoom_in.png differ diff --git a/limereport/images/document_zoom_in_1.png b/limereport/images/document_zoom_in_1.png index a73a4bf..7503b4a 100644 Binary files a/limereport/images/document_zoom_in_1.png and b/limereport/images/document_zoom_in_1.png differ diff --git a/limereport/images/document_zoom_out.png b/limereport/images/document_zoom_out.png index 0cb534b..526d6f2 100644 Binary files a/limereport/images/document_zoom_out.png and b/limereport/images/document_zoom_out.png differ diff --git a/limereport/images/document_zoom_out_1.png b/limereport/images/document_zoom_out_1.png index d4efa86..f613e4d 100644 Binary files a/limereport/images/document_zoom_out_1.png and b/limereport/images/document_zoom_out_1.png differ diff --git a/limereport/images/edit-copy_1_24.png b/limereport/images/edit-copy_1_24.png index 345b2f1..dd5c52e 100644 Binary files a/limereport/images/edit-copy_1_24.png and b/limereport/images/edit-copy_1_24.png differ diff --git a/limereport/images/edit-paste_1_24.png b/limereport/images/edit-paste_1_24.png index d131b84..57afde2 100644 Binary files a/limereport/images/edit-paste_1_24.png and b/limereport/images/edit-paste_1_24.png differ diff --git a/limereport/images/edit.png b/limereport/images/edit.png index 083b97c..6bc4dd0 100644 Binary files a/limereport/images/edit.png and b/limereport/images/edit.png differ diff --git a/limereport/images/edit_control_24.png b/limereport/images/edit_control_24.png index c2af048..3b03c46 100644 Binary files a/limereport/images/edit_control_24.png and b/limereport/images/edit_control_24.png differ diff --git a/limereport/images/edit_control_2_24.png b/limereport/images/edit_control_2_24.png index 18717d4..bb6afbc 100644 Binary files a/limereport/images/edit_control_2_24.png and b/limereport/images/edit_control_2_24.png differ diff --git a/limereport/images/edit_control_3_24.png b/limereport/images/edit_control_3_24.png index 42ed53d..9a4b78c 100644 Binary files a/limereport/images/edit_control_3_24.png and b/limereport/images/edit_control_3_24.png differ diff --git a/limereport/images/edit_control_4_24.png b/limereport/images/edit_control_4_24.png new file mode 100644 index 0000000..1964712 Binary files /dev/null and b/limereport/images/edit_control_4_24.png differ diff --git a/limereport/images/edit_layout.png b/limereport/images/edit_layout.png index 1f12414..e1255c9 100644 Binary files a/limereport/images/edit_layout.png and b/limereport/images/edit_layout.png differ diff --git a/limereport/images/edit_layout_2_24.png b/limereport/images/edit_layout_2_24.png index 23818d3..c09ac1f 100644 Binary files a/limereport/images/edit_layout_2_24.png and b/limereport/images/edit_layout_2_24.png differ diff --git a/limereport/images/edit_layout_3_24.png b/limereport/images/edit_layout_3_24.png index b000f6f..899f48a 100644 Binary files a/limereport/images/edit_layout_3_24.png and b/limereport/images/edit_layout_3_24.png differ diff --git a/limereport/images/edit_layout_4_24.png b/limereport/images/edit_layout_4_24.png index 29e1387..56a9469 100644 Binary files a/limereport/images/edit_layout_4_24.png and b/limereport/images/edit_layout_4_24.png differ diff --git a/limereport/images/edit_pecil2.png b/limereport/images/edit_pecil2.png index 29fc9a0..4d9134c 100644 Binary files a/limereport/images/edit_pecil2.png and b/limereport/images/edit_pecil2.png differ diff --git a/limereport/images/empty.png b/limereport/images/empty.png index f5cbc09..6cdb06d 100644 Binary files a/limereport/images/empty.png and b/limereport/images/empty.png differ diff --git a/limereport/images/errors.png b/limereport/images/errors.png index d534c53..5ebaf43 100644 Binary files a/limereport/images/errors.png and b/limereport/images/errors.png differ diff --git a/limereport/images/field.png b/limereport/images/field.png index 3cb6ea6..ec598cc 100644 Binary files a/limereport/images/field.png and b/limereport/images/field.png differ diff --git a/limereport/images/first2.png b/limereport/images/first2.png index 082aecd..530cee4 100644 Binary files a/limereport/images/first2.png and b/limereport/images/first2.png differ diff --git a/limereport/images/folder.png b/limereport/images/folder.png index 084c9da..8d4c045 100644 Binary files a/limereport/images/folder.png and b/limereport/images/folder.png differ diff --git a/limereport/images/folder1.png b/limereport/images/folder1.png index 528229c..8867528 100644 Binary files a/limereport/images/folder1.png and b/limereport/images/folder1.png differ diff --git a/limereport/images/folder3.png b/limereport/images/folder3.png index d857735..43dd68a 100644 Binary files a/limereport/images/folder3.png and b/limereport/images/folder3.png differ diff --git a/limereport/images/function2.png b/limereport/images/function2.png index f346cc2..b61cc9b 100644 Binary files a/limereport/images/function2.png and b/limereport/images/function2.png differ diff --git a/limereport/images/function3.png b/limereport/images/function3.png index d6371b9..e136b04 100644 Binary files a/limereport/images/function3.png and b/limereport/images/function3.png differ diff --git a/limereport/images/go-next.png b/limereport/images/go-next.png index da01acc..0d20b8b 100644 Binary files a/limereport/images/go-next.png and b/limereport/images/go-next.png differ diff --git a/limereport/images/grid.png b/limereport/images/grid.png index b29f9a9..8472445 100644 Binary files a/limereport/images/grid.png and b/limereport/images/grid.png differ diff --git a/limereport/images/hideLeftPanel.png b/limereport/images/hideLeftPanel.png index fdd2965..4a7770b 100644 Binary files a/limereport/images/hideLeftPanel.png and b/limereport/images/hideLeftPanel.png differ diff --git a/limereport/images/hideRightPanel.png b/limereport/images/hideRightPanel.png index 0345c2e..7abc958 100644 Binary files a/limereport/images/hideRightPanel.png and b/limereport/images/hideRightPanel.png differ diff --git a/limereport/images/hlayout.png b/limereport/images/hlayout.png index 3c9523e..0f1f83a 100644 Binary files a/limereport/images/hlayout.png and b/limereport/images/hlayout.png differ diff --git a/limereport/images/hlayuot_1_24.png b/limereport/images/hlayuot_1_24.png index 12340fe..bea2316 100644 Binary files a/limereport/images/hlayuot_1_24.png and b/limereport/images/hlayuot_1_24.png differ diff --git a/limereport/images/hlayuot_2_24.png b/limereport/images/hlayuot_2_24.png index c648cb2..da98b98 100644 Binary files a/limereport/images/hlayuot_2_24.png and b/limereport/images/hlayuot_2_24.png differ diff --git a/limereport/images/hlayuot_3_24.png b/limereport/images/hlayuot_3_24.png index 66cf271..19ffe25 100644 Binary files a/limereport/images/hlayuot_3_24.png and b/limereport/images/hlayuot_3_24.png differ diff --git a/limereport/images/hlayuot_4_24.png b/limereport/images/hlayuot_4_24.png new file mode 100644 index 0000000..6c2a7c3 Binary files /dev/null and b/limereport/images/hlayuot_4_24.png differ diff --git a/limereport/images/last2.png b/limereport/images/last2.png index dd0145a..e963c36 100644 Binary files a/limereport/images/last2.png and b/limereport/images/last2.png differ diff --git a/limereport/images/layuot_create.png b/limereport/images/layuot_create.png index 095b604..8add474 100644 Binary files a/limereport/images/layuot_create.png and b/limereport/images/layuot_create.png differ diff --git a/limereport/images/layuot_create_24.png b/limereport/images/layuot_create_24.png index f8a162a..e4f3e7e 100644 Binary files a/limereport/images/layuot_create_24.png and b/limereport/images/layuot_create_24.png differ diff --git a/limereport/images/layuot_delete_24.png b/limereport/images/layuot_delete_24.png index a3ef37e..9e96de3 100644 Binary files a/limereport/images/layuot_delete_24.png and b/limereport/images/layuot_delete_24.png differ diff --git a/limereport/images/layuot_move.png b/limereport/images/layuot_move.png index 922fe74..2046e15 100644 Binary files a/limereport/images/layuot_move.png and b/limereport/images/layuot_move.png differ diff --git a/limereport/images/layuot_select.png b/limereport/images/layuot_select.png index dabd5fc..7042a44 100644 Binary files a/limereport/images/layuot_select.png and b/limereport/images/layuot_select.png differ diff --git a/limereport/images/layuot_select_24.png b/limereport/images/layuot_select_24.png index f3b4588..05f02d4 100644 Binary files a/limereport/images/layuot_select_24.png and b/limereport/images/layuot_select_24.png differ diff --git a/limereport/images/leftLine.png b/limereport/images/leftLine.png index e98990b..0c8d15f 100644 Binary files a/limereport/images/leftLine.png and b/limereport/images/leftLine.png differ diff --git a/limereport/images/leftLine1.png b/limereport/images/leftLine1.png index cb8c9d1..5053c6e 100644 Binary files a/limereport/images/leftLine1.png and b/limereport/images/leftLine1.png differ diff --git a/limereport/images/logo.png b/limereport/images/logo.png index a466bbb..7e27dcd 100644 Binary files a/limereport/images/logo.png and b/limereport/images/logo.png differ diff --git a/limereport/images/logo_100.png b/limereport/images/logo_100.png index d626e9f..5375570 100644 Binary files a/limereport/images/logo_100.png and b/limereport/images/logo_100.png differ diff --git a/limereport/images/logo_32x32.png b/limereport/images/logo_32x32.png index ca849a9..792b625 100644 Binary files a/limereport/images/logo_32x32.png and b/limereport/images/logo_32x32.png differ diff --git a/limereport/images/magnet.png b/limereport/images/magnet.png index 5b98576..172f5f7 100644 Binary files a/limereport/images/magnet.png and b/limereport/images/magnet.png differ diff --git a/limereport/images/main.png b/limereport/images/main.png index 216f24a..bf551e8 100644 Binary files a/limereport/images/main.png and b/limereport/images/main.png differ diff --git a/limereport/images/move_back.png b/limereport/images/move_back.png index a913279..c18035b 100644 Binary files a/limereport/images/move_back.png and b/limereport/images/move_back.png differ diff --git a/limereport/images/move_top_1.png b/limereport/images/move_top_1.png index aefcb79..001b929 100644 Binary files a/limereport/images/move_top_1.png and b/limereport/images/move_top_1.png differ diff --git a/limereport/images/new_leaf.png b/limereport/images/new_leaf.png index 59c868a..22e4830 100644 Binary files a/limereport/images/new_leaf.png and b/limereport/images/new_leaf.png differ diff --git a/limereport/images/new_leaf1.png b/limereport/images/new_leaf1.png index d89f8d3..0b33525 100644 Binary files a/limereport/images/new_leaf1.png and b/limereport/images/new_leaf1.png differ diff --git a/limereport/images/next.png b/limereport/images/next.png index f88c881..c05b517 100644 Binary files a/limereport/images/next.png and b/limereport/images/next.png differ diff --git a/limereport/images/next1.png b/limereport/images/next1.png index 9b3a487..92daf03 100644 Binary files a/limereport/images/next1.png and b/limereport/images/next1.png differ diff --git a/limereport/images/next2.png b/limereport/images/next2.png index 4d2a52c..e4cdaee 100644 Binary files a/limereport/images/next2.png and b/limereport/images/next2.png differ diff --git a/limereport/images/noLines.png b/limereport/images/noLines.png index 9d41db0..a18d44c 100644 Binary files a/limereport/images/noLines.png and b/limereport/images/noLines.png differ diff --git a/limereport/images/noLines1.png b/limereport/images/noLines1.png index 264044e..6cd5bde 100644 Binary files a/limereport/images/noLines1.png and b/limereport/images/noLines1.png differ diff --git a/limereport/images/not_checked.png b/limereport/images/not_checked.png index daf1aa3..3a946b6 100644 Binary files a/limereport/images/not_checked.png and b/limereport/images/not_checked.png differ diff --git a/limereport/images/paste.png b/limereport/images/paste.png index 3514130..8876723 100644 Binary files a/limereport/images/paste.png and b/limereport/images/paste.png differ diff --git a/limereport/images/paste1.png b/limereport/images/paste1.png index ed5b4bc..7a8b734 100644 Binary files a/limereport/images/paste1.png and b/limereport/images/paste1.png differ diff --git a/limereport/images/paste_1_24.png b/limereport/images/paste_1_24.png index 13450d0..31e9a80 100644 Binary files a/limereport/images/paste_1_24.png and b/limereport/images/paste_1_24.png differ diff --git a/limereport/images/pin_green.png b/limereport/images/pin_green.png index 355510e..672961c 100644 Binary files a/limereport/images/pin_green.png and b/limereport/images/pin_green.png differ diff --git a/limereport/images/prin-preview2.png b/limereport/images/prin-preview2.png index bad9ab0..f4ac0f7 100644 Binary files a/limereport/images/prin-preview2.png and b/limereport/images/prin-preview2.png differ diff --git a/limereport/images/prin-preview_4_24.png b/limereport/images/prin-preview_4_24.png index ec9f55e..0665572 100644 Binary files a/limereport/images/prin-preview_4_24.png and b/limereport/images/prin-preview_4_24.png differ diff --git a/limereport/images/print.png b/limereport/images/print.png index bb65b29..128fe87 100644 Binary files a/limereport/images/print.png and b/limereport/images/print.png differ diff --git a/limereport/images/print2_big.png b/limereport/images/print2_big.png index 0fdb872..b97ad09 100644 Binary files a/limereport/images/print2_big.png and b/limereport/images/print2_big.png differ diff --git a/limereport/images/print_2_24.png b/limereport/images/print_2_24.png index aeec91f..2be4703 100644 Binary files a/limereport/images/print_2_24.png and b/limereport/images/print_2_24.png differ diff --git a/limereport/images/print_preview.png b/limereport/images/print_preview.png index 32a5e02..e19ec58 100644 Binary files a/limereport/images/print_preview.png and b/limereport/images/print_preview.png differ diff --git a/limereport/images/print_preview1.png b/limereport/images/print_preview1.png index 7fc0d31..a69873f 100644 Binary files a/limereport/images/print_preview1.png and b/limereport/images/print_preview1.png differ diff --git a/limereport/images/print_preview2.png b/limereport/images/print_preview2.png index f196c43..4f8f0e1 100644 Binary files a/limereport/images/print_preview2.png and b/limereport/images/print_preview2.png differ diff --git a/limereport/images/prior.png b/limereport/images/prior.png index 275b99a..258663c 100644 Binary files a/limereport/images/prior.png and b/limereport/images/prior.png differ diff --git a/limereport/images/prior1.png b/limereport/images/prior1.png index cc71bd5..13f37ec 100644 Binary files a/limereport/images/prior1.png and b/limereport/images/prior1.png differ diff --git a/limereport/images/prior2.png b/limereport/images/prior2.png index 7af6a9c..8d27c4e 100644 Binary files a/limereport/images/prior2.png and b/limereport/images/prior2.png differ diff --git a/limereport/images/redo.png b/limereport/images/redo.png index 6c5e773..859cb6b 100644 Binary files a/limereport/images/redo.png and b/limereport/images/redo.png differ diff --git a/limereport/images/redo1.png b/limereport/images/redo1.png index 89d51fb..0766aa2 100644 Binary files a/limereport/images/redo1.png and b/limereport/images/redo1.png differ diff --git a/limereport/images/rightLine.png b/limereport/images/rightLine.png index d5d85d4..ab35c48 100644 Binary files a/limereport/images/rightLine.png and b/limereport/images/rightLine.png differ diff --git a/limereport/images/rightLine1.png b/limereport/images/rightLine1.png index c7b08bd..2f7fa85 100644 Binary files a/limereport/images/rightLine1.png and b/limereport/images/rightLine1.png differ diff --git a/limereport/images/save.png b/limereport/images/save.png index 80204eb..e6fe0b2 100644 Binary files a/limereport/images/save.png and b/limereport/images/save.png differ diff --git a/limereport/images/save_as_1_24.png b/limereport/images/save_as_1_24.png index 7e2e8fe..519a380 100644 Binary files a/limereport/images/save_as_1_24.png and b/limereport/images/save_as_1_24.png differ diff --git a/limereport/images/sendToBack.png b/limereport/images/sendToBack.png index dd6de9e..7075f71 100644 Binary files a/limereport/images/sendToBack.png and b/limereport/images/sendToBack.png differ diff --git a/limereport/images/settings.png b/limereport/images/settings.png index 64dae39..226e2f0 100644 Binary files a/limereport/images/settings.png and b/limereport/images/settings.png differ diff --git a/limereport/images/table1.png b/limereport/images/table1.png index 09e13ad..c5b005a 100644 Binary files a/limereport/images/table1.png and b/limereport/images/table1.png differ diff --git a/limereport/images/text-align-botom.png b/limereport/images/text-align-botom.png index 1f7f1bc..1ca6986 100644 Binary files a/limereport/images/text-align-botom.png and b/limereport/images/text-align-botom.png differ diff --git a/limereport/images/text-align-botom1.png b/limereport/images/text-align-botom1.png index 8b67f66..5eb9978 100644 Binary files a/limereport/images/text-align-botom1.png and b/limereport/images/text-align-botom1.png differ diff --git a/limereport/images/text-align-justify.png b/limereport/images/text-align-justify.png index 1aa7188..083088c 100644 Binary files a/limereport/images/text-align-justify.png and b/limereport/images/text-align-justify.png differ diff --git a/limereport/images/text-align-justify1.png b/limereport/images/text-align-justify1.png index 69cbb4f..f3146a6 100644 Binary files a/limereport/images/text-align-justify1.png and b/limereport/images/text-align-justify1.png differ diff --git a/limereport/images/text-align-top.png b/limereport/images/text-align-top.png index fe6bbb5..be2de35 100644 Binary files a/limereport/images/text-align-top.png and b/limereport/images/text-align-top.png differ diff --git a/limereport/images/text-align-top1.png b/limereport/images/text-align-top1.png index b44ed19..333757a 100644 Binary files a/limereport/images/text-align-top1.png and b/limereport/images/text-align-top1.png differ diff --git a/limereport/images/text-align-v-center.png b/limereport/images/text-align-v-center.png index b505637..0be7084 100644 Binary files a/limereport/images/text-align-v-center.png and b/limereport/images/text-align-v-center.png differ diff --git a/limereport/images/text-align-v-center1.png b/limereport/images/text-align-v-center1.png index 7b56ffb..282648f 100644 Binary files a/limereport/images/text-align-v-center1.png and b/limereport/images/text-align-v-center1.png differ diff --git a/limereport/images/text_align_center.png b/limereport/images/text_align_center.png index 57beb38..f31f59b 100644 Binary files a/limereport/images/text_align_center.png and b/limereport/images/text_align_center.png differ diff --git a/limereport/images/text_align_center1.png b/limereport/images/text_align_center1.png index d903ecc..967ee55 100644 Binary files a/limereport/images/text_align_center1.png and b/limereport/images/text_align_center1.png differ diff --git a/limereport/images/text_align_left.png b/limereport/images/text_align_left.png index 6c8fcc1..04a0a5b 100644 Binary files a/limereport/images/text_align_left.png and b/limereport/images/text_align_left.png differ diff --git a/limereport/images/text_align_left1.png b/limereport/images/text_align_left1.png index a6ac107..34ec31f 100644 Binary files a/limereport/images/text_align_left1.png and b/limereport/images/text_align_left1.png differ diff --git a/limereport/images/text_align_right.png b/limereport/images/text_align_right.png index a150257..7f6d606 100644 Binary files a/limereport/images/text_align_right.png and b/limereport/images/text_align_right.png differ diff --git a/limereport/images/text_align_right1.png b/limereport/images/text_align_right1.png index 24bf51b..90a2717 100644 Binary files a/limereport/images/text_align_right1.png and b/limereport/images/text_align_right1.png differ diff --git a/limereport/images/text_bold.png b/limereport/images/text_bold.png index 889ae80..f7b6f4a 100644 Binary files a/limereport/images/text_bold.png and b/limereport/images/text_bold.png differ diff --git a/limereport/images/text_bold1.png b/limereport/images/text_bold1.png index 379d525..2840d54 100644 Binary files a/limereport/images/text_bold1.png and b/limereport/images/text_bold1.png differ diff --git a/limereport/images/text_italic.png b/limereport/images/text_italic.png index 8482ac8..12b3ff8 100644 Binary files a/limereport/images/text_italic.png and b/limereport/images/text_italic.png differ diff --git a/limereport/images/text_italic1.png b/limereport/images/text_italic1.png index e8ec97c..2b7a4c6 100644 Binary files a/limereport/images/text_italic1.png and b/limereport/images/text_italic1.png differ diff --git a/limereport/images/text_underline.png b/limereport/images/text_underline.png index 90d0df2..3ea38ee 100644 Binary files a/limereport/images/text_underline.png and b/limereport/images/text_underline.png differ diff --git a/limereport/images/text_underline1.png b/limereport/images/text_underline1.png index dfd9e37..403a367 100644 Binary files a/limereport/images/text_underline1.png and b/limereport/images/text_underline1.png differ diff --git a/limereport/images/toBack.png b/limereport/images/toBack.png index 87300a3..883ae19 100644 Binary files a/limereport/images/toBack.png and b/limereport/images/toBack.png differ diff --git a/limereport/images/toBottom.png b/limereport/images/toBottom.png index e8e8bd3..73c104d 100644 Binary files a/limereport/images/toBottom.png and b/limereport/images/toBottom.png differ diff --git a/limereport/images/toCenter.png b/limereport/images/toCenter.png index ebc5df9..6cb7660 100644 Binary files a/limereport/images/toCenter.png and b/limereport/images/toCenter.png differ diff --git a/limereport/images/toFront.png b/limereport/images/toFront.png index cd4f770..8d04661 100644 Binary files a/limereport/images/toFront.png and b/limereport/images/toFront.png differ diff --git a/limereport/images/toLeft1.png b/limereport/images/toLeft1.png index 8277458..1890060 100644 Binary files a/limereport/images/toLeft1.png and b/limereport/images/toLeft1.png differ diff --git a/limereport/images/toRight.png b/limereport/images/toRight.png index 60d1f0f..e4946f4 100644 Binary files a/limereport/images/toRight.png and b/limereport/images/toRight.png differ diff --git a/limereport/images/toSameHeight.png b/limereport/images/toSameHeight.png index 823f08c..5cb3ff4 100644 Binary files a/limereport/images/toSameHeight.png and b/limereport/images/toSameHeight.png differ diff --git a/limereport/images/toSameWidth.png b/limereport/images/toSameWidth.png index 272be6b..52b1e8e 100644 Binary files a/limereport/images/toSameWidth.png and b/limereport/images/toSameWidth.png differ diff --git a/limereport/images/toTop.png b/limereport/images/toTop.png index 7d4ffbc..7b91b8e 100644 Binary files a/limereport/images/toTop.png and b/limereport/images/toTop.png differ diff --git a/limereport/images/toVCernter.png b/limereport/images/toVCernter.png index bbe5110..3e0689b 100644 Binary files a/limereport/images/toVCernter.png and b/limereport/images/toVCernter.png differ diff --git a/limereport/images/to_bottom.png b/limereport/images/to_bottom.png index 00ae931..201a0b2 100644 Binary files a/limereport/images/to_bottom.png and b/limereport/images/to_bottom.png differ diff --git a/limereport/images/to_center.png b/limereport/images/to_center.png index edd8a94..81265e3 100644 Binary files a/limereport/images/to_center.png and b/limereport/images/to_center.png differ diff --git a/limereport/images/to_h_center.png b/limereport/images/to_h_center.png index 0e5b0f6..88c62a6 100644 Binary files a/limereport/images/to_h_center.png and b/limereport/images/to_h_center.png differ diff --git a/limereport/images/to_left.png b/limereport/images/to_left.png index 1427073..4d5c092 100644 Binary files a/limereport/images/to_left.png and b/limereport/images/to_left.png differ diff --git a/limereport/images/to_right.png b/limereport/images/to_right.png index 4b9e5e9..79e5746 100644 Binary files a/limereport/images/to_right.png and b/limereport/images/to_right.png differ diff --git a/limereport/images/to_same_height.png b/limereport/images/to_same_height.png index db1bb6b..a2a6cae 100644 Binary files a/limereport/images/to_same_height.png and b/limereport/images/to_same_height.png differ diff --git a/limereport/images/to_same_width.png b/limereport/images/to_same_width.png index b339939..953366c 100644 Binary files a/limereport/images/to_same_width.png and b/limereport/images/to_same_width.png differ diff --git a/limereport/images/to_top.png b/limereport/images/to_top.png index 4e9415f..8357494 100644 Binary files a/limereport/images/to_top.png and b/limereport/images/to_top.png differ diff --git a/limereport/images/toolbar.png b/limereport/images/toolbar.png index 06e6300..79e9e38 100644 Binary files a/limereport/images/toolbar.png and b/limereport/images/toolbar.png differ diff --git a/limereport/images/topLine.png b/limereport/images/topLine.png index 132b249..c3f541b 100644 Binary files a/limereport/images/topLine.png and b/limereport/images/topLine.png differ diff --git a/limereport/images/topLine1.png b/limereport/images/topLine1.png index a9cda53..9f671d2 100644 Binary files a/limereport/images/topLine1.png and b/limereport/images/topLine1.png differ diff --git a/limereport/images/undo.png b/limereport/images/undo.png index a0da695..132e9f3 100644 Binary files a/limereport/images/undo.png and b/limereport/images/undo.png differ diff --git a/limereport/images/undo1.png b/limereport/images/undo1.png index 805b474..01a3b57 100644 Binary files a/limereport/images/undo1.png and b/limereport/images/undo1.png differ diff --git a/limereport/images/value.png b/limereport/images/value.png index 32660c9..f61c913 100644 Binary files a/limereport/images/value.png and b/limereport/images/value.png differ diff --git a/limereport/images/var1.png b/limereport/images/var1.png index c3db99f..cf0cb3b 100644 Binary files a/limereport/images/var1.png and b/limereport/images/var1.png differ diff --git a/limereport/images/variable.png b/limereport/images/variable.png index 054cb8d..4564f5b 100644 Binary files a/limereport/images/variable.png and b/limereport/images/variable.png differ diff --git a/limereport/images/variable1.png b/limereport/images/variable1.png index 3a1d537..ff70665 100644 Binary files a/limereport/images/variable1.png and b/limereport/images/variable1.png differ diff --git a/limereport/images/vlayout.png b/limereport/images/vlayout.png index 09ef05c..d1896db 100644 Binary files a/limereport/images/vlayout.png and b/limereport/images/vlayout.png differ diff --git a/limereport/images/zoom-in_2_16.png b/limereport/images/zoom-in_2_16.png index e41e780..fccf64b 100644 Binary files a/limereport/images/zoom-in_2_16.png and b/limereport/images/zoom-in_2_16.png differ diff --git a/limereport/images/zoom_in.png b/limereport/images/zoom_in.png index 71cacec..ca17f5d 100644 Binary files a/limereport/images/zoom_in.png and b/limereport/images/zoom_in.png differ diff --git a/limereport/images/zoom_in1.png b/limereport/images/zoom_in1.png index ec2d692..4e6fc7a 100644 Binary files a/limereport/images/zoom_in1.png and b/limereport/images/zoom_in1.png differ diff --git a/limereport/images/zoom_out.png b/limereport/images/zoom_out.png index bcd9e3d..6a77b01 100644 Binary files a/limereport/images/zoom_out.png and b/limereport/images/zoom_out.png differ diff --git a/limereport/images/zoom_out1.png b/limereport/images/zoom_out1.png index a6beee7..cce6ea2 100644 Binary files a/limereport/images/zoom_out1.png and b/limereport/images/zoom_out1.png differ diff --git a/limereport/items/images/DataBand.png b/limereport/items/images/DataBand.png index 680acb5..7715b11 100644 Binary files a/limereport/items/images/DataBand.png and b/limereport/items/images/DataBand.png differ diff --git a/limereport/items/images/DataBand16.png b/limereport/items/images/DataBand16.png index e608b3b..fa8a9ec 100644 Binary files a/limereport/items/images/DataBand16.png and b/limereport/items/images/DataBand16.png differ diff --git a/limereport/items/images/GroupFooter16.png b/limereport/items/images/GroupFooter16.png index aac7027..05caa4d 100644 Binary files a/limereport/items/images/GroupFooter16.png and b/limereport/items/images/GroupFooter16.png differ diff --git a/limereport/items/images/GroupHeader16.png b/limereport/items/images/GroupHeader16.png index c9a5c46..1f5aea8 100644 Binary files a/limereport/items/images/GroupHeader16.png and b/limereport/items/images/GroupHeader16.png differ diff --git a/limereport/items/images/PageFooter.png b/limereport/items/images/PageFooter.png index 847d4ec..002e975 100644 Binary files a/limereport/items/images/PageFooter.png and b/limereport/items/images/PageFooter.png differ diff --git a/limereport/items/images/PageFooter16.png b/limereport/items/images/PageFooter16.png index 134d91c..2f43214 100644 Binary files a/limereport/items/images/PageFooter16.png and b/limereport/items/images/PageFooter16.png differ diff --git a/limereport/items/images/PageHeader.png b/limereport/items/images/PageHeader.png index afb768f..b05091e 100644 Binary files a/limereport/items/images/PageHeader.png and b/limereport/items/images/PageHeader.png differ diff --git a/limereport/items/images/PageHeader16.png b/limereport/items/images/PageHeader16.png index 6c75436..1bd071c 100644 Binary files a/limereport/items/images/PageHeader16.png and b/limereport/items/images/PageHeader16.png differ diff --git a/limereport/items/images/ReportFooter.png b/limereport/items/images/ReportFooter.png index da8923f..bd9d5c4 100644 Binary files a/limereport/items/images/ReportFooter.png and b/limereport/items/images/ReportFooter.png differ diff --git a/limereport/items/images/ReportFooter16.png b/limereport/items/images/ReportFooter16.png index 33e923d..fd1a654 100644 Binary files a/limereport/items/images/ReportFooter16.png and b/limereport/items/images/ReportFooter16.png differ diff --git a/limereport/items/images/ReportHeader.png b/limereport/items/images/ReportHeader.png index 3bbd065..0b534cf 100644 Binary files a/limereport/items/images/ReportHeader.png and b/limereport/items/images/ReportHeader.png differ diff --git a/limereport/items/images/ReportHeader16.png b/limereport/items/images/ReportHeader16.png index 3d38af3..53bf2f5 100644 Binary files a/limereport/items/images/ReportHeader16.png and b/limereport/items/images/ReportHeader16.png differ diff --git a/limereport/items/images/ReportPage.png b/limereport/items/images/ReportPage.png index 4aaf803..2a13bf4 100644 Binary files a/limereport/items/images/ReportPage.png and b/limereport/items/images/ReportPage.png differ diff --git a/limereport/items/images/ReportPage16.png b/limereport/items/images/ReportPage16.png index e9b46b2..bba247e 100644 Binary files a/limereport/items/images/ReportPage16.png and b/limereport/items/images/ReportPage16.png differ diff --git a/limereport/items/images/SubDetailBand16.png b/limereport/items/images/SubDetailBand16.png index 64cbe2f..62cc9f9 100644 Binary files a/limereport/items/images/SubDetailBand16.png and b/limereport/items/images/SubDetailBand16.png differ diff --git a/limereport/items/images/SubDetailFooterBand16.png b/limereport/items/images/SubDetailFooterBand16.png index 3504ea3..6fc8665 100644 Binary files a/limereport/items/images/SubDetailFooterBand16.png and b/limereport/items/images/SubDetailFooterBand16.png differ diff --git a/limereport/items/images/SubDetailHeaderBand16.png b/limereport/items/images/SubDetailHeaderBand16.png index 7d1c0b9..d36af4d 100644 Binary files a/limereport/items/images/SubDetailHeaderBand16.png and b/limereport/items/images/SubDetailHeaderBand16.png differ diff --git a/limereport/items/images/addBand1.png b/limereport/items/images/addBand1.png index b2941ff..427639e 100644 Binary files a/limereport/items/images/addBand1.png and b/limereport/items/images/addBand1.png differ diff --git a/limereport/items/images/barcode2.png b/limereport/items/images/barcode2.png index 328a2ac..b668e23 100644 Binary files a/limereport/items/images/barcode2.png and b/limereport/items/images/barcode2.png differ diff --git a/limereport/items/images/barcode3.png b/limereport/items/images/barcode3.png new file mode 100644 index 0000000..9014c4f Binary files /dev/null and b/limereport/items/images/barcode3.png differ diff --git a/limereport/items/images/barcode4.png b/limereport/items/images/barcode4.png new file mode 100644 index 0000000..635b977 Binary files /dev/null and b/limereport/items/images/barcode4.png differ diff --git a/limereport/items/images/barcode5.png b/limereport/items/images/barcode5.png new file mode 100644 index 0000000..5c195c2 Binary files /dev/null and b/limereport/items/images/barcode5.png differ diff --git a/limereport/items/images/hlayout.png b/limereport/items/images/hlayout.png index 3c9523e..5341183 100644 Binary files a/limereport/items/images/hlayout.png and b/limereport/items/images/hlayout.png differ diff --git a/limereport/items/images/hlayuot_3_24.png b/limereport/items/images/hlayuot_3_24.png index 66cf271..3b4df74 100644 Binary files a/limereport/items/images/hlayuot_3_24.png and b/limereport/items/images/hlayuot_3_24.png differ diff --git a/limereport/items/images/imageItem.png b/limereport/items/images/imageItem.png index 8705346..ac336cf 100644 Binary files a/limereport/items/images/imageItem.png and b/limereport/items/images/imageItem.png differ diff --git a/limereport/items/images/imageItem1.png b/limereport/items/images/imageItem1.png index 4685622..fc313f2 100644 Binary files a/limereport/items/images/imageItem1.png and b/limereport/items/images/imageItem1.png differ diff --git a/limereport/items/images/imageItem2.png b/limereport/items/images/imageItem2.png index 02cda78..c2b9859 100644 Binary files a/limereport/items/images/imageItem2.png and b/limereport/items/images/imageItem2.png differ diff --git a/limereport/items/images/imageItem3.png b/limereport/items/images/imageItem3.png new file mode 100644 index 0000000..d278c64 Binary files /dev/null and b/limereport/items/images/imageItem3.png differ diff --git a/limereport/items/images/imageItem4.png b/limereport/items/images/imageItem4.png new file mode 100644 index 0000000..589cc69 Binary files /dev/null and b/limereport/items/images/imageItem4.png differ diff --git a/limereport/items/images/insert-text.png b/limereport/items/images/insert-text.png index 8cdff85..c7aa1da 100644 Binary files a/limereport/items/images/insert-text.png and b/limereport/items/images/insert-text.png differ diff --git a/limereport/items/images/insert-text_2.png b/limereport/items/images/insert-text_2.png index c1a6403..6db8289 100644 Binary files a/limereport/items/images/insert-text_2.png and b/limereport/items/images/insert-text_2.png differ diff --git a/limereport/items/images/insert-text_3.png b/limereport/items/images/insert-text_3.png index f278dd4..6acfa6e 100644 Binary files a/limereport/items/images/insert-text_3.png and b/limereport/items/images/insert-text_3.png differ diff --git a/limereport/items/images/insert-text_5.png b/limereport/items/images/insert-text_5.png index e745fbd..a86852b 100644 Binary files a/limereport/items/images/insert-text_5.png and b/limereport/items/images/insert-text_5.png differ diff --git a/limereport/items/images/insert-text_6.png b/limereport/items/images/insert-text_6.png new file mode 100644 index 0000000..ac5982d Binary files /dev/null and b/limereport/items/images/insert-text_6.png differ diff --git a/limereport/items/images/settings.png b/limereport/items/images/settings.png index 9003698..1a70080 100644 Binary files a/limereport/items/images/settings.png and b/limereport/items/images/settings.png differ diff --git a/limereport/items/images/settings2.png b/limereport/items/images/settings2.png index 8c53fe4..a8f2a7a 100644 Binary files a/limereport/items/images/settings2.png and b/limereport/items/images/settings2.png differ diff --git a/limereport/items/images/shape2.png b/limereport/items/images/shape2.png index c2bf427..b4c8b10 100644 Binary files a/limereport/items/images/shape2.png and b/limereport/items/images/shape2.png differ diff --git a/limereport/items/images/shape4.png b/limereport/items/images/shape4.png index cc74953..16a78a2 100644 Binary files a/limereport/items/images/shape4.png and b/limereport/items/images/shape4.png differ diff --git a/limereport/items/images/shape5.png b/limereport/items/images/shape5.png index 8454cbe..4a09806 100644 Binary files a/limereport/items/images/shape5.png and b/limereport/items/images/shape5.png differ diff --git a/limereport/items/images/shape6.png b/limereport/items/images/shape6.png new file mode 100644 index 0000000..c35f883 Binary files /dev/null and b/limereport/items/images/shape6.png differ diff --git a/limereport/items/images/shapes7.png b/limereport/items/images/shapes7.png new file mode 100644 index 0000000..a9920f5 Binary files /dev/null and b/limereport/items/images/shapes7.png differ diff --git a/limereport/items/items.qrc b/limereport/items/items.qrc index 86b8d74..8b0a351 100644 --- a/limereport/items/items.qrc +++ b/limereport/items/items.qrc @@ -1,20 +1,20 @@ images/insert-text.png - images/barcode2.png + images/barcode2.png images/imageItem.png images/shape2.png images/shape4.png images/insert-text_2.png images/insert-text_3.png images/hlayout.png - images/insert-text_5.png - images/shape5.png + images/insert-text_5.png + images/shape5.png images/imageItem1.png - images/imageItem2.png + images/imageItem2.png images/settings.png images/settings2.png - images/hlayuot_3_24.png + images/hlayuot_3_24.png images/addBand1.png images/DataBand.png images/PageHeader.png @@ -33,5 +33,13 @@ images/GroupFooter16.png images/GroupHeader16.png images/ReportPage16.png + images/insert-text_6.png + images/barcode3.png + images/shape6.png + images/imageItem3.png + images/barcode4.png + images/imageItem4.png + images/shapes7.png + images/barcode5.png diff --git a/limereport/limereport.pri b/limereport/limereport.pri index 2cdb264..7f621e9 100644 --- a/limereport/limereport.pri +++ b/limereport/limereport.pri @@ -11,7 +11,6 @@ INCLUDEPATH += \ $$REPORT_PATH/databrowser SOURCES += \ - $$REPORT_PATH/items/lrtextitem.cpp \ $$REPORT_PATH/bands/lrpageheader.cpp \ $$REPORT_PATH/bands/lrpagefooter.cpp \ $$REPORT_PATH/bands/lrreportheader.cpp \ @@ -20,31 +19,31 @@ SOURCES += \ $$REPORT_PATH/bands/lrgroupbands.cpp \ $$REPORT_PATH/bands/lrsubdetailband.cpp \ $$REPORT_PATH/bands/lrtearoffband.cpp \ - $$REPORT_PATH/objectinspector/lrobjectinspectorwidget.cpp \ - $$REPORT_PATH/objectinspector/lrobjectitemmodel.cpp \ - $$REPORT_PATH/objectinspector/lrobjectpropitem.cpp \ - $$REPORT_PATH/objectinspector/lrpropertydelegate.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrstringpropitem.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrrectproptem.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrintpropitem.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrenumpropitem.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrboolpropitem.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrflagspropitem.cpp \ - $$REPORT_PATH/objectinspector/editors/lrtextitempropertyeditor.cpp \ - $$REPORT_PATH/objectinspector/editors/lrcomboboxeditor.cpp \ - $$REPORT_PATH/objectinspector/editors/lrcheckboxeditor.cpp \ - $$REPORT_PATH/objectinspector/editors/lrbuttonlineeditor.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrfontpropitem.cpp \ - $$REPORT_PATH/objectinspector/editors/lrfonteditor.cpp \ - $$REPORT_PATH/objectinspector/editors/lrimageeditor.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrimagepropitem.cpp \ - $$REPORT_PATH/objectinspector/lrbasedesignobjectmodel.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrqrealpropitem.cpp \ - $$REPORT_PATH/objectinspector/editors/lrcoloreditor.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrcolorpropitem.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrdatasourcepropitem.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrgroupfieldpropitem.cpp \ $$REPORT_PATH/objectinspector/propertyItems/lrcontentpropitem.cpp \ + $$REPORT_PATH/objectinspector/editors/lrtextitempropertyeditor.cpp \ + $$REPORT_PATH/objectinspector/editors/lrcomboboxeditor.cpp \ + $$REPORT_PATH/objectinspector/editors/lrcheckboxeditor.cpp \ + $$REPORT_PATH/objectinspector/editors/lrbuttonlineeditor.cpp \ + $$REPORT_PATH/objectinspector/editors/lrfonteditor.cpp \ + $$REPORT_PATH/objectinspector/editors/lrimageeditor.cpp \ + $$REPORT_PATH/objectinspector/editors/lrcoloreditor.cpp \ + $$REPORT_PATH/objectinspector/lrbasedesignobjectmodel.cpp \ + $$REPORT_PATH/objectinspector/lrobjectinspectorwidget.cpp \ + $$REPORT_PATH/objectinspector/lrobjectitemmodel.cpp \ + $$REPORT_PATH/objectinspector/lrobjectpropitem.cpp \ + $$REPORT_PATH/objectinspector/lrpropertydelegate.cpp \ $$REPORT_PATH/objectsbrowser/lrobjectbrowser.cpp \ $$REPORT_PATH/databrowser/lrdatabrowser.cpp \ $$REPORT_PATH/databrowser/lrsqleditdialog.cpp \ @@ -67,6 +66,7 @@ SOURCES += \ $$REPORT_PATH/items/lrimageitem.cpp \ $$REPORT_PATH/items/lrtextitemeditor.cpp \ $$REPORT_PATH/items/lrshapeitem.cpp \ + $$REPORT_PATH/items/lrtextitem.cpp \ $$REPORT_PATH/lrbanddesignintf.cpp \ $$REPORT_PATH/lrpageitemdesignintf.cpp \ $$REPORT_PATH/lrpagedesignintf.cpp \ @@ -97,30 +97,21 @@ contains(CONFIG, zint){ HEADERS += \ $$REPORT_PATH/base/lrsingleton.h \ + $$REPORT_PATH/base/lrsimpleabstractfactory.h \ + $$REPORT_PATH/base/lrattribsabstractfactory.h \ $$REPORT_PATH/bands/lrpageheader.h \ $$REPORT_PATH/bands/lrpagefooter.h \ $$REPORT_PATH/bands/lrreportheader.h \ $$REPORT_PATH/bands/lrreportfooter.h \ $$REPORT_PATH/bands/lrdataband.h \ $$REPORT_PATH/bands/lrtearoffband.h \ - $$REPORT_PATH/objectinspector/lrobjectinspectorwidget.h \ - $$REPORT_PATH/objectinspector/lrobjectitemmodel.h \ - $$REPORT_PATH/objectinspector/lrobjectpropitem.h \ - $$REPORT_PATH/objectinspector/lrpropertydelegate.h \ - $$REPORT_PATH/objectinspector/propertyItems/lrstringpropitem.h \ - $$REPORT_PATH/objectinspector/propertyItems/lrrectproptem.h \ + $$REPORT_PATH/bands/lrsubdetailband.h \ + $$REPORT_PATH/bands/lrgroupbands.h \ $$REPORT_PATH/databrowser/lrdatabrowser.h \ $$REPORT_PATH/databrowser/lrsqleditdialog.h \ $$REPORT_PATH/databrowser/lrconnectiondialog.h \ $$REPORT_PATH/databrowser/lrvariabledialog.h \ $$REPORT_PATH/databrowser/lrdatabrowsertree.h \ - $$REPORT_PATH/objectinspector/propertyItems/lrdatasourcepropitem.h \ - $$REPORT_PATH/lrbanddesignintf.h \ - $$REPORT_PATH/lrpageitemdesignintf.h \ - $$REPORT_PATH/lrbandsmanager.h \ - $$REPORT_PATH/lrglobal.h \ - $$REPORT_PATH/base/lrsimpleabstractfactory.h \ - $$REPORT_PATH/base/lrattribsabstractfactory.h \ $$REPORT_PATH/serializators/lrserializatorintf.h \ $$REPORT_PATH/serializators/lrstorageintf.h \ $$REPORT_PATH/serializators/lrxmlqrectserializator.h \ @@ -128,29 +119,49 @@ HEADERS += \ $$REPORT_PATH/serializators/lrxmlbasetypesserializators.h \ $$REPORT_PATH/serializators/lrxmlreader.h \ $$REPORT_PATH/serializators/lrxmlwriter.h \ - $$REPORT_PATH/lrbasedesignintf.h \ - $$REPORT_PATH/lritemdesignintf.h \ - $$REPORT_PATH/lrdesignelementsfactory.h \ + $$REPORT_PATH/objectinspector/propertyItems/lrstringpropitem.h \ + $$REPORT_PATH/objectinspector/propertyItems/lrrectproptem.h \ + $$REPORT_PATH/objectinspector/propertyItems/lrdatasourcepropitem.h \ + $$REPORT_PATH/objectinspector/propertyItems/lrfontpropitem.h \ + $$REPORT_PATH/objectinspector/propertyItems/lrimagepropitem.h \ $$REPORT_PATH/objectinspector/propertyItems/lrintpropitem.h \ $$REPORT_PATH/objectinspector/propertyItems/lrenumpropitem.h \ $$REPORT_PATH/objectinspector/propertyItems/lrboolpropitem.h \ $$REPORT_PATH/objectinspector/propertyItems/lrflagspropitem.h \ + $$REPORT_PATH/objectinspector/propertyItems/lrgroupfieldpropitem.h \ + $$REPORT_PATH/objectinspector/propertyItems/lrcontentpropitem.h \ + $$REPORT_PATH/objectinspector/propertyItems/lrqrealpropitem.h \ + $$REPORT_PATH/objectinspector/propertyItems/lrcolorpropitem.h \ $$REPORT_PATH/objectinspector/editors/lrtextitempropertyeditor.h \ $$REPORT_PATH/objectinspector/editors/lrcomboboxeditor.h \ $$REPORT_PATH/objectinspector/editors/lrcheckboxeditor.h \ $$REPORT_PATH/objectinspector/editors/lrbuttonlineeditor.h \ - $$REPORT_PATH/objectinspector/propertyItems/lrgroupfieldpropitem.h \ - $$REPORT_PATH/objectinspector/propertyItems/lrcontentpropitem.h \ + $$REPORT_PATH/objectinspector/editors/lrimageeditor.h \ + $$REPORT_PATH/objectinspector/editors/lrcoloreditor.h \ + $$REPORT_PATH/objectinspector/editors/lrfonteditor.h \ + $$REPORT_PATH/objectinspector/lrbasedesignobjectmodel.h \ + $$REPORT_PATH/objectinspector/lrobjectinspectorwidget.h \ + $$REPORT_PATH/objectinspector/lrobjectitemmodel.h \ + $$REPORT_PATH/objectinspector/lrobjectpropitem.h \ + $$REPORT_PATH/objectinspector/lrpropertydelegate.h \ $$REPORT_PATH/objectsbrowser/lrobjectbrowser.h \ - $$REPORT_PATH/items/lrtextitem.h \ - $$REPORT_PATH/items/lrsubitemparentpropitem.h \ - $$REPORT_PATH/items/lralignpropitem.h \ - $$REPORT_PATH/items/lrhorizontallayout.h \ $$REPORT_PATH/items/editors/lritemeditorwidget.h \ $$REPORT_PATH/items/editors/lrfonteditorwidget.h \ $$REPORT_PATH/items/editors/lrtextalignmenteditorwidget.h \ $$REPORT_PATH/items/editors/lritemsaligneditorwidget.h \ $$REPORT_PATH/items/editors/lritemsborderseditorwidget.h \ + $$REPORT_PATH/items/lrtextitem.h \ + $$REPORT_PATH/items/lrsubitemparentpropitem.h \ + $$REPORT_PATH/items/lralignpropitem.h \ + $$REPORT_PATH/items/lrhorizontallayout.h \ + $$REPORT_PATH/items/lrtextitemeditor.h \ + $$REPORT_PATH/items/lrshapeitem.h \ + $$REPORT_PATH/items/lrimageitem.h \ + $$REPORT_PATH/items/lrsimpletagparser.h \ + $$REPORT_PATH/lrbanddesignintf.h \ + $$REPORT_PATH/lrpageitemdesignintf.h \ + $$REPORT_PATH/lrbandsmanager.h \ + $$REPORT_PATH/lrglobal.h \ $$REPORT_PATH/lrdatadesignintf.h \ $$REPORT_PATH/lrcollection.h \ $$REPORT_PATH/lrpagedesignintf.h \ @@ -158,26 +169,15 @@ HEADERS += \ $$REPORT_PATH/lrreportengine_p.h \ $$REPORT_PATH/lrdatasourcemanager.h \ $$REPORT_PATH/lrreportdesignwindow.h \ - $$REPORT_PATH/items/lrsimpletagparser.h \ - $$REPORT_PATH/bands/lrsubdetailband.h \ $$REPORT_PATH/lrreportrender.h \ $$REPORT_PATH/lrpreviewreportwindow.h \ $$REPORT_PATH/lrpreviewreportwidget.h \ $$REPORT_PATH/lrpreviewreportwidget_p.h \ $$REPORT_PATH/lrgraphicsviewzoom.h \ - $$REPORT_PATH/objectinspector/propertyItems/lrfontpropitem.h \ - $$REPORT_PATH/objectinspector/editors/lrfonteditor.h \ - $$REPORT_PATH/items/lrimageitem.h \ - $$REPORT_PATH/objectinspector/editors/lrimageeditor.h \ - $$REPORT_PATH/objectinspector/propertyItems/lrimagepropitem.h \ - $$REPORT_PATH/items/lrtextitemeditor.h \ - $$REPORT_PATH/objectinspector/lrbasedesignobjectmodel.h \ + $$REPORT_PATH/lrbasedesignintf.h \ + $$REPORT_PATH/lritemdesignintf.h \ + $$REPORT_PATH/lrdesignelementsfactory.h \ $$REPORT_PATH/lrscriptenginemanager.h \ - $$REPORT_PATH/objectinspector/propertyItems/lrqrealpropitem.h \ - $$REPORT_PATH/items/lrshapeitem.h \ - $$REPORT_PATH/objectinspector/editors/lrcoloreditor.h \ - $$REPORT_PATH/objectinspector/propertyItems/lrcolorpropitem.h \ - $$REPORT_PATH/bands/lrgroupbands.h \ $$REPORT_PATH/lrvariablesholder.h \ $$REPORT_PATH/lrgroupfunctions.h \ $$REPORT_PATH/lrreportengine.h \ @@ -207,6 +207,8 @@ FORMS += \ $$REPORT_PATH/lrsettingdialog.ui \ $$REPORT_PATH/scriptbrowser/lrscriptbrowser.ui \ + + RESOURCES += \ $$REPORT_PATH/objectinspector/lobjectinspector.qrc \ $$REPORT_PATH/databrowser/lrdatabrowser.qrc \ diff --git a/limereport/lrbasedesignintf.cpp b/limereport/lrbasedesignintf.cpp index a901997..3a3056b 100644 --- a/limereport/lrbasedesignintf.cpp +++ b/limereport/lrbasedesignintf.cpp @@ -86,9 +86,6 @@ BaseDesignIntf::BaseDesignIntf(const QString &storageTypeName, QObject *owner, Q m_font = QFont("Arial",10); } initFlags(); - - - //connect(this,SIGNAL(objectNameChanged(QString)),this,SLOT(slotObjectNameChanged(QString))); } QRectF BaseDesignIntf::boundingRect() const @@ -243,6 +240,152 @@ QFont BaseDesignIntf::transformToSceneFont(const QFont& value) const return f; } +QString BaseDesignIntf::escapeSimbols(const QString &value) +{ + QString result = value; + result.replace("\"","\\\""); + result.replace('\n',"\\n"); + return result; +} + +QString BaseDesignIntf::replaceHTMLSymbols(const QString &value) +{ + QString result = value; + result.replace("<","<"); + result.replace(">",">"); + return result; +} + +QString BaseDesignIntf::expandDataFields(QString context, ExpandType expandType, DataSourceManager* dataManager) +{ + QRegExp rx(Const::FIELD_RX); + + if (context.contains(rx)){ + while ((rx.indexIn(context))!=-1){ + QString field=rx.cap(1); + + if (dataManager->containsField(field)) { + QString fieldValue; + m_varValue = dataManager->fieldData(field); + if (expandType == EscapeSymbols) { + if (dataManager->fieldData(field).isNull()) { + fieldValue="\"\""; + } else { + fieldValue = escapeSimbols(m_varValue.toString()); + switch (dataManager->fieldData(field).type()) { + case QVariant::Char: + case QVariant::String: + case QVariant::StringList: + case QVariant::Date: + case QVariant::DateTime: + fieldValue = "\""+fieldValue+"\""; + break; + default: + break; + } + } + } else { + if (expandType == ReplaceHTMLSymbols) + fieldValue = replaceHTMLSymbols(m_varValue.toString()); + else fieldValue = m_varValue.toString(); + } + + context.replace(rx.cap(0),fieldValue); + + } else { + QString error = QString("Field %1 not found in %2 !!! ").arg(field).arg(this->objectName()); + dataManager->putError(error); + if (!reportSettings() || !reportSettings()->suppressAbsentFieldsAndVarsWarnings()) + context.replace(rx.cap(0),error); + else + context.replace(rx.cap(0),""); + } + } + } + + return context; +} + +QString BaseDesignIntf::expandUserVariables(QString context, RenderPass pass, ExpandType expandType, DataSourceManager* dataManager) +{ + QRegExp rx(Const::VARIABLE_RX); + if (context.contains(rx)){ + int pos = 0; + while ((pos = rx.indexIn(context,pos))!=-1){ + QString variable=rx.cap(1); + pos += rx.matchedLength(); + if (dataManager->containsVariable(variable) ){ + try { + if (pass==dataManager->variablePass(variable)){ + m_varValue = dataManager->variable(variable); + switch (expandType){ + case EscapeSymbols: + context.replace(rx.cap(0),escapeSimbols(m_varValue.toString())); + break; + case NoEscapeSymbols: + context.replace(rx.cap(0),m_varValue.toString()); + break; + case ReplaceHTMLSymbols: + context.replace(rx.cap(0),replaceHTMLSymbols(m_varValue.toString())); + break; + } + pos=0; + } + } catch (ReportError e){ + dataManager->putError(e.what()); + if (!reportSettings() || reportSettings()->suppressAbsentFieldsAndVarsWarnings()) + context.replace(rx.cap(0),e.what()); + else + context.replace(rx.cap(0),""); + } + } else { + QString error; + error = tr("Variable %1 not found").arg(variable); + dataManager->putError(error); + if (!reportSettings() || reportSettings()->suppressAbsentFieldsAndVarsWarnings()) + context.replace(rx.cap(0),error); + else + context.replace(rx.cap(0),""); + } + } + } + return context; +} + +QString BaseDesignIntf::expandScripts(QString context, DataSourceManager* dataManager) +{ + QRegExp rx(Const::SCRIPT_RX); + + if (context.contains(rx)){ + ScriptEngineManager::instance().setDataManager(dataManager); + QScriptEngine* se = ScriptEngineManager::instance().scriptEngine(); + + QScriptValue svThis = se->globalObject().property("THIS"); + if (svThis.isValid()){ + se->newQObject(svThis, this); + } else { + svThis = se->newQObject(this); + se->globalObject().setProperty("THIS",svThis); + } + + ScriptExtractor scriptExtractor(context); + if (scriptExtractor.parse()){ + for(int i=0; ievaluate(scriptBody); + if (!se->hasUncaughtException()) { + m_varValue = value.toVariant(); + context.replace(scriptExtractor.scriptAt(i),value.toString()); + } else { + context.replace(scriptExtractor.scriptAt(i),se->uncaughtException().toString()); + } + } + } + } + return context; +} + void BaseDesignIntf::setupPainter(QPainter *painter) const { if (!painter) { diff --git a/limereport/lrbasedesignintf.h b/limereport/lrbasedesignintf.h index dae9cf4..71e2736 100644 --- a/limereport/lrbasedesignintf.h +++ b/limereport/lrbasedesignintf.h @@ -116,6 +116,7 @@ public: }; enum ObjectState {ObjectLoading, ObjectLoaded, ObjectCreated}; enum ItemAlign {LeftItemAlign,RightItemAlign,CenterItemAlign,ParentWidthItemAlign,DesignedItemAlign}; + enum ExpandType {EscapeSymbols, NoEscapeSymbols, ReplaceHTMLSymbols}; Q_DECLARE_FLAGS(BorderLines, BorderSide) Q_DECLARE_FLAGS(ItemMode,ItemModes) friend class SelectionMarker; @@ -310,6 +311,15 @@ protected: virtual bool drawDesignBorders() const {return true;} virtual QColor selectionMarkerColor(){ return Const::SELECTION_COLOR;} + + QString escapeSimbols(const QString& value); + QString replaceHTMLSymbols(const QString& value); + virtual QString expandUserVariables(QString context, RenderPass pass, ExpandType expandType, DataSourceManager *dataManager); + virtual QString expandDataFields(QString context, ExpandType expandType, DataSourceManager *dataManager); + virtual QString expandScripts(QString context, DataSourceManager *dataManager); + + QVariant m_varValue; + private: void updateSelectionMarker(); int resizeDirectionFlags(QPointF position); diff --git a/limereport/lrdatadesignintf.cpp b/limereport/lrdatadesignintf.cpp index b9a15dd..3b24e66 100644 --- a/limereport/lrdatadesignintf.cpp +++ b/limereport/lrdatadesignintf.cpp @@ -369,6 +369,16 @@ void ConnectionDesc::setName(const QString &value) m_connectionName=value; } +bool ConnectionDesc::isEqual(const QSqlDatabase &db) +{ + return (db.databaseName() == m_databaseName) && + (db.driverName() == m_connectionDriver) && + (db.hostName() == m_connectionHost) && + (db.connectionName() == m_connectionName) && + (db.userName() == m_user) && + (db.password() == m_password); +} + QueryDesc::QueryDesc(QString queryName, QString queryText, QString connection) :m_queryName(queryName), m_queryText(queryText), m_connectionName(connection) {} diff --git a/limereport/lrdatadesignintf.h b/limereport/lrdatadesignintf.h index e53056f..abe26bb 100644 --- a/limereport/lrdatadesignintf.h +++ b/limereport/lrdatadesignintf.h @@ -129,6 +129,7 @@ public: QString password(){return m_password;} void setAutoconnect(bool value){m_autoconnect=value;} bool autoconnect(){return m_autoconnect;} + bool isEqual(const QSqlDatabase& db); signals: void nameChanged(const QString& oldName,const QString& newName); private: diff --git a/limereport/lrdatasourcemanager.cpp b/limereport/lrdatasourcemanager.cpp index 1b228ea..42ec024 100644 --- a/limereport/lrdatasourcemanager.cpp +++ b/limereport/lrdatasourcemanager.cpp @@ -34,6 +34,7 @@ #include #include #include +#include #include namespace LimeReport{ @@ -227,6 +228,16 @@ DataSourceManager::DataSourceManager(QObject *parent) : setSystemVariable(QLatin1String("#PAGE_COUNT"),0,SecondPass); m_datasourcesModel.setDataSourceManager(this); } + +QString DataSourceManager::defaultDatabasePath() const +{ + return m_defaultDatabasePath; +} + +void DataSourceManager::setDefaultDatabasePath(const QString &defaultDatabasePath) +{ + m_defaultDatabasePath = defaultDatabasePath; +} bool DataSourceManager::designTime() const { return m_designTime; @@ -364,7 +375,8 @@ QString DataSourceManager::replaceVariables(QString value){ QString var=rx.cap(0); var.remove("$V{"); var.remove("}"); - if (variableNames().contains(var)){ + + if (variable(var).isValid()){ value.replace(pos,rx.cap(0).length(),variable(var).toString()); } else { value.replace(pos,rx.cap(0).length(),QString(tr("Variable \"%1\" not found!").arg(var))); @@ -622,6 +634,7 @@ bool DataSourceManager::checkConnectionDesc(ConnectionDesc *connection) QSqlDatabase::removeDatabase(connection->name()); return true; } + QSqlDatabase::removeDatabase(connection->name()); return false; } @@ -660,8 +673,38 @@ void DataSourceManager::putProxyDesc(ProxyDesc *proxyDesc) } else throw ReportError(tr("datasource with name \"%1\" already exists !").arg(proxyDesc->name())); } +bool DataSourceManager::initAndOpenDB(QSqlDatabase& db, ConnectionDesc& connectionDesc){ + + bool connected = false; + db.setHostName(replaceVariables(connectionDesc.host())); + db.setUserName(replaceVariables(connectionDesc.userName())); + db.setPassword(replaceVariables(connectionDesc.password())); + + QString dbName = replaceVariables(connectionDesc.databaseName()); + if (connectionDesc.driver().compare("QSQLITE")==0){ + if (!defaultDatabasePath().isEmpty()){ + dbName = !QFileInfo(dbName).exists() ? + defaultDatabasePath()+QFileInfo(dbName).fileName() : + dbName; + } + if (QFileInfo(dbName).exists()){ + db.setDatabaseName(dbName); + } else { + setLastError(tr("Database \"%1\" not found").arg(dbName)); + return false; + } + } else { + db.setDatabaseName(dbName); + } + + connected=db.open(); + if (!connected) setLastError(db.lastError().text()); + return connected; +} + bool DataSourceManager::connectConnection(ConnectionDesc *connectionDesc) { + bool connected = false; clearErrors(); QString lastError =""; @@ -671,21 +714,24 @@ bool DataSourceManager::connectConnection(ConnectionDesc *connectionDesc) } if (!QSqlDatabase::contains(connectionDesc->name())){ - { - QSqlDatabase db = QSqlDatabase::addDatabase(connectionDesc->driver(),connectionDesc->name()); - db.setHostName(replaceVariables(connectionDesc->host())); - db.setUserName(replaceVariables(connectionDesc->userName())); - db.setPassword(replaceVariables(connectionDesc->password())); - db.setDatabaseName(replaceVariables(connectionDesc->databaseName())); - connected=db.open(); - if (!connected) lastError=db.lastError().text(); + QSqlDatabase db = QSqlDatabase::addDatabase(connectionDesc->driver(),connectionDesc->name()); + connected=initAndOpenDB(db, *connectionDesc); + if (!connected){ + setLastError(db.lastError().text()); + return false; } } else { - connected = QSqlDatabase::database(connectionDesc->name()).isOpen(); + QSqlDatabase db = QSqlDatabase::database(connectionDesc->name()); + if (!connectionDesc->isEqual(db)){ + db.close(); + connected = initAndOpenDB(db, *connectionDesc); + } else { + connected = db.isOpen(); + } } + if (!connected) { QSqlDatabase::removeDatabase(connectionDesc->name()); - setLastError(lastError); return false; } else { foreach(QString datasourceName, dataSourceNames()){ diff --git a/limereport/lrdatasourcemanager.h b/limereport/lrdatasourcemanager.h index 5100a83..a6043f0 100644 --- a/limereport/lrdatasourcemanager.h +++ b/limereport/lrdatasourcemanager.h @@ -189,6 +189,9 @@ public: QSharedPointer previewSQL(const QString& connectionName, const QString& sqlText, QString masterDatasource=""); void updateDatasourceModel(); bool isNeedUpdateDatasourceModel(){ return m_needUpdate;} + QString defaultDatabasePath() const; + void setDefaultDatabasePath(const QString &defaultDatabasePath); + signals: void loadCollectionFinished(const QString& collectionName); void cleared(); @@ -208,7 +211,6 @@ protected: virtual QObject *elementAt(const QString& collectionName,int index); virtual void collectionLoadFinished(const QString& collectionName); - void setSystemVariable(const QString& name, const QVariant& value, RenderPass pass); void setLastError(const QString& value); void invalidateLinkedDatasources(QString datasourceName); @@ -218,6 +220,7 @@ private slots: void slotQueryTextChanged(const QString& queryName, const QString& queryText); private: explicit DataSourceManager(QObject *parent = 0); + bool initAndOpenDB(QSqlDatabase &db, ConnectionDesc &connectionDesc); Q_DISABLE_COPY(DataSourceManager) private: QList m_connections; @@ -236,6 +239,7 @@ private: QStringList m_errorsList; bool m_designTime; bool m_needUpdate; + QString m_defaultDatabasePath; }; } diff --git a/limereport/lrdatasourcemanagerintf.h b/limereport/lrdatasourcemanagerintf.h index 7ff5aee..85cf388 100644 --- a/limereport/lrdatasourcemanagerintf.h +++ b/limereport/lrdatasourcemanagerintf.h @@ -40,6 +40,7 @@ namespace LimeReport{ class IDataSourceManager{ public: virtual void setReportVariable(const QString& name, const QVariant& value)=0; + virtual void setDefaultDatabasePath(const QString &defaultDatabasePath)=0; virtual void deleteVariable(const QString& name)=0; virtual bool containsVariable(const QString& variableName)=0; virtual QVariant variable(const QString& variableName)=0; diff --git a/limereport/lritemdesignintf.cpp b/limereport/lritemdesignintf.cpp index db18eb2..5987086 100644 --- a/limereport/lritemdesignintf.cpp +++ b/limereport/lritemdesignintf.cpp @@ -113,157 +113,6 @@ void ItemDesignIntf::initFlags() } } -QString ContentItemDesignIntf::expandDataFields(QString context, ExpandType expandType, DataSourceManager* dataManager) -{ - QRegExp rx(Const::FIELD_RX); - - if (context.contains(rx)){ - while ((rx.indexIn(context))!=-1){ - QString field=rx.cap(1); - - if (dataManager->containsField(field)) { - QString fieldValue; - m_varValue = dataManager->fieldData(field); - if (expandType == EscapeSymbols) { - if (dataManager->fieldData(field).isNull()) { - fieldValue="\"\""; - } else { - fieldValue = escapeSimbols(m_varValue.toString()); - switch (dataManager->fieldData(field).type()) { - case QVariant::Char: - case QVariant::String: - case QVariant::StringList: - case QVariant::Date: - case QVariant::DateTime: - fieldValue = "\""+fieldValue+"\""; - break; - default: - break; - } - } - } else { - if (expandType == ReplaceHTMLSymbols) - fieldValue = replaceHTMLSymbols(m_varValue.toString()); - else fieldValue = m_varValue.toString(); - } - - context.replace(rx.cap(0),fieldValue); - - } else { - QString error = QString("Field %1 not found in %2 !!! ").arg(field).arg(this->objectName()); - dataManager->putError(error); - if (!reportSettings() || !reportSettings()->suppressAbsentFieldsAndVarsWarnings()) - context.replace(rx.cap(0),error); - else - context.replace(rx.cap(0),""); - } - } - } - - return context; -} - -QString ContentItemDesignIntf::expandUserVariables(QString context, RenderPass pass, ExpandType expandType, DataSourceManager* dataManager) -{ - QRegExp rx(Const::VARIABLE_RX); - if (context.contains(rx)){ - int pos = 0; - while ((pos = rx.indexIn(context,pos))!=-1){ - QString variable=rx.cap(1); - pos += rx.matchedLength(); - if (dataManager->containsVariable(variable) ){ - try { - if (pass==dataManager->variablePass(variable)){ - m_varValue = dataManager->variable(variable); - switch (expandType){ - case EscapeSymbols: - context.replace(rx.cap(0),escapeSimbols(m_varValue.toString())); - break; - case NoEscapeSymbols: - context.replace(rx.cap(0),m_varValue.toString()); - break; - case ReplaceHTMLSymbols: - context.replace(rx.cap(0),replaceHTMLSymbols(m_varValue.toString())); - break; - } - pos=0; - } - } catch (ReportError e){ - dataManager->putError(e.what()); - if (!reportSettings() || reportSettings()->suppressAbsentFieldsAndVarsWarnings()) - context.replace(rx.cap(0),e.what()); - else - context.replace(rx.cap(0),""); - } - } else { - QString error; - error = tr("Variable %1 not found").arg(variable); - dataManager->putError(error); - if (!reportSettings() || reportSettings()->suppressAbsentFieldsAndVarsWarnings()) - context.replace(rx.cap(0),error); - else - context.replace(rx.cap(0),""); - } - } - } - return context; -} - -QString ContentItemDesignIntf::expandScripts(QString context, DataSourceManager* dataManager) -{ - QRegExp rx(Const::SCRIPT_RX); - - if (context.contains(rx)){ - ScriptEngineManager::instance().setDataManager(dataManager); - QScriptEngine* se = ScriptEngineManager::instance().scriptEngine(); - - QScriptValue svThis = se->globalObject().property("THIS"); - if (svThis.isValid()){ - se->newQObject(svThis, this); - } else { - svThis = se->newQObject(this); - se->globalObject().setProperty("THIS",svThis); - } - - ScriptExtractor scriptExtractor(context); - if (scriptExtractor.parse()){ - for(int i=0; ievaluate(scriptBody); - if (!se->hasUncaughtException()) { - m_varValue = value.toVariant(); - context.replace(scriptExtractor.scriptAt(i),value.toString()); - } else { - context.replace(scriptExtractor.scriptAt(i),se->uncaughtException().toString()); - } - } - } - } - return context; -} - -QString ContentItemDesignIntf::content() const -{ - return ""; -} - -QString ContentItemDesignIntf::escapeSimbols(const QString &value) -{ - QString result = value; - result.replace("\"","\\\""); - result.replace('\n',"\\n"); - return result; -} - -QString ContentItemDesignIntf::replaceHTMLSymbols(const QString &value) -{ - QString result = value; - result.replace("<","<"); - result.replace(">",">"); - return result; -} - Spacer::Spacer(QObject *owner, QGraphicsItem *parent) :ItemDesignIntf("Spacer",owner,parent){} diff --git a/limereport/lritemdesignintf.h b/limereport/lritemdesignintf.h index e6f6170..a9c8d7a 100644 --- a/limereport/lritemdesignintf.h +++ b/limereport/lritemdesignintf.h @@ -73,17 +73,8 @@ class ContentItemDesignIntf : public ItemDesignIntf public: ContentItemDesignIntf(const QString& xmlTypeName, QObject* owner = 0,QGraphicsItem* parent = 0) :ItemDesignIntf(xmlTypeName,owner,parent){} - virtual QString content() const; - virtual void setContent(const QString& value)=0; - enum ExpandType {EscapeSymbols, NoEscapeSymbols, ReplaceHTMLSymbols}; -protected: - QString escapeSimbols(const QString& value); - QString replaceHTMLSymbols(const QString& value); - virtual QString expandUserVariables(QString context, RenderPass pass, ExpandType expandType, DataSourceManager *dataManager); - virtual QString expandDataFields(QString context, ExpandType expandType, DataSourceManager *dataManager); - virtual QString expandScripts(QString context, DataSourceManager *dataManager); - - QVariant m_varValue; + virtual QString content() const = 0; + virtual void setContent(const QString& value) = 0; }; class LayoutDesignIntf : public ItemDesignIntf{ diff --git a/limereport/lrpagedesignintf.cpp b/limereport/lrpagedesignintf.cpp index e266e44..e0a5ec2 100644 --- a/limereport/lrpagedesignintf.cpp +++ b/limereport/lrpagedesignintf.cpp @@ -413,6 +413,11 @@ template BaseDesignIntf *PageDesignIntf::internalAddBand(T bandType) { + if (m_insertMode) { + m_insertMode = false; + emit itemInsertCanceled(m_insertItemType); + } + QSet needParentBands; needParentBands << BandDesignIntf::SubDetailBand << BandDesignIntf::SubDetailHeader diff --git a/limereport/objectinspector/images/check.png b/limereport/objectinspector/images/check.png index c4e2fb3..f313bfd 100644 Binary files a/limereport/objectinspector/images/check.png and b/limereport/objectinspector/images/check.png differ diff --git a/limereport/objectinspector/images/check_w.png b/limereport/objectinspector/images/check_w.png index 9169b6e..f5d219b 100644 Binary files a/limereport/objectinspector/images/check_w.png and b/limereport/objectinspector/images/check_w.png differ diff --git a/limereport/objectinspector/images/clear.png b/limereport/objectinspector/images/clear.png index bfc2b44..d6c0c31 100644 Binary files a/limereport/objectinspector/images/clear.png and b/limereport/objectinspector/images/clear.png differ diff --git a/limereport/objectinspector/images/uncheck.png b/limereport/objectinspector/images/uncheck.png index c374c59..54f37bc 100644 Binary files a/limereport/objectinspector/images/uncheck.png and b/limereport/objectinspector/images/uncheck.png differ diff --git a/limereport/objectinspector/images/uncheck_w.png b/limereport/objectinspector/images/uncheck_w.png index 838c0ab..75ee37d 100644 Binary files a/limereport/objectinspector/images/uncheck_w.png and b/limereport/objectinspector/images/uncheck_w.png differ diff --git a/limereport/report.qrc b/limereport/report.qrc index 6dfc6fe..0f74519 100644 --- a/limereport/report.qrc +++ b/limereport/report.qrc @@ -121,11 +121,11 @@ images/text_bold1.png images/text_italic1.png images/text_underline1.png - images/edit_control_3_24.png + images/edit_control_3_24.png images/edit_layout_4_24.png - images/hlayuot_3_24.png - images/addBand1.png - images/delete1.png + images/hlayuot_3_24.png + images/addBand1.png + images/delete1.png images/copy2.png images/new_leaf1.png images/paste1.png @@ -170,5 +170,9 @@ images/toolbar.png images/not_checked.png images/checked.png + images/hlayuot_4_24.png + images/delete2.png + images/addBand2.png + images/edit_control_4_24.png