File indexing completed on 2024-05-12 15:59:14

0001 /* This file is part of the KDE project
0002  * SPDX-FileCopyrightText: 2012 KO GmbH. Contact : Boudewijn Rempt <boud@kogmbh.com>
0003  *
0004  * SPDX-License-Identifier: LGPL-2.0-or-later
0005  */
0006 #ifndef KRITA_SKETCH_PROGRESSPROXY_H
0007 #define KRITA_SKETCH_PROGRESSPROXY_H
0008 
0009 #include <QObject>
0010 #include <KoProgressProxy.h>
0011 
0012 #include "krita_sketch_export.h"
0013 
0014 class KRITA_SKETCH_EXPORT ProgressProxy : public QObject, public KoProgressProxy
0015 {
0016     Q_OBJECT
0017     Q_PROPERTY(QString taskName READ taskName NOTIFY taskNameChanged)
0018 
0019 public:
0020     ProgressProxy(QObject *parent = nullptr);
0021     ~ProgressProxy() override;
0022 
0023     QString taskName() const;
0024 
0025     void setFormat(const QString &format) override;
0026     void setRange(int minimum, int maximum) override;
0027     void setValue(int value) override;
0028     int maximum() const override;
0029 
0030 Q_SIGNALS:
0031     void valueChanged(int value);
0032     void taskStarted();
0033     void taskEnded();
0034     void taskNameChanged();
0035 
0036 private:
0037     class Private;
0038     const QScopedPointer<Private> d;
0039 };
0040 
0041 #endif // CMPROGRESSPROXY_H