File indexing completed on 2024-04-28 15:39:19

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_CLIPBOARDEXPORT_TOOL_HPP
0008 #define KODASKANNA_CLIPBOARDEXPORT_TOOL_HPP
0009 
0010 // widgets
0011 #include <abstractexporttool.hpp>
0012 // core
0013 #include <scanresult.hpp>
0014 
0015 class QToolButton;
0016 class QMenu;
0017 class QAction;
0018 
0019 namespace Kodaskanna
0020 {
0021 namespace ClipboardExport
0022 {
0023 
0024 class Tool : public AbstractExportTool
0025 {
0026     Q_OBJECT
0027 
0028 public:
0029     explicit Tool(QObject *parent = nullptr);
0030 
0031     ~Tool() override;
0032 
0033 public: // AbstractExportTool API
0034     void setupButtonBox(QDialogButtonBox *buttonBox) override;
0035     void setScanResult(const ScanResult &scanResult) override;
0036 
0037 private:
0038     void copyText();
0039     void copyData();
0040 
0041 private:
0042     QToolButton *m_clipboardButton;
0043     QMenu *m_clipboardMenu;
0044     QAction *m_copyTextToClipboardAction;
0045     QAction *m_copyDataToClipboardAction;
0046 
0047     ScanResult m_scanResult;
0048 };
0049 
0050 }
0051 }
0052 
0053 #endif