closeChildDlg

This commit is contained in:
2025-11-28 12:32:53 +03:00
parent 612fcc8aa7
commit 8ad6d06f18
7 changed files with 100 additions and 22 deletions

View File

@@ -22,6 +22,7 @@ AMMtasksWidget::AMMtasksWidget(ConnectorToServer* connectorToServer, TypeListTre
waitAnimationWidget(nullptr),
dlgCheckerTask(nullptr),
dlgListSubProc(nullptr),
specialMessageBox(nullptr),
flOnlyActive(false),
lastCurrentID(0)
{
@@ -145,16 +146,19 @@ void AMMtasksWidget::resizeEvent(QResizeEvent *event)
waitAnimationWidget->resize(size);
}
void AMMtasksWidget::closeDlgCheckTask()
void AMMtasksWidget::closeEvent(QCloseEvent *event)
{
closeChildDlg();
}
void AMMtasksWidget::closeChildDlg()
{
if(dlgCheckerTask)
dlgCheckerTask->close();
}
void AMMtasksWidget::closeDlgListSubProc()
{
if(dlgListSubProc)
dlgListSubProc->close();
if(specialMessageBox)
specialMessageBox->close();
}
void AMMtasksWidget::changeEvent(QEvent *event)
@@ -325,10 +329,16 @@ void AMMtasksWidget::slot_UpdateSubProcForDMCode(QString dmCode)
lastSelectedTask.listSubProc.clear();
dlgListSubProc->getListCheckedSubProc(&lastSelectedTask.listSubProc);
if(SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("Assign this task?")).exec() == QDialog::Accepted)
specialMessageBox = new SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("Assign this task?"));
if(specialMessageBox->exec() == QDialog::Accepted)
{
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_ASSIGN_TASK_AMM_TO_TRAINEE, idTraineeSelected, &lastSelectedTask);
}
if(specialMessageBox)
{
delete specialMessageBox;
specialMessageBox = nullptr;
}
break;
}
case QDialog::Rejected:
@@ -347,10 +357,16 @@ void AMMtasksWidget::slot_UpdateSubProcForDMCode(QString dmCode)
{
lastSelectedTask.listSubProc.clear();
if(SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("Assign this task?")).exec() == QDialog::Accepted)
specialMessageBox = new SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("Assign this task?"));
if(specialMessageBox->exec() == QDialog::Accepted)
{
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_ASSIGN_TASK_AMM_TO_TRAINEE, idTraineeSelected, &lastSelectedTask);
}
if(specialMessageBox)
{
delete specialMessageBox;
specialMessageBox = nullptr;
}
}
}
}
@@ -504,11 +520,18 @@ void AMMtasksWidget::on_btnDelete_clicked()
int id = treeItemCurrent->text(ColumnsTreeAMM::clmnAMM_ID).toInt();
if(SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("The deletion will be irrevocable.\nDelete it anyway?")).exec() == QDialog::Accepted)
specialMessageBox = new SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("The deletion will be irrevocable.\nDelete it anyway?"));
if(specialMessageBox->exec() == QDialog::Accepted)
{
waitAnimationWidget->showWithPlay();
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_DEL_TASK_AMM_TO_TRAINEE, id);
}
if(specialMessageBox)
{
delete specialMessageBox;
specialMessageBox = nullptr;
}
}
}
}

View File

@@ -10,6 +10,7 @@
#include "dialogchekertask.h"
#include "dialoglistsubproc.h"
#include "waitanimationwidget.h"
#include "specialmessagebox.h"
namespace Ui {
class AMMtasksWidget;
@@ -31,8 +32,10 @@ public:
public:
void resizeEvent(QResizeEvent *event) override;
void closeDlgCheckTask();
void closeDlgListSubProc();
void closeEvent(QCloseEvent *event) override;
void closeChildDlg();
protected:
void changeEvent(QEvent * event) override;
@@ -100,6 +103,8 @@ private:
DialogListSubProc* dlgListSubProc;
SpecialMessageBox* specialMessageBox;
bool flOnlyActive; //AMM
int lastCurrentID;

View File

@@ -8,6 +8,7 @@ CheckerTask::CheckerTask(ConnectorToServer* connectorToServer, QString type, QWi
ui(new Ui::CheckerTask),
connectorToServer(connectorToServer),
fimTasksWidget(nullptr),
specialMessageBox(nullptr),
flChanged(false),
id_task(0),
type("fim")
@@ -48,12 +49,19 @@ CheckerTask::~CheckerTask()
delete fimTasksWidget;
fimTasksWidget = nullptr;
}
if(specialMessageBox)
{
delete specialMessageBox;
specialMessageBox = nullptr;
}
delete ui;
}
void CheckerTask::closeEvent(QCloseEvent *event)
{
if(specialMessageBox)
specialMessageBox->close();
}
void CheckerTask::setTask(TaskAmmFim* task)
@@ -175,12 +183,18 @@ void CheckerTask::on_btnWrong_clicked()
msgString = tr("Change task status?\nThe status will be set:\n'new'");
}
if(SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, msgString).exec() == QDialog::Accepted)
specialMessageBox = new SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, msgString);
if(specialMessageBox->exec() == QDialog::Accepted)
{
connectorToServer->sendQueryToDB(typeQuery, id_task, (void*)&status);
this->parentWidget()->close();
flChanged = true;
}
if(specialMessageBox)
{
delete specialMessageBox;
specialMessageBox = nullptr;
}
}
void CheckerTask::on_btnRight_clicked()
@@ -202,10 +216,16 @@ void CheckerTask::on_btnRight_clicked()
msgString = tr("Change task status?\nThe status will be set:\n'completed'");
}
if(SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, msgString).exec() == QDialog::Accepted)
specialMessageBox = new SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, msgString);
if(specialMessageBox->exec() == QDialog::Accepted)
{
connectorToServer->sendQueryToDB(typeQuery, id_task, (void*)&status);
this->parentWidget()->close();
flChanged = true;
}
if(specialMessageBox)
{
delete specialMessageBox;
specialMessageBox = nullptr;
}
}

View File

@@ -6,6 +6,7 @@
//#include "fimtaskswidget.h"
#include "module.h"
#include "connectortoserver.h"
#include "specialmessagebox.h"
namespace Ui {
class CheckerTask;
@@ -47,6 +48,8 @@ private:
ConnectorToServer* connectorToServer;
FIMtasksWidget* fimTasksWidget;
SpecialMessageBox* specialMessageBox;
bool flChanged;
int id_task;
QString type;

View File

@@ -22,6 +22,7 @@ FIMtasksWidget::FIMtasksWidget(ConnectorToServer* connectorToServer, TypeListTre
taskTreePreparation(nullptr),
waitAnimationWidget(nullptr),
dlgCheckerTask(nullptr),
specialMessageBox(nullptr),
userName(""),
lastCurrentID(0)
{
@@ -101,9 +102,9 @@ FIMtasksWidget::~FIMtasksWidget()
delete treeWidget;
if(dlgCheckerTask)
{
dlgCheckerTask->close();
}
if(specialMessageBox)
specialMessageBox->close();
delete ui;
}
@@ -130,10 +131,17 @@ void FIMtasksWidget::resizeEvent(QResizeEvent *event)
waitAnimationWidget->resize(size);
}
void FIMtasksWidget::closeDlgCheckTask()
void FIMtasksWidget::closeEvent(QCloseEvent *event)
{
closeChildDlg();
}
void FIMtasksWidget::closeChildDlg()
{
if(dlgCheckerTask)
dlgCheckerTask->close();
if(specialMessageBox)
specialMessageBox->close();
}
void FIMtasksWidget::changeEvent(QEvent *event)
@@ -393,11 +401,17 @@ void FIMtasksWidget::on_btnDelete_clicked()
int id = treeItemCurrent->text(ColumnsTreeFIM::clmnFIM_ID).toInt();
if(SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("The deletion will be irrevocable.\nDelete it anyway?")).exec() == QDialog::Accepted)
specialMessageBox = new SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("The deletion will be irrevocable.\nDelete it anyway?"));
if(specialMessageBox->exec() == QDialog::Accepted)
{
waitAnimationWidget->showWithPlay();
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_DEL_TASK_FIM_TO_TRAINEE, id);
}
if(specialMessageBox)
{
delete specialMessageBox;
specialMessageBox = nullptr;
}
}
}
}
@@ -437,8 +451,14 @@ void FIMtasksWidget::on_btnCheck_clicked()
void FIMtasksWidget::on_btnAssignTask_clicked()
{
if(SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("Assign this task?")).exec() == QDialog::Accepted)
specialMessageBox = new SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("Assign this task?"));
if(specialMessageBox->exec() == QDialog::Accepted)
assignTaskFIMtoTrainee();
if(specialMessageBox)
{
delete specialMessageBox;
specialMessageBox = nullptr;
}
}
void FIMtasksWidget::updateTaskItem(QTreeWidgetItem *itemTask)

View File

@@ -8,6 +8,7 @@
#include "tasktreepreparation.h"
#include "dialogchekertask.h"
#include "waitanimationwidget.h"
#include "specialmessagebox.h"
namespace Ui {
class FIMtasksWidget;
@@ -31,7 +32,10 @@ public:
public:
void resizeEvent(QResizeEvent *event) override;
void closeDlgCheckTask();
void closeEvent(QCloseEvent *event) override;
void closeChildDlg();
protected:
void changeEvent(QEvent * event) override;
@@ -88,6 +92,8 @@ private:
DialogChekerTask* dlgCheckerTask;
SpecialMessageBox* specialMessageBox;
QString userName; //FIM
int lastCurrentID;