File indexing completed on 2024-12-08 03:41:12

0001 /*
0002     This file is part of the KDE project
0003     SPDX-FileCopyrightText: 2000 Matej Koss <koss@miesto.sk>
0004     SPDX-FileCopyrightText: 2007 Kevin Ottens <ervin@kde.org>
0005     SPDX-FileCopyrightText: 2007 Rafael Fernández López <ereslibre@kde.org>
0006 
0007     SPDX-License-Identifier: LGPL-2.0-only
0008 */
0009 
0010 #include "kabstractwidgetjobtracker.h"
0011 #include "kabstractwidgetjobtracker_p.h"
0012 
0013 #include <QWidget>
0014 
0015 KAbstractWidgetJobTracker::KAbstractWidgetJobTracker(QWidget *parent)
0016     : KAbstractWidgetJobTracker(*new KAbstractWidgetJobTrackerPrivate(this), parent)
0017 {
0018 }
0019 
0020 KAbstractWidgetJobTracker::KAbstractWidgetJobTracker(KAbstractWidgetJobTrackerPrivate &dd, QWidget *parent)
0021     : KJobTrackerInterface(parent)
0022     , d_ptr(&dd)
0023 {
0024 }
0025 
0026 KAbstractWidgetJobTracker::~KAbstractWidgetJobTracker() = default;
0027 
0028 void KAbstractWidgetJobTracker::registerJob(KJob *job)
0029 {
0030     KJobTrackerInterface::registerJob(job);
0031 }
0032 
0033 void KAbstractWidgetJobTracker::unregisterJob(KJob *job)
0034 {
0035     KJobTrackerInterface::unregisterJob(job);
0036 }
0037 
0038 void KAbstractWidgetJobTracker::setStopOnClose(KJob *job, bool stopOnClose)
0039 {
0040     Q_D(KAbstractWidgetJobTracker);
0041 
0042     d->setStopOnClose(job, stopOnClose);
0043 }
0044 
0045 bool KAbstractWidgetJobTracker::stopOnClose(KJob *job) const
0046 {
0047     Q_D(const KAbstractWidgetJobTracker);
0048 
0049     return d->stopOnClose(job);
0050 }
0051 
0052 void KAbstractWidgetJobTracker::setAutoDelete(KJob *job, bool autoDelete)
0053 {
0054     Q_D(KAbstractWidgetJobTracker);
0055 
0056     d->setAutoDelete(job, autoDelete);
0057 }
0058 
0059 bool KAbstractWidgetJobTracker::autoDelete(KJob *job) const
0060 {
0061     Q_D(const KAbstractWidgetJobTracker);
0062 
0063     return d->autoDelete(job);
0064 }
0065 
0066 void KAbstractWidgetJobTracker::finished(KJob *job)
0067 {
0068     Q_UNUSED(job);
0069 }
0070 
0071 void KAbstractWidgetJobTracker::slotStop(KJob *job)
0072 {
0073     if (job) {
0074         job->kill(KJob::EmitResult); // notify that the job has been killed
0075         Q_EMIT stopped(job);
0076     }
0077 }
0078 
0079 void KAbstractWidgetJobTracker::slotSuspend(KJob *job)
0080 {
0081     if (job) {
0082         job->suspend();
0083         Q_EMIT suspend(job);
0084     }
0085 }
0086 
0087 void KAbstractWidgetJobTracker::slotResume(KJob *job)
0088 {
0089     if (job) {
0090         job->resume();
0091         Q_EMIT resume(job);
0092     }
0093 }
0094 
0095 void KAbstractWidgetJobTracker::slotClean(KJob *job)
0096 {
0097     Q_UNUSED(job);
0098 }
0099 
0100 #include "moc_kabstractwidgetjobtracker.cpp"