1 /*
2  *  SPDX-FileCopyrightText: 2012 Sebastian Gottfried <sebastiangottfried@web.de>
3  *
4  *  SPDX-License-Identifier: GPL-2.0-or-later
5  */
6 
7 #include "newcoursewidget.h"
8 
9 #include "core/dataindex.h"
10 #include "models/resourcemodel.h"
11 
NewCourseWidget(ResourceModel * resourceModel,QWidget * parent)12 NewCourseWidget::NewCourseWidget(ResourceModel* resourceModel, QWidget* parent) :
13     QWidget(parent),
14     Ui::NewCourseWidget()
15 {
16     setupUi(this);
17 
18     connect(m_titleLineEdit, &QLineEdit::textChanged, this, &NewCourseWidget::isValidChanged);
19     connect(m_keyboardLayoutComboBox, SIGNAL(currentIndexChanged(int)), SIGNAL(isValidChanged()));
20 
21     m_keyboardLayoutComboBox->setResourceModel(resourceModel);
22     m_keyboardLayoutComboBox->setCurrentIndex(0);
23 }
24 
isValid() const25 bool NewCourseWidget::isValid() const
26 {
27     if (m_titleLineEdit->text().isEmpty())
28         return false;
29 
30     if (m_keyboardLayoutComboBox->currentIndex() == -1)
31         return false;
32 
33     return true;
34 }
35 
title() const36 QString NewCourseWidget::title() const
37 {
38     return m_titleLineEdit->text();
39 }
40 
keyboardLayoutName() const41 QString NewCourseWidget::keyboardLayoutName() const
42 {
43     DataIndexKeyboardLayout* const layout = m_keyboardLayoutComboBox->selectedKeyboardLayout();
44     return layout? layout->name(): QLatin1String("");
45 }
46 
description() const47 QString NewCourseWidget::description() const
48 {
49     return m_descriptionEdit->toPlainText();
50 }
51