From 9186486e2668094bf89520a72fc1520d12ea2a84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9D=D0=B8=D0=BA=D0=BE=D0=BB=D0=B0=D0=B9=20=D0=A1=D1=82?= =?UTF-8?q?=D0=B5=D0=BF=D0=B0=D0=BD=D0=BE=D0=B2?= Date: Sat, 20 May 2023 09:16:28 +0300 Subject: [PATCH] fix error on client if database in empty --- client/internal/gui/src/AddTaskDialog.cpp | 1 - client/internal/gui/src/TasksWindow.cpp | 11 ++++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/client/internal/gui/src/AddTaskDialog.cpp b/client/internal/gui/src/AddTaskDialog.cpp index 3fefa31..4955001 100644 --- a/client/internal/gui/src/AddTaskDialog.cpp +++ b/client/internal/gui/src/AddTaskDialog.cpp @@ -7,7 +7,6 @@ AddTaskDialog::AddTaskDialog(QWidget *parent) : QDialog(parent) { setupUi(this); - connect(createButton, &QPushButton::clicked, this, &AddTaskDialog::on_createButton_clicked); connect(backButton, &QPushButton::clicked, this, &AddTaskDialog::on_backButton_clicked); } diff --git a/client/internal/gui/src/TasksWindow.cpp b/client/internal/gui/src/TasksWindow.cpp index 04cebc7..05e6fea 100644 --- a/client/internal/gui/src/TasksWindow.cpp +++ b/client/internal/gui/src/TasksWindow.cpp @@ -45,13 +45,17 @@ void TasksWindow::setupUi(QMainWindow *UserWindow) { for (int i = 0; i < tasks_vector.size(); i++) { tasks->insertItem(i, QString::number(tasks_vector[i].id)); } + + if (tasks_vector.empty()) { + tasks->insertItem(0, QString::fromUtf8("Пока заданий нет")); + } tasks->setCurrentIndex(0); taskVerticalLayout->addWidget(label); taskVerticalLayout->addWidget(tasks); taskDescription = new QLabel(this); - std::string description = tasks_vector[0].description; + std::string description = tasks_vector.empty() ? "" : tasks_vector[0].description; taskDescription->setText(QString(description.c_str())); buttonsWidget = new QWidget(centralwidget); @@ -63,6 +67,9 @@ void TasksWindow::setupUi(QMainWindow *UserWindow) { goToTaskButton = new QPushButton(this); goToTaskButton->setText(QString::fromUtf8("Перейти к сдаче")); + if (tasks_vector.empty()) + goToTaskButton->setDisabled(true); + addTaskButton = new QPushButton(this); addTaskButton->setText(QString::fromUtf8("Добавить задание")); @@ -114,4 +121,6 @@ void TasksWindow::updateTasks() { std::string description = tasks_vector[0].description; taskDescription->setText(QString(description.c_str())); + + goToTaskButton->setDisabled(false); } -- GitLab