Pin/unpin functionality

This commit is contained in:
Jakub Melka
2021-06-16 18:45:47 +02:00
parent 47baae321e
commit 7264a45e30
5 changed files with 71 additions and 1 deletions

View File

@ -46,7 +46,7 @@ ObjectViewerWidget::ObjectViewerWidget(bool isPinned, QWidget* parent) :
m_printableCharacters.push_back('\n');
connect(ui->pinButton, &QPushButton::clicked, this, &ObjectViewerWidget::pinRequest);
connect(ui->unpinButton, &QPushButton::clicked, this, &ObjectViewerWidget::pinRequest);
connect(ui->unpinButton, &QPushButton::clicked, this, &ObjectViewerWidget::unpinRequest);
updateUi();
updatePinnedUi();
@ -57,6 +57,18 @@ ObjectViewerWidget::~ObjectViewerWidget()
delete ui;
}
ObjectViewerWidget* ObjectViewerWidget::clone(bool isPinned, QWidget* parent)
{
ObjectViewerWidget* cloned = new ObjectViewerWidget(isPinned, parent);
cloned->setDocument(m_document);
cloned->setCms(m_cms);
cloned->setData(m_currentReference, m_currentObject, m_isRootObject);
return cloned;
}
void ObjectViewerWidget::setPinned(bool isPinned)
{
if (m_isPinned != isPinned)
@ -271,6 +283,25 @@ void ObjectViewerWidget::setCms(const pdf::PDFCMS* cms)
m_cms = cms;
}
QString ObjectViewerWidget::getTitleText() const
{
if (!m_currentReference.isValid())
{
return tr("[Unknown]");
}
QString referenceString = tr("%1 %2 R").arg(m_currentReference.objectNumber).arg(m_currentReference.generation);
if (m_isRootObject)
{
return referenceString;
}
else
{
return tr("%1 (part)").arg(referenceString);
}
}
const pdf::PDFDocument* ObjectViewerWidget::getDocument() const
{
return m_document;