File indexing completed on 2024-06-23 04:27:27

0001 /*
0002  *  SPDX-FileCopyrightText: 2005 Boudewijn Rempt <boud@valdyas.org>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #ifndef KIS_RAW_IMPORT_H_
0008 #define KIS_RAW_IMPORT_H_
0009 
0010 #include <KisImportExportFilter.h>
0011 
0012 #include "ui_wdgrawimport.h"
0013 
0014 class KoDialog;
0015 
0016 class Q_DECL_HIDDEN WdgRawImport : public QWidget, public Ui::WdgRawImport
0017 {
0018     Q_OBJECT
0019 
0020 public:
0021     WdgRawImport(QWidget *parent = nullptr)
0022         : QWidget(parent)
0023     {
0024         setupUi(this);
0025     }
0026 
0027     void showEvent(QShowEvent *event) override
0028     {
0029         Q_EMIT paint();
0030         QWidget::showEvent(event);
0031     }
0032 
0033 Q_SIGNALS:
0034     void paint();
0035 };
0036 
0037 namespace KDcrawIface
0038 {
0039 class RawDecodingSettings;
0040 } // namespace KDcrawIface
0041 
0042 class KisRawImport : public KisImportExportFilter
0043 {
0044     Q_OBJECT
0045 
0046 public:
0047     KisRawImport(QObject *parent, const QVariantList &);
0048     ~KisRawImport() override;
0049 
0050     KisImportExportErrorCode convert(KisDocument *document, QIODevice *io,  KisPropertiesConfigurationSP configuration = 0) override;
0051 
0052 private Q_SLOTS:
0053     void slotUpdatePreview();
0054 
0055 private:
0056     KDcrawIface::RawDecodingSettings rawDecodingSettings();
0057 
0058     KoDialog *m_dialog;
0059     WdgRawImport *m_rawWidget;
0060 };
0061 
0062 #endif // KIS_RAW_IMPORT_H_
0063