Sayonara Player
Loading...
Searching...
No Matches
FileExtensionBar.h
1/* LibraryFileExtensionBar.h */
2
3/* Copyright (C) 2011-2024 Michael Lugmair (Lucio Carreras)
4 *
5 * This file is part of sayonara player
6 *
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16
17 * You should have received a copy of the GNU General Public License
18 * along with this program. If not, see <http://www.gnu.org/licenses/>.
19 */
20
21#ifndef LIBRARYFILEEXTENSIONBAR_H
22#define LIBRARYFILEEXTENSIONBAR_H
23
24#include "Gui/Utils/Widgets/Widget.h"
25#include "Utils/Pimpl.h"
26
27namespace Gui
28{
29 class ExtensionSet;
30}
31
32class AbstractLibrary;
33
34namespace Library
35{
36 class FileExtensionBar :
37 public Gui::Widget
38 {
39 Q_OBJECT
40 PIMPL(FileExtensionBar)
41
42 signals:
43 void sigCloseClicked();
44
45 public:
46 explicit FileExtensionBar(QWidget* parent = nullptr);
47 ~FileExtensionBar() override;
48
49 void init(AbstractLibrary* library);
50 void refresh();
51 void clear();
52
53 [[nodiscard]] bool hasExtensions() const;
54
55 protected:
56 void languageChanged() override;
57
58 private slots:
59 void buttonToggled(bool b);
60 void closeClicked();
61 };
62}
63
64#endif // LIBRARYFILEEXTENSIONBAR_H
Definition AbstractLibrary.h:41
Collection of extensions. Handles extensions currently active or inactive and the extension toolbar.
Definition ExtensionSet.h:33
Widget with Settings connection. Also contains triggers for language_changed() and skin_changed() \nT...
Definition Widget.h:39