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

0001 /*
0002     SPDX-FileCopyrightText: 2003-2008 Sebastian Trueg <trueg@k3b.org>
0003     SPDX-FileCopyrightText: 2010-2011 Michal Malek <michalm@jabster.pl>
0004     SPDX-FileCopyrightText: 1998-2008 Sebastian Trueg <trueg@k3b.org>
0005     SPDX-License-Identifier: GPL-2.0-or-later
0006 */
0007 
0008 
0009 #ifndef _K3B_AUDIOCD_VIEW_H_
0010 #define _K3B_AUDIOCD_VIEW_H_
0011 
0012 #include "k3bmediacontentsview.h"
0013 
0014 class QPoint;
0015 class KActionCollection;
0016 
0017 
0018 namespace K3b {
0019 class AudioCdView : public MediaContentsView
0020 {
0021     Q_OBJECT
0022 
0023 public:
0024     explicit AudioCdView( QWidget* parent = 0 );
0025     ~AudioCdView() override;
0026 
0027     KActionCollection* actionCollection() const;
0028 
0029 public Q_SLOTS:
0030     void loadCdInfo();
0031     void queryCddb();
0032     void readCdText();
0033 
0034 protected:
0035     bool eventFilter( QObject* obj, QEvent* event ) override;
0036 
0037 private Q_SLOTS:
0038     void slotContextMenu( const QPoint& );
0039     void slotContextMenuAboutToShow();
0040     void slotTrackSelectionChanged();
0041     void slotSaveCddbLocally();
0042 
0043     void slotEditTrackCddb();
0044     void slotEditAlbumCddb();
0045     void startRip();
0046     void slotCheck();
0047     void slotUncheck();
0048     void slotToggle();
0049     void slotShowDataPart();
0050     void slotCddbChanged( K3b::Device::Device* dev );
0051 
0052 private:
0053     void reloadMedium() override;
0054 
0055     void initActions();
0056     void enableInteraction( bool ) override;
0057     void showBusyLabel( bool );
0058     void updateTitle();
0059 
0060     class Private;
0061     Private* d;
0062 };
0063 }
0064 
0065 
0066 #endif