diff --git a/ApperKCM/CMakeLists.txt b/ApperKCM/CMakeLists.txt index 910da26..5b7811e 100644 --- a/ApperKCM/CMakeLists.txt +++ b/ApperKCM/CMakeLists.txt @@ -1,50 +1,49 @@ # CMakeLists for the Apper KDE control module (KCM) add_definitions(-DTRANSLATION_DOMAIN=\"apper\") set(kcm_apper_SRCS Settings/Settings.cpp Settings/OriginModel.cpp Updater/UpdateDetails.cpp Updater/DistroUpgrade.cpp Updater/CheckableHeader.cpp Updater/Updater.cpp FiltersMenu.cpp ClickableLabel.cpp ScreenShotViewer.cpp PackageDetails.cpp GraphicsOpacityDropShadowEffect.cpp CategoryModel.cpp BrowseView.cpp TransactionModel.cpp TransactionFilterModel.cpp TransactionHistory.cpp ApperKCM.cpp ) ki18n_wrap_ui(kcm_apper_SRCS Settings/Settings.ui Updater/UpdateDetails.ui Updater/Updater.ui PackageDetails.ui BrowseView.ui TransactionHistory.ui ApperKCM.ui ) add_library(kcm_apper MODULE ${kcm_apper_SRCS}) target_link_libraries(kcm_apper KF5::WidgetsAddons KF5::KIOFileWidgets KF5::KCMUtils - KF5::KDELibs4Support KF5::IconThemes ${PackageKitQt5_LIBRARIES} apper_private ) set_target_properties(kcm_apper PROPERTIES INSTALL_RPATH ${CMAKE_INSTALL_FULL_LIBDIR}/apper) install(TARGETS kcm_apper DESTINATION ${CMAKE_INSTALL_QTPLUGINDIR}) install(FILES kcm_apper.desktop DESTINATION ${CMAKE_INSTALL_KSERVICES5DIR}) diff --git a/ApperKCM/ScreenShotViewer.cpp b/ApperKCM/ScreenShotViewer.cpp index f114630..51436b3 100644 --- a/ApperKCM/ScreenShotViewer.cpp +++ b/ApperKCM/ScreenShotViewer.cpp @@ -1,110 +1,109 @@ /*************************************************************************** * Copyright (C) 2009-2010 by Daniel Nicoletti * * dantti12@gmail.com * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * * This program is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * * GNU General Public License for more details. * * * * You should have received a copy of the GNU General Public License * * along with this program; see the file COPYING. If not, write to * * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * * Boston, MA 02110-1301, USA. * ***************************************************************************/ #include "ScreenShotViewer.h" #include #include #include #include #include #include #include #include #include #include "ClickableLabel.h" ScreenShotViewer::ScreenShotViewer(const QString &url, QWidget *parent) : QScrollArea(parent) { m_screenshotL = new ClickableLabel(this); m_screenshotL->setCursor(Qt::PointingHandCursor); m_screenshotL->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored); m_screenshotL->resize(250, 200); resize(250, 200); setFrameShape(NoFrame); setFrameShadow(Plain); setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); setWidget(m_screenshotL); setWindowIcon(QIcon::fromTheme("layer-visible-on")); - KTemporaryFile *tempFile = new KTemporaryFile; - tempFile->setPrefix("appgetfull"); - tempFile->setSuffix(".png"); + auto tempFile = new QTemporaryFile; +// tempFile->setPrefix("appgetfull"); +// tempFile->setSuffix(".png"); tempFile->open(); KIO::FileCopyJob *job = KIO::file_copy(QUrl(url), QUrl(tempFile->fileName()), -1, KIO::Overwrite | KIO::HideProgressInfo); - connect(job, SIGNAL(result(KJob*)), - this, SLOT(resultJob(KJob*))); + connect(job, &KIO::FileCopyJob::result, this, &ScreenShotViewer::resultJob); m_busySeq = new KPixmapSequenceOverlayPainter(this); m_busySeq->setSequence(KPixmapSequence("process-working", KIconLoader::SizeSmallMedium)); m_busySeq->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); m_busySeq->setWidget(m_screenshotL); m_busySeq->start(); connect(m_screenshotL, SIGNAL(clicked()), this, SLOT(deleteLater())); } ScreenShotViewer::~ScreenShotViewer() { } void ScreenShotViewer::resultJob(KJob *job) { m_busySeq->stop(); - KIO::FileCopyJob *fJob = qobject_cast(job); + auto fJob = qobject_cast(job); if (!fJob->error()) { m_screenshot = QPixmap(fJob->destUrl().toLocalFile()); QPropertyAnimation *anim1 = new QPropertyAnimation(this, "size"); anim1->setDuration(500); anim1->setStartValue(size()); anim1->setEndValue(m_screenshot.size()); anim1->setEasingCurve(QEasingCurve::OutCubic); connect(anim1, SIGNAL(finished()), this, SLOT(fadeIn())); anim1->start(); } else { m_screenshotL->setText(i18n("Could not find screen shot.")); } } void ScreenShotViewer::fadeIn() { QGraphicsOpacityEffect *effect = new QGraphicsOpacityEffect(m_screenshotL); effect->setOpacity(0); QPropertyAnimation *anim = new QPropertyAnimation(effect, "opacity"); anim->setDuration(500); anim->setStartValue(qreal(0)); anim->setEndValue(qreal(1)); m_screenshotL->setGraphicsEffect(effect); m_screenshotL->setPixmap(m_screenshot); m_screenshotL->adjustSize(); anim->start(); } #include "ScreenShotViewer.moc"