File indexing completed on 2024-06-16 04:16:42

0001 /*
0002  * This file is part of the KDE project
0003  *
0004  * SPDX-FileCopyrightText: Michael Thaler <michael.thaler@physik.tu-muenchen.de>
0005  *
0006  *  SPDX-License-Identifier: GPL-2.0-or-later
0007  */
0008 
0009 #ifndef _KIS_PIXELIZE_FILTER_H_
0010 #define _KIS_PIXELIZE_FILTER_H_
0011 
0012 #include "filter/kis_filter.h"
0013 #include "kis_config_widget.h"
0014 
0015 class KisPixelizeFilter : public KisFilter
0016 {
0017 public:
0018     KisPixelizeFilter();
0019 public:
0020 
0021     void processImpl(KisPaintDeviceSP device,
0022                      const QRect& applyRect,
0023                      const KisFilterConfigurationSP config,
0024                      KoUpdater* progressUpdater) const override;
0025 
0026     static inline KoID id() {
0027         return KoID("pixelize", i18n("Pixelize"));
0028     }
0029 
0030     QRect neededRect(const QRect & rect, const KisFilterConfigurationSP config, int lod) const override;
0031     QRect changedRect(const QRect & rect, const KisFilterConfigurationSP config, int lod) const override;
0032 
0033 public:
0034     KisConfigWidget * createConfigurationWidget(QWidget* parent, const KisPaintDeviceSP dev, bool useForMasks) const override;
0035     KisFilterConfigurationSP defaultConfiguration(KisResourcesInterfaceSP resourcesInterface) const override;
0036 };
0037 
0038 #endif