| 520 | } |
| 521 | |
| 522 | void DocumentView::createAdapterForDocument() |
| 523 | { |
| 524 | const MimeTypeUtils::Kind documentKind = d->mDocument->kind(); |
| 525 | if (d->mAdapter && documentKind == d->mAdapter->kind() && documentKind != MimeTypeUtils::KIND_UNKNOWN) { |
| 526 | // Do not reuse for KIND_UNKNOWN: we may need to change the message |
| 527 | LOG("Reusing current adapter"); |
| 528 | return; |
| 529 | } |
| 530 | AbstractDocumentViewAdapter *adapter = nullptr; |
| 531 | switch (documentKind) { |
| 532 | case MimeTypeUtils::KIND_RASTER_IMAGE: |
| 533 | adapter = new RasterImageViewAdapter; |
| 534 | break; |
| 535 | case MimeTypeUtils::KIND_SVG_IMAGE: |
| 536 | adapter = new SvgViewAdapter; |
| 537 | break; |
| 538 | case MimeTypeUtils::KIND_VIDEO: |
| 539 | adapter = new VideoViewAdapter; |
| 540 | connect(adapter, SIGNAL(videoFinished()), SIGNAL(videoFinished())); |
| 541 | break; |
| 542 | case MimeTypeUtils::KIND_UNKNOWN: |
| 543 | adapter = new MessageViewAdapter; |
| 544 | static_cast<MessageViewAdapter *>(adapter)->setErrorMessage(i18n("Gwenview does not know how to display this kind of document")); |
| 545 | break; |
| 546 | default: |
| 547 | qCWarning(GWENVIEW_LIB_LOG) << "should not be called for documentKind=" << documentKind; |
| 548 | adapter = new MessageViewAdapter; |
| 549 | break; |
| 550 | } |
| 551 | |
| 552 | d->setCurrentAdapter(adapter); |
| 553 | } |
| 554 | |
| 555 | void DocumentView::openUrl(const QUrl &url, const DocumentView::Setup &setup) |
| 556 | { |
nothing calls this directly
no test coverage detected