File indexing completed on 2024-04-28 04:58:04

0001 /*
0002     windowsexecreator.cpp - Thumbnail Creator for Microsoft Windows Executables
0003 
0004     SPDX-FileCopyrightText: 2009 Pali Rohár <pali.rohar@gmail.com>
0005 
0006     SPDX-License-Identifier: GPL-2.0-or-later
0007 */
0008 
0009 #include "windowsexecreator.h"
0010 #include "icoutils.h"
0011 
0012 #include <QImage>
0013 #include <QString>
0014 
0015 #include <KPluginFactory>
0016 
0017 K_PLUGIN_CLASS_WITH_JSON(WindowsExeCreator, "windowsexethumbnail.json")
0018 
0019 WindowsExeCreator::WindowsExeCreator(QObject *parent, const QVariantList &args)
0020     : KIO::ThumbnailCreator(parent, args)
0021 {
0022 }
0023 
0024 KIO::ThumbnailResult WindowsExeCreator::create(const KIO::ThumbnailRequest &request)
0025 {
0026     QImage img;
0027     IcoUtils::loadIcoImageFromExe(request.url().toLocalFile(), img, request.targetSize().width(), request.targetSize().height());
0028     return !img.isNull() ? KIO::ThumbnailResult::pass(img) : KIO::ThumbnailResult::fail();
0029 }
0030 
0031 #include "moc_windowsexecreator.cpp"
0032 #include "windowsexecreator.moc"