#include <optional>
#include <sqlite3.h>
#include "mainwindow.h"
+#include "edit_player_dialog.h"
#include "ui_mainwindow.h"
#include "events.h"
#include "players.h"
connect(ui->clear_player_list, &QPushButton::clicked, [this] {
ui->player_view->selectionModel()->clear();
});
+ connect(ui->player_view, &QTableView::doubleClicked, [this](const QModelIndex &index) {
+ open_edit_player_dialog(index.row());
+ });
connect(ui->player_view->selectionModel(), &QItemSelectionModel::selectionChanged, [this] {
update_gender_ratio(ui->video->get_position());
});
update_ui_from_time(ui->video->get_position());
}
+void MainWindow::open_edit_player_dialog(unsigned row)
+{
+ int player_id = players->get_player_id(row);
+ string number = players->get_player_number(row);
+ string gender = players->get_player_gender(row);
+ string name = players->get_player_name(row);
+
+ EditPlayerDialog *dialog = new EditPlayerDialog(number, gender, name);
+ connect(dialog, &QDialog::finished, [this, dialog, player_id](int result) {
+ if (result == QDialog::Accepted) {
+ players->edit_player(player_id, dialog->number(), dialog->gender(), dialog->name());
+ update_ui_from_time(ui->video->get_position());
+ }
+ });
+ dialog->show();
+}