drumstick  2.9.0
C++ MIDI libraries using Qt objects, idioms, and style.
macsynthsettingsdialog.h
Go to the documentation of this file.
1 /*
2  Virtual Piano test using the MIDI Sequencer C++ library
3  Copyright (C) 2006-2023, Pedro Lopez-Cabanillas <plcl@users.sf.net>
4 
5  This program is free software; you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation; either version 3 of the License, or
8  (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18 
19 #ifndef MacSynthSettingsDialog_H
20 #define MacSynthSettingsDialog_H
21 
22 #include <QDialog>
23 #include <QShowEvent>
24 #include <QSettings>
25 
31 namespace drumstick {
32 
33 namespace rt {
34  class MIDIOutput;
35 }
36 
37 namespace widgets {
38 
39 namespace Ui {
40  class MacSynthSettingsDialog;
41 }
42 
43 class MacSynthSettingsDialog : public QDialog
44 {
45  Q_OBJECT
46 
47 public:
48  explicit MacSynthSettingsDialog(QWidget *parent = nullptr);
49  ~MacSynthSettingsDialog();
50  void readSettings();
51  void writeSettings();
52  void changeSoundFont(const QString& fileName);
53 
54 public Q_SLOTS:
55  void accept() override;
56  void showEvent(QShowEvent *event) override;
57  void restoreDefaults();
58  void showFileDialog();
59 
60 private:
61  Ui::MacSynthSettingsDialog *ui;
62  drumstick::rt::MIDIOutput *m_driver;
63  void checkDriver(QSettings* settings);
64 };
65 
66 }} // namespace drumstick::widgets
67 
68 #endif // MacSynthSettingsDialog_H
The QSettings class provides persistent platform-independent application settings.
MIDI OUT interface.
Definition: rtmidioutput.h:122
void DRUMSTICK_WIDGETS_EXPORT changeSoundFont(const QString driver, const QString fileName, QWidget *parent=nullptr)
Changes the sound font configuration Some RT output drivers accept soundfonts.
Drumstick common.
Definition: alsaclient.cpp:68