File indexing completed on 2024-05-12 07:58:04

0001 /*
0002     SPDX-FileCopyrightText: 2012 Mathias Kraus <k.hias@gmx.de>
0003     SPDX-FileCopyrightText: 2012 Stefan Majewsky <majewsky@gmx.net>
0004 
0005     SPDX-License-Identifier: LGPL-2.0-only
0006 */
0007 
0008 #ifndef PLAYERSELECTOR_H
0009 #define PLAYERSELECTOR_H
0010 
0011 #include <QWidget>
0012 
0013 class PlayerSettings;
0014 
0015 class PlayerSelector : public QWidget
0016 {
0017     Q_OBJECT
0018     Q_DISABLE_COPY(PlayerSelector)
0019 public:
0020     ///Flags which control the behavior of PlayerSelector.
0021     enum Option {
0022         DefaultBehavior = 0,
0023         ///Enable downloading of additional themes with KNewStuff3.
0024         ///This requires a KNS3 config file to be installed for this app.
0025         EnableNewStuffDownload = 1 << 0
0026     };
0027     Q_DECLARE_FLAGS(Options, Option)
0028 
0029     explicit PlayerSelector(PlayerSettings* playerSettings, Options options = DefaultBehavior, QWidget* parent = nullptr);
0030     ~PlayerSelector() override;
0031 private:
0032     struct Private;
0033     Private* const d;
0034 };
0035 
0036 Q_DECLARE_OPERATORS_FOR_FLAGS(PlayerSelector::Options)
0037 
0038 #endif // PLAYERSELECTOR_H