File indexing completed on 2022-09-27 12:30:59

0001 /*
0002  * SPDX-FileCopyrightText: 2013 Sebastian Gottfried <sebastiangottfried@web.de>
0003  *
0004  * SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 
0008 #ifndef CUSTOMLESSONEDITORDIALOG_H
0009 #define CUSTOMLESSONEDITORDIALOG_H
0010 
0011 #include <QDialog>
0012 
0013 #include "ui_customlessoneditordialog.h"
0014 
0015 class Lesson;
0016 class KeyboardLayout;
0017 
0018 class CustomLessonEditorDialog : public QDialog, private Ui::CustomLessonEditorDialog
0019 {
0020     Q_OBJECT
0021 public:
0022     explicit CustomLessonEditorDialog(QWidget* parent = 0);
0023     Lesson* lesson() const;
0024     void setLesson(Lesson* lesson);
0025     KeyboardLayout* keyboardLayout() const;
0026     void setKeyboardLayout(KeyboardLayout* keyboardLayout);
0027 signals:
0028     void validChanged(bool valid);
0029 private slots:
0030     void updateTitle();
0031     void updateText();
0032     void updateAllowedCharacters();
0033     void onTitleChanged();
0034     void onTextChanged();
0035 private:
0036     void emitValidChanged();
0037     Lesson* m_lesson;
0038     KeyboardLayout* m_keyboardLayout;
0039 };
0040 
0041 #endif // CUSTOMLESSONEDITORDIALOG_H