Sayonara Player
Loading...
Searching...
No Matches
GUI_StreamRecorderPreferences.h
1/* GUI_StreamRecorderPreferences.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 * created by Michael Lugmair (Lucio Carreras),
21 * May 13, 2012
22 *
23 */
24
25#ifndef GUI_STREAMRECORDER_PREFERENCES_H
26#define GUI_STREAMRECORDER_PREFERENCES_H
27
28#include "Gui/Preferences/PreferenceWidget.h"
29#include "Utils/Pimpl.h"
30#include "Utils/FileSystem.h"
31
32#include <QPushButton>
33
35
36namespace Util
37{
38 class FileSystem;
39}
40
41class TagButton :
42 public Gui::WidgetTemplate<QPushButton>
43{
44 Q_OBJECT
45 PIMPL(TagButton)
46
47 public:
48 TagButton(const QString& tagName, QWidget* parent);
49 ~TagButton() override;
50
51 protected:
52 void languageChanged() override;
53};
54
57{
58 Q_OBJECT
60 UI_CLASS_SHARED_PTR(GUI_StreamRecorderPreferences)
61
62 public:
63 GUI_StreamRecorderPreferences(const QString& identifier, const std::shared_ptr<Util::FileSystem>& filesystem);
65
66 bool commit() override;
67 void revert() override;
68
69 [[nodiscard]] QString actionName() const override;
70
71 protected:
72 void initUi() override;
73 void retranslate() override;
74 void skinChanged() override;
75
76 [[nodiscard]] QString errorString() const override;
77
78 private slots:
79 void activeToggled(bool);
80 void pathButtonClicked();
81 void defaultButtonClicked();
82 void lineEditChanged(const QString& text);
83};
84
85#endif /* GUI_StreamRecorderPreferences_H_ */
86
Definition: GUI_StreamRecorderPreferences.h:57
Template for Sayonara Widgets. This template is responsible for holding a reference to the settings.
Definition: WidgetTemplate.h:86
Definition: PreferenceWidget.h:32
Definition: GUI_StreamRecorderPreferences.h:43
Helper functions.
Definition: MetaTypeRegistry.h:25