diff --git a/limereport/items/borderframeeditor.cpp b/limereport/items/borderframeeditor.cpp new file mode 100644 index 0000000..a864550 --- /dev/null +++ b/limereport/items/borderframeeditor.cpp @@ -0,0 +1,287 @@ +#include "borderframeeditor.h" +#include "ui_borderframeeditor.h" +#include +#include +#include +#include +#include "lrbasedesignintf.h" +#include "lrbordereditor.h" +using namespace LimeReport; +BorderFrameEditor::BorderFrameEditor(QWidget *parent) + : QWidget(parent) + , ui(new Ui::BorderFrameEditor) +{ + ui->setupUi(this); + scene = new QGraphicsScene(ui->graphicsView); + + QRect vRect = rect(); + + //Draw corder lines + //topLeft + scene->addLine(10,5, 10,10,QPen(Qt::gray)); + scene->addLine(5,10, 10,10,QPen(Qt::gray)); + //bottomLeft + scene->addLine(10,vRect.bottom() -5, 10,vRect.bottom()-10,QPen(Qt::gray)); + scene->addLine(5,vRect.bottom()-10,10,vRect.bottom()-10,QPen(Qt::gray)); + //bottomRight + scene->addLine(vRect.right()-10,vRect.bottom() -5,vRect.right()- 10,vRect.bottom()-10,QPen(Qt::gray)); + scene->addLine(vRect.right()-5,vRect.bottom()-10,vRect.right()-10,vRect.bottom()-10,QPen(Qt::gray)); + //topRight + scene->addLine(vRect.width()-10,5,vRect.width()- 10,10,QPen(Qt::gray)); + scene->addLine(vRect.width()-5,10, vRect.width()-10,10,QPen(Qt::gray)); + scene->setSceneRect(vRect); + ui->graphicsView->setScene(scene); + QGraphicsSimpleTextItem * io = new QGraphicsSimpleTextItem(); + io->setAcceptedMouseButtons(Qt::LeftButton); + io->setPos(scene->sceneRect().center()); + io->setText(tr("Text")); + scene->addItem(io); + + QRectF bR = io->sceneBoundingRect(); + io->setPos( scene->sceneRect().center().x() - bR.width()/2, scene->sceneRect().center().y() - bR.height()/2 ); + connect(this,SIGNAL(borderSideClicked(int, bool)),this,SLOT(SlotBorderSideClicked(int,bool))); + +} + +BorderFrameEditor::~BorderFrameEditor() +{ + delete ui; +} + +void BorderFrameEditor::setPen(QPen pen) +{ + m_pen = pen; + updateBorders(); + +} + +QPen BorderFrameEditor::pen() +{ + return m_pen; +} + +void BorderFrameEditor::setAllLines() +{ + + topLine = scene->addLine(QLineF(10,10,rect().width() - 10,10),m_pen); + + + leftLine = scene->addLine(QLineF(10,10,10,rect().height() - 10),m_pen); + + bottomLine = scene->addLine(QLineF(10,rect().bottom() -10,rect().width() - 10 + ,rect().bottom() - 10),m_pen); + + + + rightLine = scene->addLine(QLineF(rect().width() - 10,10 + ,rect().width() - 10,rect().height() - 10),m_pen); + + +} + +void BorderFrameEditor::unSetAllLines() +{ + if(topLine) + { + scene->removeItem(topLine); + + } + if(leftLine) + { + scene->removeItem(leftLine); + + } + if(bottomLine) + { + scene->removeItem(bottomLine); + + + + } + if(rightLine) + { + scene->removeItem(rightLine); + + } + +} + +void BorderFrameEditor::mousePressEvent(QMouseEvent *event) +{ + + if(event->x() >= 10 && event->y() <30)//Draw top border + { + + if(!topLine) + { + + emit borderSideClicked(1,true); + + } + else + { + + emit borderSideClicked(1,false); + } + } + + if((event->x() >= 10 && event->x() < 30) && (event->y() > 10)) //Draw border left + { + if(!leftLine) + { + + emit borderSideClicked(4,true); + + } + else + { + + emit borderSideClicked(4,false); + + } + } + + if(event->x() >= 10 && (event->y() >80 && event->y() < rect().bottom())) //Draw bottom border + { + if(!bottomLine) + { + + emit borderSideClicked(2,true); + } + + else + { + + emit borderSideClicked(2,false); + + } + } + + if((event->x() >= 130 && event->x() < rect().width()) && event->y() > 10) //Draw border right + { + if(!rightLine) + { + + emit borderSideClicked(8,true); + + } + else + { + + emit borderSideClicked(8,false); + + } + + } + + +} + +void BorderFrameEditor::SlotBorderSideClicked(int side, bool show) +{ + + switch(side) + { + case BaseDesignIntf::BorderSide::TopLine: + { + if(show) + { + topLine = scene->addLine(QLineF(10,10,rect().width() - 10,10),m_pen); + + + } + else + { + scene->removeItem(topLine); + topLine = NULL; + + } + }break; + case BaseDesignIntf::LeftLine: + { + if(show) + { + leftLine = scene->addLine(QLineF(10,10,10,rect().height() - 10),m_pen); + + + } + else + { + scene->removeItem(leftLine); + leftLine = NULL; + + + } + }break; + case BaseDesignIntf::BottomLine: + { + if(show) + { + bottomLine = scene->addLine(QLineF(10,rect().bottom() -10,rect().width() - 10 + ,rect().bottom() - 10),m_pen); + + } + + else + { + scene->removeItem(bottomLine); + bottomLine = NULL; + + + } + }break; + case BaseDesignIntf::RightLine: + { + if(show) + { + rightLine = scene->addLine(QLineF(rect().width() - 10,10 + ,rect().width() - 10,rect().height() - 10),m_pen); + + } + else + { + scene->removeItem(rightLine); + rightLine = NULL; + + } + + } + + } + updateBorders(); +} + +void BorderFrameEditor::updateBorders() +{ + //if a line is set we redraw it + if(topLine) + { + scene->removeItem(topLine); + topLine = scene->addLine(QLineF(10,10,rect().width() - 10,10),m_pen); + + } + if(leftLine) + { + scene->removeItem(leftLine); + leftLine = scene->addLine(QLineF(10,10,10,rect().height() - 10),m_pen); + + } + if(bottomLine) + { + scene->removeItem(bottomLine); + + bottomLine = scene->addLine(QLineF(10,rect().bottom() -10,rect().width() - 10 + ,rect().bottom() - 10),m_pen); + + } + if(rightLine) + { + scene->removeItem(rightLine); + + rightLine = scene->addLine(QLineF(rect().width() - 10,10 + ,rect().width() - 10,rect().height() - 10),m_pen); + + } + +} + diff --git a/limereport/items/borderframeeditor.h b/limereport/items/borderframeeditor.h new file mode 100644 index 0000000..f0beae8 --- /dev/null +++ b/limereport/items/borderframeeditor.h @@ -0,0 +1,42 @@ +#ifndef WIDGET +#define WIDGET + +#include +#include +#include +#include "lrbasedesignintf.h" +QT_BEGIN_NAMESPACE +namespace Ui { class BorderFrameEditor; } +QT_END_NAMESPACE + +class BorderFrameEditor : public QWidget +{ + Q_OBJECT + +public: + BorderFrameEditor(QWidget *parent = nullptr); + ~BorderFrameEditor(); + void setPen(QPen pen); + QPen pen(); + void setAllLines(); + void unSetAllLines(); +protected: + void mousePressEvent(QMouseEvent *event); +signals: + void borderSideClicked(int side,bool show); +private slots: + void SlotBorderSideClicked(int side, bool show); + +private: + Ui::BorderFrameEditor *ui; + QGraphicsScene *scene; + QGraphicsLineItem *topLine = NULL + ,*bottomLine = NULL + ,*leftLine = NULL + ,*rightLine = NULL; + QPen m_pen; + void updateBorders(); + + +}; +#endif // WIDGET diff --git a/limereport/items/borderframeeditor.ui b/limereport/items/borderframeeditor.ui new file mode 100644 index 0000000..3324d90 --- /dev/null +++ b/limereport/items/borderframeeditor.ui @@ -0,0 +1,73 @@ + + + BorderFrameEditor + + + + 0 + 0 + 150 + 100 + + + + + 0 + 0 + + + + BorderFrameEditor + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 150 + 100 + + + + + 150 + 100 + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractScrollArea::AdjustToContents + + + QGraphicsView::AnchorViewCenter + + + + + + + + diff --git a/limereport/items/editors/lritemsborderseditorwidget.cpp b/limereport/items/editors/lritemsborderseditorwidget.cpp index 201b981..7b4853a 100644 --- a/limereport/items/editors/lritemsborderseditorwidget.cpp +++ b/limereport/items/editors/lritemsborderseditorwidget.cpp @@ -29,7 +29,7 @@ ****************************************************************************/ #include "lritemsborderseditorwidget.h" #include - +#include "lrbordereditor.h" namespace LimeReport{ void ItemsBordersEditorWidget::setItemEvent(BaseDesignIntf* item) @@ -44,6 +44,7 @@ void ItemsBordersEditorWidget::setItemEvent(BaseDesignIntf* item) updateValues((BaseDesignIntf::BorderLines)borders.toInt()); setEnabled(true); } + itm = item; } void ItemsBordersEditorWidget::properyChangedEvent(const QString& property, const QVariant& oldValue, const QVariant& newValue) @@ -76,6 +77,18 @@ void ItemsBordersEditorWidget::buttonClicked(bool) } +void ItemsBordersEditorWidget::editBorderClicked() +{ + lrbordereditor be; + be.loadItem(itm); + if(be.exec() == QDialog::Rejected)return; + updateValues(be.borderSides()); + itm->setBorderLinesFlags(be.borderSides()); + itm->setBorderLineSize(be.border_width()); + itm->setBorderStyle((LimeReport::BaseDesignIntf::BorderStyle)be.border_style()); + itm->setBorderColor(be.borderColor()); +} + void ItemsBordersEditorWidget::initEditor() { @@ -114,6 +127,11 @@ void ItemsBordersEditorWidget::initEditor() m_allLines->setIcon(QIcon(":/report/images/allLines")); connect(m_allLines,SIGNAL(triggered()),this,SLOT(allBordesClicked())); addAction(m_allLines); + addSeparator(); + m_BorderEditor = new QAction(tr("Edit border"),this); + m_BorderEditor->setIcon(QIcon(":/report/images/allLines")); + connect(m_BorderEditor,SIGNAL(triggered()),this,SLOT(editBorderClicked())); + addAction(m_BorderEditor); setEnabled(false); diff --git a/limereport/items/editors/lritemsborderseditorwidget.h b/limereport/items/editors/lritemsborderseditorwidget.h index 233e5f5..2538258 100644 --- a/limereport/items/editors/lritemsborderseditorwidget.h +++ b/limereport/items/editors/lritemsborderseditorwidget.h @@ -49,6 +49,7 @@ protected slots: virtual void noBordesClicked(); virtual void allBordesClicked(); virtual void buttonClicked(bool); + void editBorderClicked(); protected: void setItemEvent(BaseDesignIntf *item); void properyChangedEvent(const QString &property, const QVariant &oldValue, const QVariant &newValue); @@ -62,8 +63,10 @@ private: QAction* m_topLine; QAction* m_bottomLine; QAction* m_allLines; + QAction* m_BorderEditor; bool m_changing; int m_borders; + BaseDesignIntf *itm; }; #ifdef HAVE_REPORT_DESIGNER @@ -78,6 +81,7 @@ protected slots: void allBordesClicked(); private: ReportDesignWidget* m_reportEditor; + }; #endif diff --git a/limereport/items/lrbordereditor.cpp b/limereport/items/lrbordereditor.cpp new file mode 100644 index 0000000..e8e2af3 --- /dev/null +++ b/limereport/items/lrbordereditor.cpp @@ -0,0 +1,182 @@ +#include "lrbordereditor.h" +#include "ui_lrbordereditor.h" +#include +#include "lrbasedesignintf.h" +lrbordereditor::lrbordereditor(QWidget *parent) : + QDialog(parent), + ui(new Ui::lrbordereditor) +{ + ui->setupUi(this); + + connect(ui->borderFrame,SIGNAL(borderSideClicked(int, bool)), this, SLOT(checkToolButtons(int, bool))); +} + +void lrbordereditor::loadItem(LimeReport::BaseDesignIntf *i) +{ + item = i; + if(item->borderLines() & LimeReport::BaseDesignIntf::TopLine) + { + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::TopLine,true); + + } + if(item->borderLines() & LimeReport::BaseDesignIntf::LeftLine) + { + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::LeftLine,true); + + } + if(item->borderLines() & LimeReport::BaseDesignIntf::RightLine) + { + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::RightLine,true); + + } + if(item->borderLines() & LimeReport::BaseDesignIntf::BottomLine) + { + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::BottomLine,true); + } + QPen pen; + pen.setWidthF(item->borderLineSize()); + pen.setColor(item->borderColor()); + pen.setStyle((Qt::PenStyle)item->borderStyle()); + ui->borderFrame->setPen(pen); + border_color = item->borderColor().name(); + ui->listWidget->setCurrentRow((Qt::PenStyle)item->borderStyle()); + ui->comboBox->setCurrentText(QString::number(item->borderLineSize())); + borderWidth = ui->comboBox->currentText().toDouble(); + borderStyle =ui->listWidget->currentRow(); + ui->pushButton->setStyleSheet(QString("#pushButton{background-color:%1;}").arg(border_color)); +} + +LimeReport::BaseDesignIntf::BorderLines lrbordereditor::borderSides() +{ + int borders = 0; + borders += (ui->topLine->isChecked())?LimeReport::BaseDesignIntf::TopLine:0; + borders += (ui->bottomLine->isChecked())?LimeReport::BaseDesignIntf::BottomLine:0; + borders += (ui->leftLine->isChecked())?LimeReport::BaseDesignIntf::LeftLine:0; + borders += (ui->rightLine->isChecked())?LimeReport::BaseDesignIntf::RightLine:0; + return (LimeReport::BaseDesignIntf::BorderLines)borders; +} + +LimeReport::BaseDesignIntf::BorderStyle lrbordereditor::border_style() +{ + return (LimeReport::BaseDesignIntf::BorderStyle)borderStyle; +} + +QString lrbordereditor::borderColor() +{ + return border_color; +} + +double lrbordereditor::border_width() +{ + return borderWidth; +} + +lrbordereditor::~lrbordereditor() +{ + delete ui; +} + +void lrbordereditor::on_listWidget_currentRowChanged(int currentRow) +{ + QPen pen = ui->borderFrame->pen(); + pen.setStyle((Qt::PenStyle)currentRow); + borderStyle = currentRow; + ui->borderFrame->setPen(pen); + + +} + + +void lrbordereditor::on_comboBox_currentTextChanged(const QString &arg1) +{ + QPen pen = ui->borderFrame->pen(); + pen.setWidthF(arg1.toDouble()); + ui->borderFrame->setPen(pen); + borderWidth = arg1.toDouble(); +} + + +void lrbordereditor::on_pushButton_clicked() +{ + QColorDialog cd(this); + if(cd.exec() == QDialog::Rejected)return; + QPen pen = ui->borderFrame->pen(); + pen.setColor(cd.selectedColor().name()); + border_color = pen.color().name(); + + ui->pushButton->setStyleSheet(QString("#pushButton{background-color:%1;}").arg(border_color)); + ui->borderFrame->setPen(pen); +} + + +void lrbordereditor::on_toolButton_4_clicked() +{ + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::TopLine,true); + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::BottomLine,true); + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::LeftLine,true); + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::RightLine,true); + QPen pen = ui->borderFrame->pen(); + + ui->borderFrame->setPen(pen); +} + + +void lrbordereditor::on_noLines_clicked() +{ + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::TopLine,false); + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::BottomLine,false); + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::LeftLine,false); + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::RightLine,false); + +} + + +void lrbordereditor::on_topLine_clicked() +{ + + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::TopLine,ui->topLine->isChecked()); + +} + +void lrbordereditor::checkToolButtons(int side, bool check) +{ + + switch(side) + { + case LimeReport::BaseDesignIntf::BorderSide::TopLine: + { + ui->topLine->setChecked(check); + }break; + case LimeReport::BaseDesignIntf::BorderSide::BottomLine: + { + ui->bottomLine->setChecked(check); + }break; + case LimeReport::BaseDesignIntf::BorderSide::LeftLine: + { + ui->leftLine->setChecked(check); + }break; + case LimeReport::BaseDesignIntf::BorderSide::RightLine: + { + ui->rightLine->setChecked(check); + }break; + } +} + + +void lrbordereditor::on_bottomLine_clicked() +{ + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::BottomLine,ui->bottomLine->isChecked()); +} + + +void lrbordereditor::on_leftLine_clicked() +{ + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::LeftLine,ui->leftLine->isChecked()); +} + + +void lrbordereditor::on_toolButton_3_clicked() +{ + emit ui->borderFrame->borderSideClicked(LimeReport::BaseDesignIntf::BorderSide::RightLine,ui->rightLine->isChecked()); +} + diff --git a/limereport/items/lrbordereditor.h b/limereport/items/lrbordereditor.h new file mode 100644 index 0000000..5c2c9ba --- /dev/null +++ b/limereport/items/lrbordereditor.h @@ -0,0 +1,56 @@ +#ifndef LRBORDEREDITOR_H +#define LRBORDEREDITOR_H + +#include +#include "lrbasedesignintf.h" +namespace Ui { +class lrbordereditor; +} + +class lrbordereditor : public QDialog +{ + Q_OBJECT + +public: + explicit lrbordereditor(QWidget *parent = nullptr); + void loadItem(LimeReport::BaseDesignIntf *i); + LimeReport::BaseDesignIntf::BorderLines borderSides(); + LimeReport::BaseDesignIntf::BorderStyle border_style(); + QString borderColor(); + double border_width(); + + + ~lrbordereditor(); + +private slots: + void on_listWidget_currentRowChanged(int currentRow); + + void on_comboBox_currentTextChanged(const QString &arg1); + + void on_pushButton_clicked(); + + void on_toolButton_4_clicked(); + + void on_noLines_clicked(); + + void on_topLine_clicked(); + void checkToolButtons(int side, bool check); + + void on_bottomLine_clicked(); + + void on_leftLine_clicked(); + + void on_toolButton_3_clicked(); + +private: + Ui::lrbordereditor *ui; + LimeReport::BaseDesignIntf *item; + QString border_color; + int borderStyle = 1; + double borderWidth = 1; + + +}; + + +#endif // LRBORDEREDITOR_H diff --git a/limereport/items/lrbordereditor.ui b/limereport/items/lrbordereditor.ui new file mode 100644 index 0000000..7cd7a39 --- /dev/null +++ b/limereport/items/lrbordereditor.ui @@ -0,0 +1,389 @@ + + + lrbordereditor + + + + 0 + 0 + 381 + 311 + + + + Edit border + + + + + + + + Presets + + + true + + + + + + No lines + + + + :/report/images/noLines:/report/images/noLines + + + false + + + false + + + Qt::ToolButtonTextUnderIcon + + + + + + + Outline + + + + :/report/images/allLines:/report/images/allLines + + + Qt::ToolButtonTextUnderIcon + + + + + + + + + + Border + + + true + + + + + + + + + + ... + + + + :/report/images/topLine:/report/images/topLine + + + true + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + ... + + + + :/report/images/bottomLine:/report/images/bottomLine + + + true + + + + + + + + + + + + + + ... + + + + :/report/images/leftLine:/report/images/leftLine + + + true + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + ... + + + + :/report/images/rightLine:/report/images/rightLine + + + true + + + + + + + + + + + + + + + + + 0 + 0 + + + + + 120 + 16777215 + + + + Style + + + + + + + 0 + 0 + + + + + 0 + 125 + + + + + 125 + 16777215 + + + + 1 + + + + No style + + + + + Solid + + + + + Dash + + + + + Dot + + + + + Dash dot + + + + + Dash dot dot + + + + + + + + Width: + + + + + + + true + + + 1 + + + 2 + + + + 0.25 + + + + + 0.5 + + + + + 1 + + + + + 1.5 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + 5 + + + + + 6 + + + + + + + + Color: + + + + + + + #pushButton{background-color: black;} + + + Select... + + + + + + + + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + + + + + BorderFrameEditor + QWidget +
borderframeeditor.h
+ 1 +
+
+ + + + + + + buttonBox + accepted() + lrbordereditor + accept() + + + 253 + 255 + + + 219 + 275 + + + + + buttonBox + rejected() + lrbordereditor + reject() + + + 316 + 258 + + + 345 + 277 + + + + +
diff --git a/limereport/items/lrpageeditor.cpp b/limereport/items/lrpageeditor.cpp new file mode 100644 index 0000000..d0c2f46 --- /dev/null +++ b/limereport/items/lrpageeditor.cpp @@ -0,0 +1,104 @@ +#include "lrpageeditor.h" +#include "ui_lrpageeditor.h" +#include "lrpagedesignintf.h" +#include +#include +lrpageeditor::lrpageeditor(QWidget *parent, LimeReport::PageItemDesignIntf *page) : + QDialog(parent), + ui(new Ui::lrpageeditor) +{ + ui->setupUi(this); + m_page = page; + //Paper + QMetaEnum pageSizes = page->metaObject()->property(page->metaObject()->indexOfProperty("pageSize")).enumerator(); + + for (int i=0;iformat->addItem(pageSizes.key(i)); + } + ui->format->setCurrentIndex(m_page->pageSize()); + ui->width->setValue(m_page->width() / LimeReport::Const::mmFACTOR); + ui->height->setValue(m_page->height() / LimeReport::Const::mmFACTOR); + ui->portrait->setChecked(m_page->pageOrientation() == LimeReport::PageItemDesignIntf::Portrait); + ui->landscape->setChecked(m_page->pageOrientation() == LimeReport::PageItemDesignIntf::Landscape); + //Margins + ui->marginTop->setValue(m_page->topMargin()); + ui->marginRight->setValue(m_page->rightMargin()); + ui->marginLeft->setValue(m_page->leftMargin()); + ui->marginBottom->setValue(m_page->bottomMargin()); + ui->dropPrinterMargins->setChecked(m_page->dropPrinterMargins()); + + //Other + ui->endlessHeight->setChecked(m_page->endlessHeight()); + ui->extendedHeight->setValue(m_page->extendedHeight()); + ui->fullPage->setChecked(m_page->fullPage()); +} + +lrpageeditor::~lrpageeditor() +{ + delete ui; +} + +void lrpageeditor::applyChanges() +{ + m_page->setPageSize(static_cast(ui->format->currentIndex())); + m_page->setWidth(ui->width->value()* LimeReport::Const::mmFACTOR); + m_page->setHeight(ui->height->value()* LimeReport::Const::mmFACTOR); + m_page->setPageOrientation(ui->portrait->isChecked()?LimeReport::PageItemDesignIntf::Portrait : LimeReport::PageItemDesignIntf::Landscape); + + m_page->setTopMargin(ui->marginTop->value()); + m_page->setBottomMargin(ui->marginBottom->value()); + m_page->setRightMargin(ui->marginRight->value()); + m_page->setLeftMargin(ui->marginLeft->value()); + m_page->setDropPrinterMargins(ui->dropPrinterMargins->isChecked()); + ui->endlessHeight->setChecked(ui->endlessHeight->isChecked()); + m_page->setExtendedHeight(ui->extendedHeight->value()); +} + +void lrpageeditor::on_buttonBox_accepted() +{ + applyChanges(); + accept(); + +} + +QSizeF lrpageeditor::getRectByPageSize(const LimeReport::PageItemDesignIntf::PageSize& size) +{ + if (size != LimeReport::PageItemDesignIntf::Custom) { + QPrinter printer; + printer.setOutputFormat(QPrinter::PdfFormat); +#if (QT_VERSION < QT_VERSION_CHECK(5, 15, 1)) + printer.setOrientation(ui->portrait->isChecked()?QPrinter::Portrait : QPrinter::Landscape); + printer.setPaperSize((QPrinter::PageSize)size); + return QSizeF(printer.paperSize(QPrinter::Millimeter).width() * 10, + printer.paperSize(QPrinter::Millimeter).height() * 10); + +#else + QPageSize pageSize = QPageSize((QPageSize::PageSizeId)size); + qreal width = pageSize.size(QPageSize::Millimeter).width() * 10; + qreal height = pageSize.size(QPageSize::Millimeter).height() * 10; + return QSizeF(pageOrientation() == Portrait ? width : height, + pageOrientation() == Portrait ? height : width); + +// printer.setPageOrientation((QPageLayout::Orientation)pageOrientation()); +// printer.setPageSize(QPageSize((QPageSize::PageSizeId)size)); +// return QSizeF(printer.pageLayout().pageSize().size(QPageSize::Millimeter).width() * 10, +// printer.pageLayout().pageSize().size(QPageSize::Millimeter).height() * 10); +#endif + } + + else { + return QSizeF(width(),height()); + } +} +void lrpageeditor::on_format_currentIndexChanged(int index) +{ + QPageSize ps = *new QPageSize(); + if(ui->format->currentText() != "Custom") + { + QSizeF pageSize = getRectByPageSize(static_cast(index)); + ui->width->setValue(pageSize.width()/10); + ui->height->setValue(pageSize.height()/10); + } + +} + diff --git a/limereport/items/lrpageeditor.h b/limereport/items/lrpageeditor.h new file mode 100644 index 0000000..545ca3e --- /dev/null +++ b/limereport/items/lrpageeditor.h @@ -0,0 +1,31 @@ +#ifndef LRPAGEEDITOR_H +#define LRPAGEEDITOR_H + +#include +#include "lrpageitemdesignintf.h" +#include +namespace Ui { +class lrpageeditor; +} + +class lrpageeditor : public QDialog +{ + Q_OBJECT + +public: + explicit lrpageeditor(QWidget *parent = nullptr,LimeReport::PageItemDesignIntf *page = nullptr); + ~lrpageeditor(); + +private slots: + void on_buttonBox_accepted(); + void on_format_currentIndexChanged(int index); + +private: + Ui::lrpageeditor *ui; + LimeReport::PageItemDesignIntf* m_page; + + void applyChanges(); + QSizeF getRectByPageSize(const LimeReport::PageItemDesignIntf::PageSize& size); +}; + +#endif // LRPAGEEDITOR_H diff --git a/limereport/items/lrpageeditor.ui b/limereport/items/lrpageeditor.ui new file mode 100644 index 0000000..70ca440 --- /dev/null +++ b/limereport/items/lrpageeditor.ui @@ -0,0 +1,341 @@ + + + lrpageeditor + + + + 0 + 0 + 306 + 322 + + + + Page setup + + + + + + 0 + + + + Paper + + + + + + + + Format + + + + + + + + + + + + Dimension + + + + + + Width: + + + + + + + + 100 + 16777215 + + + + true + + + mm + + + 99999999999999991611392.000000000000000 + + + 10.000000000000000 + + + + + + + Height: + + + + + + + + 100 + 16777215 + + + + true + + + mm + + + 99999999999999991611392.000000000000000 + + + 10.000000000000000 + + + + + + + + + + Orientation + + + + + + Portrait + + + true + + + + + + + Landscape + + + + + + + + + + + Margins + + + + + + Bottom: + + + + + + + Top: + + + + + + + Right: + + + + + + + mm + + + + + + + mm + + + + + + + mm + + + + + + + Left: + + + + + + + mm + + + + + + + Qt::Horizontal + + + + + + + Drop printer margins + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + Other + + + + + + Height options + + + + + + Endless Height + + + + + + + false + + + + + + Extended Height: + + + + + + + 99999999.000000000000000 + + + + + + + + + + + + + Full page + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + + + + + + buttonBox + rejected() + lrpageeditor + reject() + + + 325 + 312 + + + 286 + 274 + + + + + endlessHeight + clicked(bool) + horizontalFrame + setEnabled(bool) + + + 60 + 50 + + + 130 + 85 + + + + + diff --git a/limereport/limereport.pri b/limereport/limereport.pri index aca7167..524d3d8 100644 --- a/limereport/limereport.pri +++ b/limereport/limereport.pri @@ -78,12 +78,15 @@ SOURCES += \ $$REPORT_PATH/lrreporttranslation.cpp \ $$REPORT_PATH/exporters/lrpdfexporter.cpp \ $$REPORT_PATH/lraxisdata.cpp \ - $$REPORT_PATH/lrpreparedpages.cpp + $$REPORT_PATH/lrpreparedpages.cpp \ + $$REPORT_PATH/items/lrpageeditor.cpp \ + $$REPORT_PATH/items/borderframeeditor.cpp \ + $$REPORT_PATH/items/lrbordereditor.cpp CONFIG(staticlib) { SOURCES += $$REPORT_PATH/lrfactoryinitializer.cpp } - + CONFIG(zint) { SOURCES += $$REPORT_PATH/items/lrbarcodeitem.cpp } @@ -146,7 +149,7 @@ HEADERS += \ $$REPORT_PATH/lrcollection.h \ $$REPORT_PATH/lrpagedesignintf.h \ $$REPORT_PATH/lrreportengine_p.h \ - $$REPORT_PATH/lrdatasourcemanager.h \ + $$REPORT_PATH/lrdatasourcemanager.h \ $$REPORT_PATH/lrreportrender.h \ $$REPORT_PATH/lrpreviewreportwindow.h \ $$REPORT_PATH/lrpreviewreportwidget.h \ @@ -172,11 +175,14 @@ HEADERS += \ $$REPORT_PATH/lrreporttranslation.h \ $$REPORT_PATH/lrreportdesignwindowintrerface.h \ $$REPORT_PATH/lrexporterintf.h \ - $$REPORT_PATH/lrexportersfactory.h \ + $$REPORT_PATH/lrexportersfactory.h \ $$REPORT_PATH/exporters/lrpdfexporter.h \ $$REPORT_PATH/lrpreparedpages.h \ $$REPORT_PATH/lraxisdata.h \ - $$REPORT_PATH/lrpreparedpagesintf.h + $$REPORT_PATH/lrpreparedpagesintf.h \ + $$REPORT_PATH/items/lrpageeditor.h \ + $$REPORT_PATH/items/borderframeeditor.h \ + $$REPORT_PATH/items/lrbordereditor.h CONFIG(staticlib) { HEADERS += $$REPORT_PATH/lrfactoryinitializer.h @@ -199,7 +205,10 @@ FORMS += \ $$REPORT_PATH/items/lrchartitemeditor.ui \ $$REPORT_PATH/items/lrchartaxiseditor.ui \ $$REPORT_PATH/items/lrimageitemeditor.ui \ - $$REPORT_PATH/scripteditor/lrscripteditor.ui + $$REPORT_PATH/scripteditor/lrscripteditor.ui \ + $$REPORT_PATH/items/lrpageeditor.ui \ + $$REPORT_PATH/items/borderframeeditor.ui \ + $$REPORT_PATH/items/lrbordereditor.ui RESOURCES += \ $$REPORT_PATH/report.qrc \ diff --git a/limereport/limereport.pro b/limereport/limereport.pro index 1389ae2..90016a1 100644 --- a/limereport/limereport.pro +++ b/limereport/limereport.pro @@ -72,16 +72,16 @@ win32 { } QMAKE_POST_LINK += $$QMAKE_COPY_DIR \"$${DEST_INCLUDE_DIR}\" \"$${DESTDIR}\" } else { - EXTRA_FILES ~= s,/,\\,g - BUILD_DIR ~= s,/,\\,g - DEST_DIR = $$DESTDIR/include - DEST_DIR ~= s,/,\\,g - DEST_INCLUDE_DIR ~= s,/,\\,g + EXTRA_FILES ~= s,/,\\,g + BUILD_DIR ~= s,/,\\,g + DEST_DIR = $$DESTDIR/include + DEST_DIR ~= s,/,\\,g + DEST_INCLUDE_DIR ~= s,/,\\,g for(FILE,EXTRA_FILES) { - QMAKE_POST_LINK += $$QMAKE_COPY \"$$FILE\" \"$${DEST_INCLUDE_DIR}\" $$escape_expand(\\n\\t) - } - QMAKE_POST_LINK += $$QMAKE_COPY_DIR \"$${DEST_INCLUDE_DIR}\" \"$${DEST_DIR}\" + QMAKE_POST_LINK += $$QMAKE_COPY \"$$FILE\" \"$${DEST_INCLUDE_DIR}\" $$escape_expand(\\n\\t) + } + QMAKE_POST_LINK += $$QMAKE_COPY_DIR \"$${DEST_INCLUDE_DIR}\" \"$${DEST_DIR}\" } } @@ -139,3 +139,4 @@ CONFIG(build_translations) { } #### EN AUTOMATIC TRANSLATIONS + diff --git a/limereport/lrbanddesignintf.cpp b/limereport/lrbanddesignintf.cpp index cfa9eb0..73a9404 100644 --- a/limereport/lrbanddesignintf.cpp +++ b/limereport/lrbanddesignintf.cpp @@ -60,7 +60,7 @@ void BandMarker::paint(QPainter *painter, const QStyleOptionGraphicsItem* /**opt boundingRect().bottomLeft().y()-4, boundingRect().width(),4), Qt::lightGray ); - + qDebug()<setRenderHint(QPainter::Antialiasing); qreal size = (boundingRect().width()setColor(Qt::magenta); m_bandMarker->setHeight(height()); - m_bandMarker->setPos(pos().x()-m_bandMarker->width(),pos().y()); + m_bandMarker->setPos(pos().x()-m_bandMarker->width() - (itemMode() == ItemModes::PrintMode?boundingRect().width() : 0),pos().y()); if (scene()) scene()->addItem(m_bandMarker); m_bandNameLabel = new BandNameLabel(this); @@ -818,7 +818,7 @@ BandDesignIntf* BandDesignIntf::findParentBand() void BandDesignIntf::updateBandMarkerGeometry() { if (parentItem() && m_bandMarker){ - m_bandMarker->setPos(pos().x()-m_bandMarker->width(),pos().y()); + m_bandMarker->setPos(pos().x()-m_bandMarker->width() - (itemMode() == ItemModes::PrintMode?boundingRect().width() : 0),pos().y()); m_bandMarker->setHeight(rect().height()); } } @@ -839,7 +839,7 @@ QVariant BandDesignIntf::itemChange(QGraphicsItem::GraphicsItemChange change, co { if ((change==ItemPositionChange)&&((itemMode()&DesignMode)||(itemMode()&EditMode))){ if (m_bandMarker){ - m_bandMarker->setPos((value.toPointF().x()-m_bandMarker->boundingRect().width()), + m_bandMarker->setPos((value.toPointF().x()-m_bandMarker->boundingRect().width() - (itemMode() == ItemModes::PrintMode?boundingRect().width() : 0)), value.toPointF().y()); } } @@ -1142,7 +1142,7 @@ void BandDesignIntf::updateItemSize(DataSourceManager* dataManager, RenderPass p restoreLinks(); snapshotItemsLayout(); - arrangeSubItems(pass, dataManager); + arrangeSubItems(pass, dataManager); if (autoHeight()){ if (!keepTopSpace()) { qreal minTop = findMinTop() + m_shiftItems; diff --git a/limereport/lrbasedesignintf.cpp b/limereport/lrbasedesignintf.cpp index 0a0225d..3539601 100644 --- a/limereport/lrbasedesignintf.cpp +++ b/limereport/lrbasedesignintf.cpp @@ -37,7 +37,7 @@ #include "lrhorizontallayout.h" #include "serializators/lrstorageintf.h" #include "serializators/lrxmlreader.h" - +#include "lrbordereditor.h" #include #include #include @@ -1068,10 +1068,10 @@ void BaseDesignIntf::drawTopLine(QPainter *painter, QRectF rect) const painter->setPen(borderPen(TopLine)); painter->drawLine(rect.x(), rect.y(), rect.width(), rect.y()); if(borderStyle() == BorderStyle::Doubled) - painter->drawLine(rect.x()+6+m_borderLineSize, - rect.y()+6+m_borderLineSize, - rect.width()-6-m_borderLineSize, - rect.y()+6+m_borderLineSize); + painter->drawLine(rect.x()+3+m_borderLineSize, + rect.y()+3+m_borderLineSize, + rect.width()-3-m_borderLineSize, + rect.y()+3+m_borderLineSize); } void BaseDesignIntf::drawBootomLine(QPainter *painter, QRectF rect) const @@ -1082,10 +1082,10 @@ void BaseDesignIntf::drawBootomLine(QPainter *painter, QRectF rect) const painter->setPen(borderPen(BottomLine)); painter->drawLine(rect.x(), rect.height(), rect.width(), rect.height()); if(borderStyle() == BorderStyle::Doubled) - painter->drawLine(rect.x()+6+m_borderLineSize, - rect.height()-6-m_borderLineSize, - rect.width()-6-m_borderLineSize, - rect.height()-6-m_borderLineSize); + painter->drawLine(rect.x()+3+m_borderLineSize, + rect.height()-3-m_borderLineSize, + rect.width()-3-m_borderLineSize, + rect.height()-3-m_borderLineSize); } void BaseDesignIntf::drawRightLine(QPainter *painter, QRectF rect) const @@ -1096,10 +1096,10 @@ void BaseDesignIntf::drawRightLine(QPainter *painter, QRectF rect) const painter->drawLine(rect.width(), rect.y(), rect.width(), rect.height()); if(borderStyle() == BorderStyle::Doubled) - painter->drawLine(rect.width()-6 - m_borderLineSize, - rect.y()+6+m_borderLineSize, - rect.width()-6-m_borderLineSize, - rect.height()-6-m_borderLineSize); + painter->drawLine(rect.width()-3 - m_borderLineSize, + rect.y()+3+m_borderLineSize, + rect.width()-3-m_borderLineSize, + rect.height()-3-m_borderLineSize); } void BaseDesignIntf::drawLeftLine(QPainter *painter, QRectF rect) const @@ -1109,10 +1109,10 @@ void BaseDesignIntf::drawLeftLine(QPainter *painter, QRectF rect) const painter->setPen(borderPen(LeftLine)); painter->drawLine(rect.x(), rect.y(), rect.x(), rect.height()); if(borderStyle() == BorderStyle::Doubled) - painter->drawLine(rect.x()+6+m_borderLineSize, - rect.y()+6+m_borderLineSize, - rect.x()+6+m_borderLineSize, - rect.height()-6-m_borderLineSize); + painter->drawLine(rect.x()+3+m_borderLineSize, + rect.y()+3+m_borderLineSize, + rect.x()+3+m_borderLineSize, + rect.height()-3-m_borderLineSize); } void BaseDesignIntf::drawDesignModeBorder(QPainter *painter, QRectF rect) const @@ -1477,6 +1477,7 @@ void BaseDesignIntf::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) menu.addSeparator(); QAction* noBordersAction = menu.addAction(QIcon(":/report/images/noLines"), tr("No borders")); QAction* allBordersAction = menu.addAction(QIcon(":/report/images/allLines"), tr("All borders")); + QAction* editBorderAction = menu.addAction(QIcon(":/report/images/allLines"), tr("Edit borders...")); preparePopUpMenu(menu); QAction* a = menu.exec(event->screenPos()); if (a){ @@ -1497,6 +1498,16 @@ void BaseDesignIntf::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) page->setBorders(BaseDesignIntf::NoLine); if (a == allBordersAction) page->setBorders(BaseDesignIntf::AllLines); + if(a == editBorderAction) + { + lrbordereditor be; + be.loadItem(this); + if(be.exec() == QDialog::Rejected)return; + setBorderLinesFlags(be.borderSides()); + setBorderLineSize(be.border_width()); + setBorderStyle((LimeReport::BaseDesignIntf::BorderStyle)be.border_style()); + setBorderColor(be.borderColor()); + } if (a == createHLayout) page->addHLayout(); if (a == createVLayout) diff --git a/limereport/lrbasedesignintf.h b/limereport/lrbasedesignintf.h index 751e61a..adf7d21 100644 --- a/limereport/lrbasedesignintf.h +++ b/limereport/lrbasedesignintf.h @@ -102,8 +102,9 @@ public: enum BGMode { TransparentMode, OpaqueMode}; enum BorderStyle { NoStyle = Qt::NoPen, Solid = Qt::SolidLine, - Dot = Qt::DotLine, Dashed = Qt::DashLine, + Dot = Qt::DotLine, + DashDot = Qt::DashDotLine, DashDotDot = Qt::DashDotDotLine, Doubled = 7 diff --git a/limereport/lrpageitemdesignintf.cpp b/limereport/lrpageitemdesignintf.cpp index 32475e1..0311707 100644 --- a/limereport/lrpageitemdesignintf.cpp +++ b/limereport/lrpageitemdesignintf.cpp @@ -34,7 +34,7 @@ #include #include #include - +#include namespace LimeReport { bool bandSortBandLessThenByIndex(const BandDesignIntf *c1, const BandDesignIntf *c2){ @@ -770,10 +770,15 @@ void PageItemDesignIntf::initPageSize(const QSizeF& size) void PageItemDesignIntf::preparePopUpMenu(QMenu &menu) { + + foreach (QAction* action, menu.actions()) { if (action->text().compare(tr("Paste")) != 0) action->setVisible(false); } + menu.addSeparator(); + menu.addAction(tr("Edit")); + menu.addSeparator(); @@ -821,6 +826,11 @@ void PageItemDesignIntf::processPopUpAction(QAction *action) if (action->text().compare(tr("Mix with prior page")) == 0){ page()->setPropertyToSelectedItems("mixWithPriorPage",action->isChecked()); } + if(action->text() == tr("Edit")) + { + lrpageeditor pageEdit(NULL,this); + pageEdit.exec(); + } } void PageItemDesignIntf::initPageSize(const PageItemDesignIntf::PageSize &size) diff --git a/limereport/lrpreviewreportwidget.cpp b/limereport/lrpreviewreportwidget.cpp index 967ed8b..ae5d5a5 100644 --- a/limereport/lrpreviewreportwidget.cpp +++ b/limereport/lrpreviewreportwidget.cpp @@ -152,7 +152,6 @@ void PreviewReportWidget::initPreview() ui->graphicsView->centerOn(0, 0); ui->graphicsView->scene()->setBackgroundBrush(QColor(m_previewPageBackgroundColor)); setScalePercent(d_ptr->m_scalePercent); - qDebug()<m_scalePercent; PageDesignIntf* page = dynamic_cast(ui->graphicsView->scene()); if (page) connect(page, SIGNAL(itemInserted(LimeReport::PageDesignIntf*, QPointF, QString)), diff --git a/translations/limereport_ar.ts b/translations/limereport_ar.ts index 6a996f9..bf3a955 100644 --- a/translations/limereport_ar.ts +++ b/translations/limereport_ar.ts @@ -8,6 +8,17 @@ + + BorderFrameEditor + + BorderFrameEditor + + + + Text + + + ChartAxisEditor @@ -504,6 +515,10 @@ p, li { white-space: pre-wrap; } Create Vertical Layout + + Edit borders... + + LimeReport::ConnectionDesc @@ -1288,6 +1303,10 @@ p, li { white-space: pre-wrap; } All borders محاط بإطار + + Edit border + + LimeReport::MasterDetailProxyModel @@ -1384,6 +1403,10 @@ p, li { white-space: pre-wrap; } Mix with prior page + + Edit + تحرير + LimeReport::PreviewReportWidget @@ -3374,4 +3397,194 @@ This preview is no longer valid. + + lrbordereditor + + Style + + + + No style + + + + Solid + + + + Presets + + + + No lines + + + + Outline + + + + Border + + + + ... + + + + Edit border + + + + Width: + + + + 1 + + + + 0.25 + + + + 0.5 + + + + 1.5 + + + + 2 + + + + 3 + + + + 4 + + + + 5 + + + + 6 + + + + Color: + + + + Select... + + + + Dash + + + + Dot + + + + Dash dot + + + + Dash dot dot + + + + + lrpageeditor + + Paper + + + + Format + الصيغة + + + Dimension + + + + Width: + + + + mm + + + + Height: + + + + Orientation + + + + Portrait + + + + Landscape + + + + Margins + + + + Bottom: + + + + Top: + + + + Right: + + + + Left: + + + + Drop printer margins + + + + Other + + + + Height options + + + + Endless Height + + + + Extended Height: + + + + Full page + + + + Page setup + + + diff --git a/translations/limereport_es.ts b/translations/limereport_es.ts index 7c0253e..7219087 100644 --- a/translations/limereport_es.ts +++ b/translations/limereport_es.ts @@ -8,6 +8,17 @@ + + BorderFrameEditor + + BorderFrameEditor + + + + Text + + + ChartAxisEditor @@ -632,6 +643,10 @@ p, li { white-space: pre-wrap; } Lock item geometry + + Edit borders... + + LimeReport::ConnectionDesc @@ -1416,6 +1431,10 @@ p, li { white-space: pre-wrap; } All borders Todos los bordes + + Edit border + + LimeReport::MasterDetailProxyModel @@ -1512,6 +1531,10 @@ p, li { white-space: pre-wrap; } Mix with prior page + + Edit + Editar + LimeReport::PreviewReportWidget @@ -3504,4 +3527,194 @@ Esta vista previa ya no es válida. + + lrbordereditor + + Style + + + + No style + + + + Solid + + + + Presets + + + + No lines + + + + Outline + + + + Border + + + + ... + + + + Edit border + + + + Width: + + + + 1 + + + + 0.25 + + + + 0.5 + + + + 1.5 + + + + 2 + + + + 3 + + + + 4 + + + + 5 + + + + 6 + + + + Color: + + + + Select... + + + + Dash + + + + Dot + + + + Dash dot + + + + Dash dot dot + + + + + lrpageeditor + + Paper + + + + Format + Formato + + + Dimension + + + + Width: + + + + mm + + + + Height: + + + + Orientation + + + + Portrait + Retrato + + + Landscape + Apaisado (Horizontal) + + + Margins + + + + Bottom: + + + + Top: + + + + Right: + + + + Left: + + + + Drop printer margins + + + + Other + + + + Height options + + + + Endless Height + + + + Extended Height: + + + + Full page + Página completa + + + Page setup + + + diff --git a/translations/limereport_fr.ts b/translations/limereport_fr.ts index 2adb87e..b7d37b4 100644 --- a/translations/limereport_fr.ts +++ b/translations/limereport_fr.ts @@ -9,6 +9,19 @@ + + BorderFrameEditor + + + BorderFrameEditor + + + + + Text + + + ChartAxisEditor @@ -555,7 +568,7 @@ p, li { white-space: pre-wrap; } LimeReport::BaseDesignIntf - + Lock item geometry Verrouiller la géométrie d'un élément @@ -604,6 +617,11 @@ p, li { white-space: pre-wrap; } All borders Toutes les bordures + + + Edit borders... + + LimeReport::ConnectionDesc @@ -1581,35 +1599,40 @@ p, li { white-space: pre-wrap; } LimeReport::ItemsBordersEditorWidget - + Top line ligne haute - + Bottom line Ligne basse - + Left line Ligne gauche - + Right line Ligne droite - + No borders Aucune bordure - + All borders Toutes les bordures + + + Edit border + + LimeReport::MasterDetailProxyModel @@ -1697,37 +1720,43 @@ p, li { white-space: pre-wrap; } LimeReport::PageItemDesignIntf - + + + Edit + Edition + + + Paste Coller - - + + Page is TOC Table de contenus - - + + Reset page number Réinitialiser le numéro de page - - + + Full page Page entière - - + + Set page size to printer Adapterr la taille de la page à l'imprimante - - + + Mix with prior page @@ -1745,7 +1774,7 @@ p, li { white-space: pre-wrap; } %1 nom de fichier - + Report file name Nom du fichier du rapport @@ -4357,4 +4386,249 @@ Cet aperçu n'est plus valide. + + lrbordereditor + + + Style + + + + + No style + + + + + Solid + + + + + Width: + + + + + + 1 + + + + + Select... + + + + + 0.25 + + + + + Dash + + + + + Dot + + + + + Dash dot + + + + + Dash dot dot + + + + + 0.5 + + + + + 1.5 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + 5 + + + + + 6 + + + + + Color: + + + + + Presets + + + + + Edit border + + + + + No lines + + + + + Outline + + + + + Border + + + + + + + + ... + + + + + lrpageeditor + + + Page setup + + + + + Paper + + + + + Format + + + + + Dimension + + + + + Width: + + + + + + + + + + mm + + + + + Height: + + + + + Orientation + + + + + Portrait + + + + + Landscape + Paysage + + + + Margins + + + + + Bottom: + + + + + Top: + + + + + Right: + + + + + Left: + + + + + Drop printer margins + + + + + Other + + + + + Height options + + + + + Endless Height + + + + + Extended Height: + + + + + Full page + Page entière + + diff --git a/translations/limereport_pl.ts b/translations/limereport_pl.ts index 556f35b..aca5301 100644 --- a/translations/limereport_pl.ts +++ b/translations/limereport_pl.ts @@ -9,6 +9,19 @@ + + BorderFrameEditor + + + BorderFrameEditor + + + + + Text + + + ChartAxisEditor @@ -567,7 +580,7 @@ p, li { white-space: pre-wrap; } LimeReport::BaseDesignIntf - + Lock item geometry Zablokuj geometrię pozycji @@ -616,6 +629,11 @@ p, li { white-space: pre-wrap; } All borders Pełne obramowanie + + + Edit borders... + + LimeReport::ConnectionDesc @@ -1593,35 +1611,40 @@ p, li { white-space: pre-wrap; } LimeReport::ItemsBordersEditorWidget - + Top line Górna krawędź - + Bottom line Dolna krawędź - + Left line Lewa krawędź - + Right line Prawa krawędź - + No borders Bez krawędzi - + All borders Wszystkie krawędzie + + + Edit border + + LimeReport::MasterDetailProxyModel @@ -1709,37 +1732,43 @@ p, li { white-space: pre-wrap; } LimeReport::PageItemDesignIntf - + + + Edit + Edycja + + + Paste Wklej - - + + Page is TOC Strona to spis treści - - + + Reset page number Zresetuj numer strony - - + + Full page Cała strona - - + + Set page size to printer Ustaw rozmiar strony na drukarkę - - + + Mix with prior page @@ -1757,7 +1786,7 @@ p, li { white-space: pre-wrap; } %1 nazwa pliku - + Report file name Nazwa pliku raportu @@ -4369,4 +4398,249 @@ Ten podgląd nie jest już prawidłowy. + + lrbordereditor + + + Style + + + + + No style + + + + + Solid + + + + + Width: + + + + + + 1 + + + + + Select... + + + + + 0.25 + + + + + Dash + + + + + Dot + + + + + Dash dot + + + + + Dash dot dot + + + + + 0.5 + + + + + 1.5 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + 5 + + + + + 6 + + + + + Color: + + + + + Presets + + + + + Edit border + + + + + No lines + + + + + Outline + + + + + Border + + + + + + + + ... + ... + + + + lrpageeditor + + + Page setup + + + + + Paper + + + + + Format + Format + + + + Dimension + + + + + Width: + + + + + + + + + + mm + + + + + Height: + + + + + Orientation + + + + + Portrait + Portret + + + + Landscape + Pejzaż + + + + Margins + + + + + Bottom: + + + + + Top: + + + + + Right: + + + + + Left: + + + + + Drop printer margins + + + + + Other + + + + + Height options + + + + + Endless Height + + + + + Extended Height: + + + + + Full page + Cała strona + + diff --git a/translations/limereport_ru.qm b/translations/limereport_ru.qm index 39d7511..cbbea89 100644 Binary files a/translations/limereport_ru.qm and b/translations/limereport_ru.qm differ diff --git a/translations/limereport_ru.ts b/translations/limereport_ru.ts index 7e38997..3dd7d0b 100644 --- a/translations/limereport_ru.ts +++ b/translations/limereport_ru.ts @@ -8,6 +8,17 @@ $ClassName$ + + BorderFrameEditor + + BorderFrameEditor + + + + Text + + + ChartAxisEditor @@ -509,6 +520,10 @@ p, li { white-space: pre-wrap; } Lock item geometry Заблокировать геометрию элемента + + Edit borders... + + LimeReport::ConnectionDesc @@ -1293,6 +1308,10 @@ p, li { white-space: pre-wrap; } All borders Все границы + + Edit border + + LimeReport::MasterDetailProxyModel @@ -1389,6 +1408,10 @@ p, li { white-space: pre-wrap; } Mix with prior page Смешивать с предыдущей страницей + + Edit + Правка + LimeReport::PreviewReportWidget @@ -3379,4 +3402,194 @@ This preview is no longer valid. + + lrbordereditor + + Style + + + + No style + + + + Solid + + + + Presets + + + + No lines + + + + Outline + + + + Border + + + + ... + ... + + + Edit border + + + + Width: + + + + 1 + + + + 0.25 + + + + 0.5 + + + + 1.5 + + + + 2 + + + + 3 + + + + 4 + + + + 5 + + + + 6 + + + + Color: + + + + Select... + + + + Dash + + + + Dot + + + + Dash dot + + + + Dash dot dot + + + + + lrpageeditor + + Paper + + + + Format + Формат + + + Dimension + + + + Width: + + + + mm + + + + Height: + + + + Orientation + + + + Portrait + Портретная + + + Landscape + Альбомная + + + Margins + + + + Bottom: + + + + Top: + + + + Right: + + + + Left: + + + + Drop printer margins + + + + Other + + + + Height options + + + + Endless Height + + + + Extended Height: + + + + Full page + На всю страницу + + + Page setup + + + diff --git a/translations/limereport_zh.ts b/translations/limereport_zh.ts index bb36f7c..3e62d44 100644 --- a/translations/limereport_zh.ts +++ b/translations/limereport_zh.ts @@ -8,6 +8,17 @@ $ClassName$ + + BorderFrameEditor + + BorderFrameEditor + + + + Text + + + ChartAxisEditor @@ -516,6 +527,10 @@ p, li { white-space: pre-wrap; } Create Vertical Layout 创建水平布局 + + Edit borders... + + LimeReport::ConnectionDesc @@ -1300,6 +1315,10 @@ p, li { white-space: pre-wrap; } All borders 所有边框 + + Edit border + + LimeReport::MasterDetailProxyModel @@ -1396,6 +1415,10 @@ p, li { white-space: pre-wrap; } Mix with prior page + + Edit + 编辑 + LimeReport::PreviewReportWidget @@ -3388,4 +3411,194 @@ This preview is no longer valid. + + lrbordereditor + + Style + + + + No style + + + + Solid + + + + Presets + + + + No lines + + + + Outline + + + + Border + + + + ... + ... + + + Edit border + + + + Width: + + + + 1 + + + + 0.25 + + + + 0.5 + + + + 1.5 + + + + 2 + + + + 3 + + + + 4 + + + + 5 + + + + 6 + + + + Color: + + + + Select... + + + + Dash + + + + Dot + + + + Dash dot + + + + Dash dot dot + + + + + lrpageeditor + + Paper + + + + Format + 格式 + + + Dimension + + + + Width: + + + + mm + + + + Height: + + + + Orientation + + + + Portrait + 纵向 + + + Landscape + 横向 + + + Margins + + + + Bottom: + + + + Top: + + + + Right: + + + + Left: + + + + Drop printer margins + + + + Other + + + + Height options + + + + Endless Height + + + + Extended Height: + + + + Full page + 全页 + + + Page setup + + +