KFilePreviewGenerator Class

Generates previews for files of an item view. More...

Header: #include <KFilePreviewGenerator>
CMake: find_package(KF6 REQUIRED COMPONENTS KIO)
target_link_libraries(mytarget PRIVATE KF6::KIOFileWidgets)
Inherits: QObject

Public Functions

KFilePreviewGenerator(QAbstractItemView *parent)
QStringList enabledPlugins() const
bool isPreviewShown() const
void setEnabledPlugins(const QStringList &list)
void setPreviewShown(bool show)

Public Slots

void cancelPreviews()
void updateIcons()

Detailed Description

Per default a preview is generated for each item. Additionally the clipboard is checked for cut items. The icon state for cut items gets dimmed automatically.

The following strategy is used when creating previews:

  • The previews for currently visible items are created before the previews for invisible items.
  • If the user changes the visible area by using the scrollbars, all pending previews get paused. As soon as the user stays on the same position for a short delay, the previews are resumed. Also in this case the previews for the visible items are generated first.

Member Function Documentation

KFilePreviewGenerator::KFilePreviewGenerator(QAbstractItemView *parent)

parent Item view containing the file items where previews should be generated. It is mandatory that the item view specifies an icon size by QAbstractItemView::setIconSize() and that the model of the view (or the source model of the proxy model) is an instance of KDirModel. Otherwise no previews will be generated.

[slot] void KFilePreviewGenerator::cancelPreviews()

Cancels all pending previews.

QStringList KFilePreviewGenerator::enabledPlugins() const

Returns the list of enabled thumbnail plugins.

See also setEnabledPlugins.

bool KFilePreviewGenerator::isPreviewShown() const

void KFilePreviewGenerator::setEnabledPlugins(const QStringList &list)

Sets the list of enabled thumbnail plugins. Per default all plugins enabled in the KConfigGroup "PreviewSettings" are used.

Note that this method doesn't cause already generated previews to be regenerated.

For a list of available plugins, call KIO::PreviewJob::availableThumbnailerPlugins().

See also enabledPlugins.

void KFilePreviewGenerator::setPreviewShown(bool show)

If show is set to true, a preview is generated for each item. If show is false, the MIME type icon of the item is shown instead. Per default showing the preview is turned on. Note that it is mandatory that the item view specifies an icon size by QAbstractItemView::setIconSize(), otherwise KFilePreviewGenerator::isPreviewShown() will always return false.

See also isPreviewShown().

[slot] void KFilePreviewGenerator::updateIcons()

Updates the icons for all items. Usually it is only necessary to invoke this method when the icon size of the abstract item view has been changed by QAbstractItemView::setIconSize(). Note that this method should also be invoked if previews have been turned off, as the icons for cut items must be updated when the icon size has changed.