mirror of https://github.com/JakubMelka/PDF4QT.git
Signature plugin: Create text tool bugfixing
This commit is contained in:
parent
22e8fd4522
commit
f5881b897d
|
@ -517,7 +517,7 @@ PDFCreatePCElementTextTool::PDFCreatePCElementTextTool(PDFDrawWidgetProxy* proxy
|
||||||
m_element->setPen(QPen(Qt::SolidLine));
|
m_element->setPen(QPen(Qt::SolidLine));
|
||||||
m_element->setFont(font);
|
m_element->setFont(font);
|
||||||
|
|
||||||
m_textEditWidget = new PDFTextEditPseudowidget(PDFFormField::FieldFlags());
|
m_textEditWidget = new PDFTextEditPseudowidget(PDFFormField::Multiline);
|
||||||
}
|
}
|
||||||
|
|
||||||
PDFCreatePCElementTextTool::~PDFCreatePCElementTextTool()
|
PDFCreatePCElementTextTool::~PDFCreatePCElementTextTool()
|
||||||
|
@ -554,6 +554,18 @@ void PDFCreatePCElementTextTool::drawPage(QPainter* painter,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void PDFCreatePCElementTextTool::resetTool()
|
||||||
|
{
|
||||||
|
m_textEditWidget->setText(QString());
|
||||||
|
m_element->setText(QString());
|
||||||
|
m_element->setPageIndex(-1);
|
||||||
|
|
||||||
|
if (getTopToolstackTool())
|
||||||
|
{
|
||||||
|
removeTool();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void PDFCreatePCElementTextTool::setActiveImpl(bool active)
|
void PDFCreatePCElementTextTool::setActiveImpl(bool active)
|
||||||
{
|
{
|
||||||
BaseClass::setActiveImpl(active);
|
BaseClass::setActiveImpl(active);
|
||||||
|
@ -565,13 +577,7 @@ void PDFCreatePCElementTextTool::setActiveImpl(bool active)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_textEditWidget->setText(QString());
|
resetTool();
|
||||||
m_element->setText(QString());
|
|
||||||
|
|
||||||
if (getTopToolstackTool())
|
|
||||||
{
|
|
||||||
removeTool();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_pickTool->setActive(active);
|
m_pickTool->setActive(active);
|
||||||
|
@ -598,6 +604,14 @@ void PDFCreatePCElementTextTool::onRectanglePicked(PDFInteger pageIndex, QRectF
|
||||||
|
|
||||||
void PDFCreatePCElementTextTool::finishEditing()
|
void PDFCreatePCElementTextTool::finishEditing()
|
||||||
{
|
{
|
||||||
|
m_element->setText(m_textEditWidget->getText());
|
||||||
|
|
||||||
|
if (!m_element->getText().isEmpty())
|
||||||
|
{
|
||||||
|
m_scene->addElement(m_element->clone());
|
||||||
|
}
|
||||||
|
|
||||||
|
resetTool();
|
||||||
setActive(false);
|
setActive(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -745,7 +759,7 @@ void PDFCreatePCElementTextTool::wheelEvent(QWidget* widget, QWheelEvent* event)
|
||||||
{
|
{
|
||||||
if (isEditing())
|
if (isEditing())
|
||||||
{
|
{
|
||||||
|
event->ignore();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -237,6 +237,7 @@ private:
|
||||||
void onRectanglePicked(pdf::PDFInteger pageIndex, QRectF pageRectangle);
|
void onRectanglePicked(pdf::PDFInteger pageIndex, QRectF pageRectangle);
|
||||||
|
|
||||||
void finishEditing();
|
void finishEditing();
|
||||||
|
void resetTool();
|
||||||
std::optional<QPointF> getPagePointUnderMouse(QMouseEvent* event) const;
|
std::optional<QPointF> getPagePointUnderMouse(QMouseEvent* event) const;
|
||||||
|
|
||||||
bool isEditing() const;
|
bool isEditing() const;
|
||||||
|
|
|
@ -2274,6 +2274,7 @@ void PDFPageContentElementTextBox::drawPage(QPainter* painter,
|
||||||
painter->setRenderHint(QPainter::Antialiasing);
|
painter->setRenderHint(QPainter::Antialiasing);
|
||||||
painter->setClipRect(rect, Qt::IntersectClip);
|
painter->setClipRect(rect, Qt::IntersectClip);
|
||||||
painter->translate(rect.center());
|
painter->translate(rect.center());
|
||||||
|
painter->scale(1.0, -1.0);
|
||||||
painter->rotate(getAngle());
|
painter->rotate(getAngle());
|
||||||
|
|
||||||
QTextOption option;
|
QTextOption option;
|
||||||
|
|
Loading…
Reference in New Issue