Concurrent evidence updating!
Similar to the way Google Docs work, the evidence will be updated immediately as you make any changes to it.
This commit is contained in:
parent
cda7d430b3
commit
a175a1884c
@ -691,10 +691,12 @@ private slots:
|
|||||||
|
|
||||||
void on_showname_enable_clicked();
|
void on_showname_enable_clicked();
|
||||||
|
|
||||||
|
void on_evidence_name_double_clicked();
|
||||||
void on_evidence_button_clicked();
|
void on_evidence_button_clicked();
|
||||||
|
|
||||||
void on_evidence_delete_clicked();
|
void on_evidence_delete_clicked();
|
||||||
void on_evidence_x_clicked();
|
void on_evidence_x_clicked();
|
||||||
|
void on_evidence_description_edited();
|
||||||
|
|
||||||
void on_back_to_lobby_clicked();
|
void on_back_to_lobby_clicked();
|
||||||
|
|
||||||
|
@ -31,6 +31,7 @@ void Courtroom::initialize_evidence()
|
|||||||
"color: white;");
|
"color: white;");
|
||||||
|
|
||||||
connect(ui_evidence_name, SIGNAL(textEdited(QString)), this, SLOT(on_evidence_name_edited(QString)));
|
connect(ui_evidence_name, SIGNAL(textEdited(QString)), this, SLOT(on_evidence_name_edited(QString)));
|
||||||
|
connect(ui_evidence_name, SIGNAL(double_clicked()), this, SLOT(on_evidence_name_double_clicked()));
|
||||||
connect(ui_evidence_left, SIGNAL(clicked()), this, SLOT(on_evidence_left_clicked()));
|
connect(ui_evidence_left, SIGNAL(clicked()), this, SLOT(on_evidence_left_clicked()));
|
||||||
connect(ui_evidence_right, SIGNAL(clicked()), this, SLOT(on_evidence_right_clicked()));
|
connect(ui_evidence_right, SIGNAL(clicked()), this, SLOT(on_evidence_right_clicked()));
|
||||||
connect(ui_evidence_present, SIGNAL(clicked()), this, SLOT(on_evidence_present_clicked()));
|
connect(ui_evidence_present, SIGNAL(clicked()), this, SLOT(on_evidence_present_clicked()));
|
||||||
@ -38,6 +39,7 @@ void Courtroom::initialize_evidence()
|
|||||||
connect(ui_evidence_image_name, SIGNAL(returnPressed()), this, SLOT(on_evidence_image_name_edited()));
|
connect(ui_evidence_image_name, SIGNAL(returnPressed()), this, SLOT(on_evidence_image_name_edited()));
|
||||||
connect(ui_evidence_image_button, SIGNAL(clicked()), this, SLOT(on_evidence_image_button_clicked()));
|
connect(ui_evidence_image_button, SIGNAL(clicked()), this, SLOT(on_evidence_image_button_clicked()));
|
||||||
connect(ui_evidence_x, SIGNAL(clicked()), this, SLOT(on_evidence_x_clicked()));
|
connect(ui_evidence_x, SIGNAL(clicked()), this, SLOT(on_evidence_x_clicked()));
|
||||||
|
connect(ui_evidence_description, SIGNAL(textChanged()), this, SLOT(on_evidence_description_edited()));
|
||||||
|
|
||||||
ui_evidence->hide();
|
ui_evidence->hide();
|
||||||
}
|
}
|
||||||
@ -97,6 +99,19 @@ void Courtroom::set_evidence_list(QVector<evi_type> &p_evi_list)
|
|||||||
local_evidence_list = p_evi_list;
|
local_evidence_list = p_evi_list;
|
||||||
|
|
||||||
set_evidence_page();
|
set_evidence_page();
|
||||||
|
|
||||||
|
if (ui_evidence_overlay->isVisible())//Update the currently edited evidence for this user
|
||||||
|
{
|
||||||
|
if (current_evidence >= local_evidence_list.size())
|
||||||
|
{
|
||||||
|
on_evidence_x_clicked();
|
||||||
|
ui_evidence_name->setText("");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
on_evidence_double_clicked(current_evidence);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Courtroom::set_evidence_page()
|
void Courtroom::set_evidence_page()
|
||||||
@ -267,14 +282,23 @@ void Courtroom::on_evidence_double_clicked(int p_id)
|
|||||||
|
|
||||||
evi_type f_evi = local_evidence_list.at(f_real_id);
|
evi_type f_evi = local_evidence_list.at(f_real_id);
|
||||||
|
|
||||||
ui_evidence_description->clear();
|
QTextCursor cursor = ui_evidence_description->textCursor();
|
||||||
ui_evidence_description->appendPlainText(f_evi.description);
|
int pos = cursor.position();
|
||||||
|
|
||||||
|
//ISSUE: Undo/redo history is completely inaccessible. :(
|
||||||
|
ui_evidence_description->blockSignals(true);
|
||||||
|
ui_evidence_description->setPlainText(f_evi.description);
|
||||||
|
ui_evidence_description->blockSignals(false);
|
||||||
|
|
||||||
|
cursor.setPosition(pos); //Reset the cursor position back in place
|
||||||
|
ui_evidence_description->setTextCursor(cursor);
|
||||||
|
|
||||||
ui_evidence_image_name->setText(f_evi.image);
|
ui_evidence_image_name->setText(f_evi.image);
|
||||||
|
ui_evidence_name->setText(f_evi.name);
|
||||||
|
|
||||||
ui_evidence_overlay->show();
|
ui_evidence_overlay->show();
|
||||||
|
|
||||||
ui_ic_chat_message->setFocus();
|
// ui_ic_chat_message->setFocus();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Courtroom::on_evidence_hover(int p_id, bool p_state)
|
void Courtroom::on_evidence_hover(int p_id, bool p_state)
|
||||||
@ -346,9 +370,8 @@ void Courtroom::on_evidence_x_clicked()
|
|||||||
ui_ic_chat_message->setFocus();
|
ui_ic_chat_message->setFocus();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (current_evidence >= local_evidence_list.size())
|
void Courtroom::on_evidence_description_edited()
|
||||||
return;
|
{
|
||||||
|
|
||||||
QStringList f_contents;
|
QStringList f_contents;
|
||||||
|
|
||||||
evi_type f_evi = local_evidence_list.at(current_evidence);
|
evi_type f_evi = local_evidence_list.at(current_evidence);
|
||||||
@ -359,7 +382,4 @@ void Courtroom::on_evidence_x_clicked()
|
|||||||
f_contents.append(f_evi.image);
|
f_contents.append(f_evi.image);
|
||||||
|
|
||||||
ao_app->send_server_packet(new AOPacket("EE", f_contents));
|
ao_app->send_server_packet(new AOPacket("EE", f_contents));
|
||||||
|
|
||||||
ui_ic_chat_message->setFocus();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user