File indexing completed on 2024-04-21 04:49:49

0001 /*
0002     SPDX-FileCopyrightText: 2007-2009 Sebastian Trueg <trueg@k3b.org>
0003     SPDX-FileCopyrightText: 1998-2009 Sebastian Trueg <trueg@k3b.org>
0004 
0005     SPDX-License-Identifier: GPL-2.0-or-later
0006 */
0007 
0008 #ifndef _K3B_MEDIA_COPY_DIALOG_H_
0009 #define _K3B_MEDIA_COPY_DIALOG_H_
0010 
0011 #include "k3binteractiondialog.h"
0012 #include <KIO/Global>
0013 
0014 class QCheckBox;
0015 class QSpinBox;
0016 class QGroupBox;
0017 class QComboBox;
0018 
0019 namespace K3b {
0020     namespace Device {
0021         class Device;
0022     }
0023 
0024     class WriterSelectionWidget;
0025     class TempDirSelectionWidget;
0026     class MediaSelectionComboBox;
0027     class WritingModeWidget;
0028 
0029     class MediaCopyDialog : public InteractionDialog
0030     {
0031         Q_OBJECT
0032 
0033     public:
0034         explicit MediaCopyDialog( QWidget *parent = 0 );
0035         ~MediaCopyDialog() override;
0036 
0037         void setReadingDevice( Device::Device* );
0038         Device::Device* readingDevice() const;
0039 
0040     private Q_SLOTS:
0041         void slotStartClicked() override;
0042         void updateOverrideDevice();
0043 
0044     protected:
0045         void toggleAll() override;
0046         void init() override;
0047 
0048     private:
0049         void loadSettings( const KConfigGroup& ) override;
0050         void saveSettings( KConfigGroup ) override;
0051 
0052         KIO::filesize_t neededSize() const;
0053 
0054         WriterSelectionWidget* m_writerSelectionWidget;
0055         TempDirSelectionWidget* m_tempDirSelectionWidget;
0056         QCheckBox* m_checkSimulate;
0057         QCheckBox* m_checkCacheImage;
0058         QCheckBox* m_checkDeleteImages;
0059         QCheckBox* m_checkOnlyCreateImage;
0060         QCheckBox* m_checkReadCdText;
0061         QCheckBox* m_checkIgnoreDataReadErrors;
0062         QCheckBox* m_checkIgnoreAudioReadErrors;
0063         QCheckBox* m_checkNoCorrection;
0064         QCheckBox* m_checkVerifyData;
0065         MediaSelectionComboBox* m_comboSourceDevice;
0066         QComboBox* m_comboParanoiaMode;
0067         QSpinBox* m_spinCopies;
0068         QSpinBox* m_spinDataRetries;
0069         QSpinBox* m_spinAudioRetries;
0070         WritingModeWidget* m_writingModeWidget;
0071         QComboBox* m_comboCopyMode;
0072 
0073         QGroupBox* m_groupAdvancedDataOptions;
0074         QGroupBox* m_groupAdvancedAudioOptions;
0075     };
0076 }
0077 
0078 #endif