File indexing completed on 2024-04-21 04:48:58
0001 /* 0002 SPDX-FileCopyrightText: 2017 (c) Matthieu Gallien <matthieu_gallien@yahoo.fr> 0003 0004 SPDX-License-Identifier: LGPL-3.0-or-later 0005 */ 0006 0007 #ifndef ELISAUTILS_H 0008 #define ELISAUTILS_H 0009 0010 #include "elisaLib_export.h" 0011 0012 #include <QList> 0013 #include <QUrl> 0014 #include <QString> 0015 #include <QMetaType> 0016 #include <QMimeType> 0017 0018 namespace ElisaUtils { 0019 0020 Q_NAMESPACE 0021 0022 enum PlayListEnqueueMode { 0023 AppendPlayList, 0024 ReplacePlayList, 0025 }; 0026 0027 Q_ENUM_NS(PlayListEnqueueMode) 0028 0029 enum PlayListEnqueueTriggerPlay { 0030 DoNotTriggerPlay, 0031 TriggerPlay, 0032 }; 0033 0034 Q_ENUM_NS(PlayListEnqueueTriggerPlay) 0035 0036 enum SkipReason { 0037 Automatic, // e.g. song ended 0038 Manual, // e.g. user pressed skip forward button 0039 0040 }; 0041 0042 Q_ENUM_NS(SkipReason) 0043 0044 enum PlayListEntryType { 0045 Album, 0046 Artist, 0047 Genre, 0048 Lyricist, 0049 Composer, 0050 Track, 0051 FileName, 0052 Container, 0053 Radio, 0054 PlayList, 0055 Unknown, 0056 }; 0057 0058 Q_ENUM_NS(PlayListEntryType) 0059 0060 enum FilterType { 0061 UnknownFilter, 0062 NoFilter, 0063 FilterById, 0064 FilterByGenre, 0065 FilterByArtist, 0066 FilterByGenreAndArtist, 0067 FilterByRecentlyPlayed, 0068 FilterByFrequentlyPlayed, 0069 FilterByPath, 0070 }; 0071 0072 Q_ENUM_NS(FilterType) 0073 0074 bool isPlayList(const QMimeType& mimeType); 0075 0076 } 0077 0078 #endif // ELISAUTILS_H