File indexing completed on 2025-01-05 03:53:11

0001 /* ============================================================
0002  *
0003  * This file is a part of digiKam project
0004  * https://www.digikam.org
0005  *
0006  * Date        : 2011-05-23
0007  * Description : a tool to create panorama by fusion of several images.
0008  *
0009  * SPDX-FileCopyrightText: 2011-2016 by Benjamin Girault <benjamin dot girault at gmail dot com>
0010  *
0011  * SPDX-License-Identifier: GPL-2.0-or-later
0012  *
0013  * ============================================================ */
0014 
0015 #ifndef DIGIKAM_PANO_OPTIMIZE_PAGE_H
0016 #define DIGIKAM_PANO_OPTIMIZE_PAGE_H
0017 
0018 // Local includes
0019 
0020 #include "dwizardpage.h"
0021 #include "panoactions.h"
0022 
0023 using namespace Digikam;
0024 
0025 namespace DigikamGenericPanoramaPlugin
0026 {
0027 
0028 class PanoManager;
0029 
0030 class PanoOptimizePage : public DWizardPage
0031 {
0032     Q_OBJECT
0033 
0034 public:
0035 
0036     explicit PanoOptimizePage(PanoManager* const mngr, QWizard* const dlg);
0037     ~PanoOptimizePage() override;
0038 
0039 private:
0040 
0041     void process();
0042 
0043     void initializePage()   override;
0044     bool validatePage()     override;
0045     void cleanupPage()      override;
0046 
0047 Q_SIGNALS:
0048 
0049     void signalOptimized();
0050 
0051 private Q_SLOTS:
0052 
0053     void slotProgressTimerDone();
0054     void slotPanoAction(const DigikamGenericPanoramaPlugin::PanoActionData&);
0055 
0056 private:
0057 
0058     class Private;
0059     Private* const d;
0060 };
0061 
0062 } // namespace DigikamGenericPanoramaPlugin
0063 
0064 #endif // DIGIKAM_PANO_OPTIMIZE_PAGE_H