File indexing completed on 2024-05-12 04:51:52

0001 /*
0002     SPDX-FileCopyrightText: 2006-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_VIDEODVD_RIPPING_DIALOG_H_
0009 #define _K3B_VIDEODVD_RIPPING_DIALOG_H_
0010 
0011 #include "k3binteractiondialog.h"
0012 
0013 class QModelIndex;
0014 
0015 namespace K3b {
0016     
0017     namespace VideoDVD {
0018         class VideoDVD;
0019     }
0020 
0021     class VideoDVDRippingDialog : public InteractionDialog
0022     {
0023         Q_OBJECT
0024 
0025     public:
0026         VideoDVDRippingDialog( const VideoDVD::VideoDVD& dvd,
0027                                const QList<int>& titles,
0028                                QWidget* parent = 0 );
0029         ~VideoDVDRippingDialog() override;
0030 
0031         void setBaseDir( const QString& path );
0032 
0033         enum FileNamingPattern {
0034             PATTERN_TITLE_NUMBER         = 't',
0035             PATTERN_VOLUME_ID            = 'i',
0036             PATTERN_BEAUTIFIED_VOLUME_ID = 'b',
0037             PATTERN_LANGUAGE_CODE        = 'l',
0038             PATTERN_LANGUAGE_NAME        = 'n',
0039             PATTERN_AUDIO_FORMAT         = 'a',
0040             PATTERN_AUDIO_CHANNELS       = 'c',
0041             PATTERN_ORIG_VIDEO_SIZE      = 'v',
0042             PATTERN_VIDEO_SIZE           = 's',
0043             PATTERN_ASPECT_RATIO         = 'r',
0044             PATTERN_CURRENT_DATE         = 'd'
0045         };
0046 
0047     private Q_SLOTS:
0048         void slotStartClicked() override;
0049         void slotUpdateFilenames();
0050         void slotUpdateFilesizes();
0051         void slotUpdateVideoSizes();
0052         void slotAudioModelChanged( const QModelIndex& topLeft, const QModelIndex& bottomRight );
0053 
0054     private:
0055         void loadSettings( const KConfigGroup& ) override;
0056         void saveSettings( KConfigGroup ) override;
0057 
0058         class Private;
0059         Private* d;
0060     };
0061 }
0062 
0063 #endif