mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-05 09:33:25 -08:00
[Report] Prompt for a note on Resolve and drop the redundant option (#7445)
- Remove the third close option (Resolve with note...) so closing a report is one of two clear actions - Make Resolve always prompt for the optional resolution note, matching Dismiss, and rename the button to Resolve... - Halve the resolveReport signature now that every caller prompts Co-authored-by: Lukas Brübach <Bruebach.Lukas@bdosecurity.de>
This commit is contained in:
parent
38acddeede
commit
07eb9f0103
2 changed files with 11 additions and 21 deletions
|
|
@ -238,15 +238,13 @@ TabReport::TabReport(TabSupervisor *_tabSupervisor, AbstractClient *_client) : T
|
||||||
|
|
||||||
assignButton = new QPushButton;
|
assignButton = new QPushButton;
|
||||||
resolveButton = new QPushButton;
|
resolveButton = new QPushButton;
|
||||||
resolveWithNoteButton = new QPushButton;
|
|
||||||
dismissButton = new QPushButton;
|
dismissButton = new QPushButton;
|
||||||
reopenButton = new QPushButton;
|
reopenButton = new QPushButton;
|
||||||
viewReplayButton = new QPushButton;
|
viewReplayButton = new QPushButton;
|
||||||
joinGameButton = new QPushButton;
|
joinGameButton = new QPushButton;
|
||||||
connect(assignButton, &QPushButton::clicked, this, &TabReport::assignReport);
|
connect(assignButton, &QPushButton::clicked, this, &TabReport::assignReport);
|
||||||
connect(resolveButton, &QPushButton::clicked, this, [this]() { resolveReport(false, false); });
|
connect(resolveButton, &QPushButton::clicked, this, [this]() { resolveReport(false); });
|
||||||
connect(resolveWithNoteButton, &QPushButton::clicked, this, [this]() { resolveReport(false, true); });
|
connect(dismissButton, &QPushButton::clicked, this, [this]() { resolveReport(true); });
|
||||||
connect(dismissButton, &QPushButton::clicked, this, [this]() { resolveReport(true, true); });
|
|
||||||
connect(reopenButton, &QPushButton::clicked, this, &TabReport::reopenReport);
|
connect(reopenButton, &QPushButton::clicked, this, &TabReport::reopenReport);
|
||||||
connect(viewReplayButton, &QPushButton::clicked, this, &TabReport::viewReplay);
|
connect(viewReplayButton, &QPushButton::clicked, this, &TabReport::viewReplay);
|
||||||
connect(joinGameButton, &QPushButton::clicked, this, &TabReport::joinGame);
|
connect(joinGameButton, &QPushButton::clicked, this, &TabReport::joinGame);
|
||||||
|
|
@ -256,7 +254,6 @@ TabReport::TabReport(TabSupervisor *_tabSupervisor, AbstractClient *_client) : T
|
||||||
auto *actionBar = new QHBoxLayout;
|
auto *actionBar = new QHBoxLayout;
|
||||||
actionBar->addWidget(assignButton);
|
actionBar->addWidget(assignButton);
|
||||||
actionBar->addWidget(resolveButton);
|
actionBar->addWidget(resolveButton);
|
||||||
actionBar->addWidget(resolveWithNoteButton);
|
|
||||||
actionBar->addWidget(dismissButton);
|
actionBar->addWidget(dismissButton);
|
||||||
actionBar->addWidget(reopenButton);
|
actionBar->addWidget(reopenButton);
|
||||||
actionBar->addSpacing(20);
|
actionBar->addSpacing(20);
|
||||||
|
|
@ -323,8 +320,7 @@ void TabReport::retranslateUi()
|
||||||
statsGroup->setTitle(tr("Report Statistics"));
|
statsGroup->setTitle(tr("Report Statistics"));
|
||||||
|
|
||||||
assignButton->setText(tr("Assign to Me"));
|
assignButton->setText(tr("Assign to Me"));
|
||||||
resolveButton->setText(tr("Resolve"));
|
resolveButton->setText(tr("Resolve..."));
|
||||||
resolveWithNoteButton->setText(tr("Resolve with note..."));
|
|
||||||
dismissButton->setText(tr("Dismiss..."));
|
dismissButton->setText(tr("Dismiss..."));
|
||||||
reopenButton->setText(tr("Reopen..."));
|
reopenButton->setText(tr("Reopen..."));
|
||||||
reopenButton->setToolTip(tr("Available for resolved or dismissed reports."));
|
reopenButton->setToolTip(tr("Available for resolved or dismissed reports."));
|
||||||
|
|
@ -626,7 +622,6 @@ void TabReport::updateActionStates()
|
||||||
const QString status = QString::fromStdString(report.status());
|
const QString status = QString::fromStdString(report.status());
|
||||||
assignButton->setEnabled(status == "open");
|
assignButton->setEnabled(status == "open");
|
||||||
resolveButton->setEnabled(status == "open" || status == "assigned");
|
resolveButton->setEnabled(status == "open" || status == "assigned");
|
||||||
resolveWithNoteButton->setEnabled(status == "open" || status == "assigned");
|
|
||||||
dismissButton->setEnabled(status == "open" || status == "assigned");
|
dismissButton->setEnabled(status == "open" || status == "assigned");
|
||||||
reopenButton->setEnabled(status == "resolved" || status == "dismissed");
|
reopenButton->setEnabled(status == "resolved" || status == "dismissed");
|
||||||
|
|
||||||
|
|
@ -640,7 +635,6 @@ void TabReport::setActionsEnabled(bool enabled)
|
||||||
{
|
{
|
||||||
assignButton->setEnabled(enabled);
|
assignButton->setEnabled(enabled);
|
||||||
resolveButton->setEnabled(enabled);
|
resolveButton->setEnabled(enabled);
|
||||||
resolveWithNoteButton->setEnabled(enabled);
|
|
||||||
dismissButton->setEnabled(enabled);
|
dismissButton->setEnabled(enabled);
|
||||||
reopenButton->setEnabled(enabled);
|
reopenButton->setEnabled(enabled);
|
||||||
viewReplayButton->setEnabled(false);
|
viewReplayButton->setEnabled(false);
|
||||||
|
|
@ -704,22 +698,19 @@ void TabReport::assignResponse(const Response &response)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void TabReport::resolveReport(bool dismissed, bool promptNote)
|
void TabReport::resolveReport(bool dismissed)
|
||||||
{
|
{
|
||||||
const int reportId = selectedReportId();
|
const int reportId = selectedReportId();
|
||||||
if (reportId < 0) {
|
if (reportId < 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
QString note;
|
bool ok;
|
||||||
if (promptNote) {
|
QString note = QInputDialog::getText(this, dismissed ? tr("Dismiss Report") : tr("Resolve Report"),
|
||||||
bool ok;
|
dismissed ? tr("Optional note:") : tr("Resolution note (optional):"),
|
||||||
note = QInputDialog::getText(this, dismissed ? tr("Dismiss Report") : tr("Resolve Report"),
|
QLineEdit::Normal, QString(), &ok);
|
||||||
dismissed ? tr("Optional note:") : tr("Resolution note (optional):"),
|
if (!ok) {
|
||||||
QLineEdit::Normal, QString(), &ok);
|
return;
|
||||||
if (!ok) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
setActionsEnabled(false);
|
setActionsEnabled(false);
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ private slots:
|
||||||
void reportListResponse(const Response &response);
|
void reportListResponse(const Response &response);
|
||||||
void assignReport();
|
void assignReport();
|
||||||
void assignResponse(const Response &response);
|
void assignResponse(const Response &response);
|
||||||
void resolveReport(bool dismissed, bool promptNote);
|
void resolveReport(bool dismissed);
|
||||||
void resolveResponse(const Response &response);
|
void resolveResponse(const Response &response);
|
||||||
void onSelectionChanged();
|
void onSelectionChanged();
|
||||||
void showTableContextMenu(const QPoint &pos);
|
void showTableContextMenu(const QPoint &pos);
|
||||||
|
|
@ -91,7 +91,6 @@ private:
|
||||||
QPushButton *commentButton;
|
QPushButton *commentButton;
|
||||||
QPushButton *assignButton;
|
QPushButton *assignButton;
|
||||||
QPushButton *resolveButton;
|
QPushButton *resolveButton;
|
||||||
QPushButton *resolveWithNoteButton;
|
|
||||||
QPushButton *dismissButton;
|
QPushButton *dismissButton;
|
||||||
QPushButton *reopenButton;
|
QPushButton *reopenButton;
|
||||||
QPushButton *viewReplayButton;
|
QPushButton *viewReplayButton;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue