File indexing completed on 2024-04-28 04:20:03

0001 /*
0002     SPDX-FileCopyrightText: 2022 Friedrich W. H. Kossebau <kossebau@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.1-or-later
0005 */
0006 
0007 #ifndef KODASKANNA_WINDOW_HPP
0008 #define KODASKANNA_WINDOW_HPP
0009 
0010 #include "ui_window.h"
0011 // core
0012 #include <scanresult.hpp>
0013 // Qt
0014 #include <QDialog>
0015 #include <QList>
0016 
0017 class QUrl;
0018 
0019 namespace Kodaskanna
0020 {
0021 class AbstractSourceTool;
0022 class AbstractDisplayTool;
0023 class AbstractExportTool;
0024 
0025 class Window : public QDialog
0026 {
0027     Q_OBJECT
0028 
0029 public:
0030     enum OperationMode {
0031 
0032     };
0033 
0034 public:
0035     Window();
0036 
0037     ~Window() override;
0038 
0039 public:
0040     void scanFromFile(const QUrl &fileUrl);
0041 
0042 private:
0043     void handleScanFinished(const ScanResult &scanResult);
0044 
0045 private:
0046     Ui::Window m_ui;
0047 
0048     AbstractSourceTool *m_sourceTool;
0049     AbstractDisplayTool *m_displayTool;
0050     QList<AbstractExportTool *> m_exportTools;
0051 
0052     ScanResult m_scanResult;
0053 };
0054 
0055 }
0056 
0057 #endif