]> git.sesse.net Git - ultimatescore/blobdiff - client/mainwindow.cpp
Add some code to display rosters.
[ultimatescore] / client / mainwindow.cpp
index 7936ee3228c7588b709cde74a4895a468c2e43cb..baf103d988a8e122018bdc6ea08774ff8a6313bb 100644 (file)
@@ -129,6 +129,9 @@ MainWindow::MainWindow(QWidget *parent) :
        connect(ui->show_schedule_btn, &QPushButton::clicked, this, &MainWindow::show_schedule_clicked);
        connect(ui->show_carousel_btn, &QPushButton::clicked, this, &MainWindow::show_carousel_clicked);
        connect(ui->show_nothing_btn, &QPushButton::clicked, this, &MainWindow::show_nothing_clicked);
+       connect(ui->show_roster_1_btn, &QPushButton::clicked, this, [this]() { show_roster_clicked(ui->initials_1_edit->text().toStdString()); });
+       connect(ui->show_roster_2_btn, &QPushButton::clicked, this, [this]() { show_roster_clicked(ui->initials_2_edit->text().toStdString()); });
+       connect(ui->show_roster_carousel_btn, &QPushButton::clicked, this, &MainWindow::show_roster_carousel_clicked);
 
        autocomment_update();
 
@@ -260,10 +263,19 @@ void MainWindow::hide_lower_third_clicked()
 
 void MainWindow::quick_lower_third_activate()
 {
-       map<string, string> param;
-       param["code"] = ui->quick_lower_third_edit->text().toStdString();
-       acmp->send_command("cg 1 update 1 \"" + escape_quotes(serialize_as_json(param)) + "\"");
-       acmp->send_command("cg 1 invoke 1 quicklowerthird");
+       string code = ui->quick_lower_third_edit->text().toUpper().toStdString();
+       if (code == "A") {
+               add_goal(ui->score_1_box, 1);
+       } else if (code == "B") {
+               add_goal(ui->score_2_box, 1);
+       } else if (code == "C") {
+               acmp->send_command("cg 1 invoke 1 hidelowerthird");
+       } else {
+               map<string, string> param;
+               param["code"] = code;
+               acmp->send_command("cg 1 update 1 \"" + escape_quotes(serialize_as_json(param)) + "\"");
+               acmp->send_command("cg 1 invoke 1 quicklowerthird");
+       }
        ui->quick_lower_third_edit->clear();
 }
 
@@ -300,6 +312,15 @@ void MainWindow::show_group_clicked(const std::string &group_name)
        acmp->send_command("cg 1 invoke 1 showgroup_from_state");
 }
 
+void MainWindow::show_roster_clicked(const std::string &team_code)
+{
+       map<string, string> param;
+       param["team_code"] = team_code;
+       acmp->send_command("cg 1 invoke 1 stopcarousel");
+       acmp->send_command("cg 1 update 1 \"" + escape_quotes(serialize_as_json(param)) + "\"");
+       acmp->send_command("cg 1 invoke 1 showroster_from_state");
+}
+
 void MainWindow::show_schedule_clicked()
 {
        acmp->send_command("cg 1 invoke 1 stopcarousel");
@@ -312,6 +333,16 @@ void MainWindow::show_carousel_clicked()
        acmp->send_command("cg 1 invoke 1 showcarousel");
 }
 
+void MainWindow::show_roster_carousel_clicked()
+{
+       map<string, string> param;
+       param["team1"] = escape_html(ui->initials_1_edit->text().toStdString());
+       param["team2"] = escape_html(ui->initials_2_edit->text().toStdString());
+       acmp->send_command("cg 1 invoke 1 stopcarousel");
+       acmp->send_command("cg 1 update 1 \"" + escape_quotes(serialize_as_json(param)) + "\"");
+       acmp->send_command("cg 1 invoke 1 showrostercarousel_from_state");
+}
+
 void MainWindow::show_nothing_clicked()
 {
        acmp->send_command("cg 1 invoke 1 hidescorebug");