mirror of
https://github.com/JakubMelka/PDF4QT.git
synced 2025-06-05 21:59:17 +02:00
3D PDF: Open media viewer on double click
This commit is contained in:
@ -1039,6 +1039,23 @@ bool PDFAnnotation::isTypeEditable(AnnotationType type)
|
||||
return false;
|
||||
}
|
||||
|
||||
bool PDFAnnotation::isTypeMultimedia(AnnotationType type)
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
case AnnotationType::Sound:
|
||||
case AnnotationType::Movie:
|
||||
case AnnotationType::_3D:
|
||||
case AnnotationType::RichMedia:
|
||||
return true;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
QPen PDFAnnotation::getPen() const
|
||||
{
|
||||
QColor strokeColor = getStrokeColor();
|
||||
@ -1816,7 +1833,8 @@ void PDFWidgetAnnotationManager::mousePressEvent(QWidget* widget, QMouseEvent* e
|
||||
void PDFWidgetAnnotationManager::mouseDoubleClickEvent(QWidget* widget, QMouseEvent* event)
|
||||
{
|
||||
Q_UNUSED(widget);
|
||||
Q_UNUSED(event);
|
||||
|
||||
updateFromMouseEvent(event);
|
||||
}
|
||||
|
||||
void PDFWidgetAnnotationManager::mouseReleaseEvent(QWidget* widget, QMouseEvent* event)
|
||||
@ -1967,6 +1985,16 @@ void PDFWidgetAnnotationManager::updateFromMouseEvent(QMouseEvent* event)
|
||||
Q_EMIT actionTriggered(linkAction);
|
||||
}
|
||||
}
|
||||
|
||||
// Execute multimedia annotation
|
||||
if (event->type() == QEvent::MouseButtonDblClick && event->button() == Qt::LeftButton)
|
||||
{
|
||||
const PDFAnnotation* annotation = pageAnnotation.annotation.get();
|
||||
if (PDFAnnotation::isTypeMultimedia(annotation->getType()))
|
||||
{
|
||||
emit multimediaTriggered(annotation);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Reference in New Issue
Block a user