aboutsummaryrefslogtreecommitdiff
path: root/src/evidence.cpp
diff options
context:
space:
mode:
authorCrystalwarrior <varsash@gmail.com>2020-05-22 01:18:24 +0300
committerCrystalwarrior <varsash@gmail.com>2020-05-22 01:18:24 +0300
commitc8e12558cdd3fd0769b81679ad09edf1f29b780f (patch)
tree7dae2225e574c3ee55d6b82a1d2f399db4ace5c0 /src/evidence.cpp
parentdfac0652c8eb9bd48ceea7ae755e9c2f7e5cb1a2 (diff)
Clang-ify the code with this styling using Visual Studio Code:
{ BasedOnStyle: LLVM, UseTab: Never, IndentWidth: 4, TabWidth: 4, BreakBeforeBraces: Stroustrup, AllowShortIfStatementsOnASingleLine: false, IndentCaseLabels: false, ColumnLimit: 0, AccessModifierOffset: -4, NamespaceIndentation: All } (this is the Visual Studio preset with only "BreakBeforeBraces" changed from Allman to Stroustrup)
Diffstat (limited to 'src/evidence.cpp')
-rw-r--r--src/evidence.cpp1064
1 files changed, 516 insertions, 548 deletions
diff --git a/src/evidence.cpp b/src/evidence.cpp
index 0cee435a..50ed9a4f 100644
--- a/src/evidence.cpp
+++ b/src/evidence.cpp
@@ -2,533 +2,510 @@
void Courtroom::initialize_evidence()
{
- ui_evidence = new AOImage(this, ao_app);
-
- //ui_evidence_name = new QLabel(ui_evidence);
- ui_evidence_name = new AOLineEdit(ui_evidence);
- ui_evidence_name->setAlignment(Qt::AlignCenter);
- ui_evidence_name->setFrame(false);
-
- ui_evidence_buttons = new QWidget(ui_evidence);
-
- ui_evidence_left = new AOButton(ui_evidence, ao_app);
- ui_evidence_right = new AOButton(ui_evidence, ao_app);
- ui_evidence_present = new AOButton(ui_evidence, ao_app);
- ui_evidence_present->setToolTip(tr("Present this piece of evidence to everyone on your next spoken message"));
-
- ui_evidence_switch = new AOButton(ui_evidence, ao_app);
- ui_evidence_transfer = new AOButton(ui_evidence, ao_app);
-
- ui_evidence_save = new AOButton(ui_evidence, ao_app);
- ui_evidence_save->setToolTip(tr("Save evidence to an .ini file."));
- ui_evidence_load = new AOButton(ui_evidence, ao_app);
- ui_evidence_load->setToolTip(tr("Load evidence from an .ini file."));
-
- ui_evidence_overlay = new AOImage(ui_evidence, ao_app);
-
- ui_evidence_delete = new AOButton(ui_evidence_overlay, ao_app);
- ui_evidence_delete->setToolTip(tr("Destroy this piece of evidence"));
- ui_evidence_image_name = new AOLineEdit(ui_evidence_overlay);
- ui_evidence_image_button = new AOButton(ui_evidence_overlay, ao_app);
- ui_evidence_image_button->setText(tr("Choose..."));
- ui_evidence_x = new AOButton(ui_evidence_overlay, ao_app);
- ui_evidence_x->setToolTip(tr("Close the evidence display/editing overlay.\n"
- "You will be prompted if there's any unsaved changes."));
- ui_evidence_ok = new AOButton(ui_evidence_overlay, ao_app);
- ui_evidence_ok->setToolTip(tr("Save any changes made to this piece of evidence and send them to server."));
-
- ui_evidence_description = new AOTextEdit(ui_evidence_overlay);
- ui_evidence_description->setStyleSheet("background-color: rgba(0, 0, 0, 0);"
- "color: white;");
- ui_evidence_description->setFrameStyle(QFrame::NoFrame);
- ui_evidence_description->setToolTip("Double-click to edit. Press [X] to update your changes.");
-
- connect(ui_evidence_name, SIGNAL(returnPressed()), this, SLOT(on_evidence_name_edited()));
- 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_right, SIGNAL(clicked()), this, SLOT(on_evidence_right_clicked()));
- connect(ui_evidence_present, SIGNAL(clicked()), this, SLOT(on_evidence_present_clicked()));
- connect(ui_evidence_switch, SIGNAL(clicked()), this, SLOT(on_evidence_switch_clicked()));
- connect(ui_evidence_transfer, SIGNAL(clicked()), this, SLOT(on_evidence_transfer_clicked()));
- connect(ui_evidence_save, SIGNAL(clicked()), this, SLOT(on_evidence_save_clicked()));
- connect(ui_evidence_load, SIGNAL(clicked()), this, SLOT(on_evidence_load_clicked()));
-
- connect(ui_evidence_delete, SIGNAL(clicked()), this, SLOT(on_evidence_delete_clicked()));
- connect(ui_evidence_image_name, SIGNAL(returnPressed()), this, SLOT(on_evidence_image_name_edited()));
- connect(ui_evidence_image_name, SIGNAL(double_clicked()), this, SLOT(on_evidence_image_name_double_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_ok, SIGNAL(clicked()), this, SLOT(on_evidence_ok_clicked()));
-
- connect(ui_evidence_name, SIGNAL(textChanged(QString)), this, SLOT(on_evidence_edited()));
- connect(ui_evidence_image_name, SIGNAL(textChanged(QString)), this, SLOT(on_evidence_edited()));
- connect(ui_evidence_description, SIGNAL(textChanged()), this, SLOT(on_evidence_edited()));
-
- ui_evidence->hide();
+ ui_evidence = new AOImage(this, ao_app);
+
+ //ui_evidence_name = new QLabel(ui_evidence);
+ ui_evidence_name = new AOLineEdit(ui_evidence);
+ ui_evidence_name->setAlignment(Qt::AlignCenter);
+ ui_evidence_name->setFrame(false);
+
+ ui_evidence_buttons = new QWidget(ui_evidence);
+
+ ui_evidence_left = new AOButton(ui_evidence, ao_app);
+ ui_evidence_right = new AOButton(ui_evidence, ao_app);
+ ui_evidence_present = new AOButton(ui_evidence, ao_app);
+ ui_evidence_present->setToolTip(tr("Present this piece of evidence to everyone on your next spoken message"));
+
+ ui_evidence_switch = new AOButton(ui_evidence, ao_app);
+ ui_evidence_transfer = new AOButton(ui_evidence, ao_app);
+
+ ui_evidence_save = new AOButton(ui_evidence, ao_app);
+ ui_evidence_save->setToolTip(tr("Save evidence to an .ini file."));
+ ui_evidence_load = new AOButton(ui_evidence, ao_app);
+ ui_evidence_load->setToolTip(tr("Load evidence from an .ini file."));
+
+ ui_evidence_overlay = new AOImage(ui_evidence, ao_app);
+
+ ui_evidence_delete = new AOButton(ui_evidence_overlay, ao_app);
+ ui_evidence_delete->setToolTip(tr("Destroy this piece of evidence"));
+ ui_evidence_image_name = new AOLineEdit(ui_evidence_overlay);
+ ui_evidence_image_button = new AOButton(ui_evidence_overlay, ao_app);
+ ui_evidence_image_button->setText(tr("Choose..."));
+ ui_evidence_x = new AOButton(ui_evidence_overlay, ao_app);
+ ui_evidence_x->setToolTip(tr("Close the evidence display/editing overlay.\n"
+ "You will be prompted if there's any unsaved changes."));
+ ui_evidence_ok = new AOButton(ui_evidence_overlay, ao_app);
+ ui_evidence_ok->setToolTip(tr("Save any changes made to this piece of evidence and send them to server."));
+
+ ui_evidence_description = new AOTextEdit(ui_evidence_overlay);
+ ui_evidence_description->setStyleSheet("background-color: rgba(0, 0, 0, 0);"
+ "color: white;");
+ ui_evidence_description->setFrameStyle(QFrame::NoFrame);
+ ui_evidence_description->setToolTip("Double-click to edit. Press [X] to update your changes.");
+
+ connect(ui_evidence_name, SIGNAL(returnPressed()), this, SLOT(on_evidence_name_edited()));
+ 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_right, SIGNAL(clicked()), this, SLOT(on_evidence_right_clicked()));
+ connect(ui_evidence_present, SIGNAL(clicked()), this, SLOT(on_evidence_present_clicked()));
+ connect(ui_evidence_switch, SIGNAL(clicked()), this, SLOT(on_evidence_switch_clicked()));
+ connect(ui_evidence_transfer, SIGNAL(clicked()), this, SLOT(on_evidence_transfer_clicked()));
+ connect(ui_evidence_save, SIGNAL(clicked()), this, SLOT(on_evidence_save_clicked()));
+ connect(ui_evidence_load, SIGNAL(clicked()), this, SLOT(on_evidence_load_clicked()));
+
+ connect(ui_evidence_delete, SIGNAL(clicked()), this, SLOT(on_evidence_delete_clicked()));
+ connect(ui_evidence_image_name, SIGNAL(returnPressed()), this, SLOT(on_evidence_image_name_edited()));
+ connect(ui_evidence_image_name, SIGNAL(double_clicked()), this, SLOT(on_evidence_image_name_double_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_ok, SIGNAL(clicked()), this, SLOT(on_evidence_ok_clicked()));
+
+ connect(ui_evidence_name, SIGNAL(textChanged(QString)), this, SLOT(on_evidence_edited()));
+ connect(ui_evidence_image_name, SIGNAL(textChanged(QString)), this, SLOT(on_evidence_edited()));
+ connect(ui_evidence_description, SIGNAL(textChanged()), this, SLOT(on_evidence_edited()));
+
+ ui_evidence->hide();
}
void Courtroom::refresh_evidence()
{
- set_font(ui_evidence_name, "", "evidence_name");
- set_font(ui_evidence_image_name, "", "evidence_image_name");
- set_font(ui_evidence_description, "", "evidence_description");
-
- //Should properly refresh the evidence list
- qDeleteAll(ui_evidence_list.begin(), ui_evidence_list.end());
- ui_evidence_list.clear();
-
- set_size_and_pos(ui_evidence_button, "evidence_button");
- ui_evidence_button->set_image("evidence_button");
- ui_evidence_button->setToolTip(tr("Bring up the Evidence screen."));
-
- set_size_and_pos(ui_evidence, "evidence_background");
- if (current_evidence_global)
- ui_evidence->set_image("evidence_background");
- else
- ui_evidence->set_image("evidence_background_private");
+ set_font(ui_evidence_name, "", "evidence_name");
+ set_font(ui_evidence_image_name, "", "evidence_image_name");
+ set_font(ui_evidence_description, "", "evidence_description");
- set_size_and_pos(ui_evidence_name, "evidence_name");
-
- set_size_and_pos(ui_evidence_buttons, "evidence_buttons");
+ //Should properly refresh the evidence list
+ qDeleteAll(ui_evidence_list.begin(), ui_evidence_list.end());
+ ui_evidence_list.clear();
- set_size_and_pos(ui_evidence_left, "evidence_left");
- ui_evidence_left->set_image("arrow_left");
+ set_size_and_pos(ui_evidence_button, "evidence_button");
+ ui_evidence_button->set_image("evidence_button");
+ ui_evidence_button->setToolTip(tr("Bring up the Evidence screen."));
- set_size_and_pos(ui_evidence_right, "evidence_right");
- ui_evidence_right->set_image("arrow_right");
+ set_size_and_pos(ui_evidence, "evidence_background");
+ if (current_evidence_global)
+ ui_evidence->set_image("evidence_background");
+ else
+ ui_evidence->set_image("evidence_background_private");
- set_size_and_pos(ui_evidence_present, "evidence_present");
- ui_evidence_present->set_image("present");
+ set_size_and_pos(ui_evidence_name, "evidence_name");
- set_size_and_pos(ui_evidence_overlay, "evidence_overlay");
- if (current_evidence_global)
- ui_evidence_overlay->set_image("evidence_overlay");
- else
- ui_evidence_overlay->set_image("evidence_overlay_private");
+ set_size_and_pos(ui_evidence_buttons, "evidence_buttons");
- set_size_and_pos(ui_evidence_delete, "evidence_delete");
- ui_evidence_delete->set_image("evidence_delete");
+ set_size_and_pos(ui_evidence_left, "evidence_left");
+ ui_evidence_left->set_image("arrow_left");
- set_size_and_pos(ui_evidence_image_name, "evidence_image_name");
+ set_size_and_pos(ui_evidence_right, "evidence_right");
+ ui_evidence_right->set_image("arrow_right");
- set_size_and_pos(ui_evidence_image_button, "evidence_image_button");
+ set_size_and_pos(ui_evidence_present, "evidence_present");
+ ui_evidence_present->set_image("present");
- set_size_and_pos(ui_evidence_x, "evidence_x");
- ui_evidence_x->set_image("evidence_x");
+ set_size_and_pos(ui_evidence_overlay, "evidence_overlay");
+ if (current_evidence_global)
+ ui_evidence_overlay->set_image("evidence_overlay");
+ else
+ ui_evidence_overlay->set_image("evidence_overlay_private");
- set_size_and_pos(ui_evidence_ok, "evidence_ok");
- ui_evidence_ok->set_image("evidence_ok");
+ set_size_and_pos(ui_evidence_delete, "evidence_delete");
+ ui_evidence_delete->set_image("evidence_delete");
- set_size_and_pos(ui_evidence_switch, "evidence_switch");
- if (current_evidence_global)
- {
- ui_evidence_switch->set_image("evidence_global");
- ui_evidence_switch->setToolTip(tr("Switch evidence to private inventory."));
- }
- else
- {
- ui_evidence_switch->set_image("evidence_private");
- ui_evidence_switch->setToolTip(tr("Switch evidence to global inventory."));
- }
+ set_size_and_pos(ui_evidence_image_name, "evidence_image_name");
- set_size_and_pos(ui_evidence_transfer, "evidence_transfer");
- if (current_evidence_global)
- {
- ui_evidence_transfer->set_image("evidence_transfer");
- ui_evidence_transfer->setToolTip(tr("Transfer evidence to private inventory."));
- }
- else
- {
- ui_evidence_transfer->set_image("evidence_transfer_private");
- ui_evidence_transfer->setToolTip(tr("Transfer evidence to global inventory."));
- }
+ set_size_and_pos(ui_evidence_image_button, "evidence_image_button");
- set_size_and_pos(ui_evidence_save, "evidence_save");
- ui_evidence_save->set_image("evidence_save");
- if (current_evidence_global)
- ui_evidence_save->hide();
- else
- ui_evidence_save->show();
+ set_size_and_pos(ui_evidence_x, "evidence_x");
+ ui_evidence_x->set_image("evidence_x");
- set_size_and_pos(ui_evidence_load, "evidence_load");
- ui_evidence_load->set_image("evidence_load");
- if (current_evidence_global)
- ui_evidence_load->hide();
- else
- ui_evidence_load->show();
+ set_size_and_pos(ui_evidence_ok, "evidence_ok");
+ ui_evidence_ok->set_image("evidence_ok");
- set_size_and_pos(ui_evidence_description, "evidence_description");
+ set_size_and_pos(ui_evidence_switch, "evidence_switch");
+ if (current_evidence_global) {
+ ui_evidence_switch->set_image("evidence_global");
+ ui_evidence_switch->setToolTip(tr("Switch evidence to private inventory."));
+ }
+ else {
+ ui_evidence_switch->set_image("evidence_private");
+ ui_evidence_switch->setToolTip(tr("Switch evidence to global inventory."));
+ }
- QPoint f_spacing = ao_app->get_button_spacing("evidence_button_spacing", "courtroom_design.ini");
- QPoint p_point = ao_app->get_button_spacing("evidence_button_size", "courtroom_design.ini");
+ set_size_and_pos(ui_evidence_transfer, "evidence_transfer");
+ if (current_evidence_global) {
+ ui_evidence_transfer->set_image("evidence_transfer");
+ ui_evidence_transfer->setToolTip(tr("Transfer evidence to private inventory."));
+ }
+ else {
+ ui_evidence_transfer->set_image("evidence_transfer_private");
+ ui_evidence_transfer->setToolTip(tr("Transfer evidence to global inventory."));
+ }
- const int button_width = p_point.x();
- int x_spacing = f_spacing.x();
- int x_mod_count = 0;
+ set_size_and_pos(ui_evidence_save, "evidence_save");
+ ui_evidence_save->set_image("evidence_save");
+ if (current_evidence_global)
+ ui_evidence_save->hide();
+ else
+ ui_evidence_save->show();
- const int button_height = p_point.y();
- int y_spacing = f_spacing.y();
- int y_mod_count = 0;
+ set_size_and_pos(ui_evidence_load, "evidence_load");
+ ui_evidence_load->set_image("evidence_load");
+ if (current_evidence_global)
+ ui_evidence_load->hide();
+ else
+ ui_evidence_load->show();
- evidence_columns = ((ui_evidence_buttons->width() - button_width) / (x_spacing + button_width)) + 1;
- evidence_rows = ((ui_evidence_buttons->height() - button_height) / (y_spacing + button_height)) + 1;
+ set_size_and_pos(ui_evidence_description, "evidence_description");
- max_evidence_on_page = evidence_columns * evidence_rows;
+ QPoint f_spacing = ao_app->get_button_spacing("evidence_button_spacing", "courtroom_design.ini");
+ QPoint p_point = ao_app->get_button_spacing("evidence_button_size", "courtroom_design.ini");
- for (int n = 0 ; n < max_evidence_on_page ; ++n)
- {
- int x_pos = (button_width + x_spacing) * x_mod_count;
- int y_pos = (button_height + y_spacing) * y_mod_count;
+ const int button_width = p_point.x();
+ int x_spacing = f_spacing.x();
+ int x_mod_count = 0;
- AOEvidenceButton *f_evidence = new AOEvidenceButton(ui_evidence_buttons, ao_app, x_pos, y_pos, button_width, button_height);
+ const int button_height = p_point.y();
+ int y_spacing = f_spacing.y();
+ int y_mod_count = 0;
- ui_evidence_list.append(f_evidence);
+ evidence_columns = ((ui_evidence_buttons->width() - button_width) / (x_spacing + button_width)) + 1;
+ evidence_rows = ((ui_evidence_buttons->height() - button_height) / (y_spacing + button_height)) + 1;
- f_evidence->set_id(n);
+ max_evidence_on_page = evidence_columns * evidence_rows;
- connect(f_evidence, SIGNAL(evidence_clicked(int)), this, SLOT(on_evidence_clicked(int)));
- connect(f_evidence, SIGNAL(evidence_double_clicked(int)), this, SLOT(on_evidence_double_clicked(int)));
- connect(f_evidence, SIGNAL(on_hover(int, bool)), this, SLOT(on_evidence_hover(int, bool)));
+ for (int n = 0; n < max_evidence_on_page; ++n) {
+ int x_pos = (button_width + x_spacing) * x_mod_count;
+ int y_pos = (button_height + y_spacing) * y_mod_count;
- ++x_mod_count;
+ AOEvidenceButton *f_evidence = new AOEvidenceButton(ui_evidence_buttons, ao_app, x_pos, y_pos, button_width, button_height);
- if (x_mod_count == evidence_columns)
- {
- ++y_mod_count;
- x_mod_count = 0;
+ ui_evidence_list.append(f_evidence);
+
+ f_evidence->set_id(n);
+
+ connect(f_evidence, SIGNAL(evidence_clicked(int)), this, SLOT(on_evidence_clicked(int)));
+ connect(f_evidence, SIGNAL(evidence_double_clicked(int)), this, SLOT(on_evidence_double_clicked(int)));
+ connect(f_evidence, SIGNAL(on_hover(int, bool)), this, SLOT(on_evidence_hover(int, bool)));
+
+ ++x_mod_count;
+
+ if (x_mod_count == evidence_columns) {
+ ++y_mod_count;
+ x_mod_count = 0;
+ }
}
- }
}
void Courtroom::set_evidence_list(QVector<evi_type> &p_evi_list)
{
- global_evidence_list = p_evi_list;
- if (!current_evidence_global)
- return; //We're on private evidence editing, wait for user to do their thing
+ global_evidence_list = p_evi_list;
+ if (!current_evidence_global)
+ return; //We're on private evidence editing, wait for user to do their thing
- QVector<evi_type> old_list = local_evidence_list;
- local_evidence_list.clear();
- local_evidence_list = p_evi_list;
+ QVector<evi_type> old_list = local_evidence_list;
+ local_evidence_list.clear();
+ 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())
- {
- evidence_close();
- ui_evidence_name->setText("");
- }
- else if (ui_evidence_description->isReadOnly()) //We haven't double clicked to edit it or anything
- {
- on_evidence_double_clicked(current_evidence);
- }
- //Todo: make a function that compares two pieces of evidence for any differences
- else if (compare_evidence_changed(old_list.at(current_evidence), local_evidence_list.at(current_evidence)))
+ if (ui_evidence_overlay->isVisible()) //Update the currently edited evidence for this user
{
- QMessageBox *msgBox = new QMessageBox;
-
- msgBox->setText("The piece of evidence you've been editing has changed.");
- msgBox->setInformativeText("Do you wish to keep your changes?");
- msgBox->setDetailedText("Name: " + local_evidence_list.at(current_evidence).name + "\nImage: " + local_evidence_list.at(current_evidence).image + "\nDescription:\n" + local_evidence_list.at(current_evidence).description);
- msgBox->setStandardButtons(QMessageBox::Yes | QMessageBox::No);
- msgBox->setDefaultButton(QMessageBox::LastButton);
- //msgBox->setWindowModality(Qt::NonModal);
- int ret = msgBox->exec();
- switch (ret) {
- case QMessageBox::Yes:
- // "Keep changes"
- break;
- case QMessageBox::No:
- // "Discard changes and keep theirs"
+ if (current_evidence >= local_evidence_list.size()) {
+ evidence_close();
+ ui_evidence_name->setText("");
+ }
+ else if (ui_evidence_description->isReadOnly()) //We haven't double clicked to edit it or anything
+ {
on_evidence_double_clicked(current_evidence);
- break;
- default:
- // should never be reached
- break;
- }
+ }
+ //Todo: make a function that compares two pieces of evidence for any differences
+ else if (compare_evidence_changed(old_list.at(current_evidence), local_evidence_list.at(current_evidence))) {
+ QMessageBox *msgBox = new QMessageBox;
+
+ msgBox->setText("The piece of evidence you've been editing has changed.");
+ msgBox->setInformativeText("Do you wish to keep your changes?");
+ msgBox->setDetailedText("Name: " + local_evidence_list.at(current_evidence).name + "\nImage: " + local_evidence_list.at(current_evidence).image + "\nDescription:\n" + local_evidence_list.at(current_evidence).description);
+ msgBox->setStandardButtons(QMessageBox::Yes | QMessageBox::No);
+ msgBox->setDefaultButton(QMessageBox::LastButton);
+ //msgBox->setWindowModality(Qt::NonModal);
+ int ret = msgBox->exec();
+ switch (ret) {
+ case QMessageBox::Yes:
+ // "Keep changes"
+ break;
+ case QMessageBox::No:
+ // "Discard changes and keep theirs"
+ on_evidence_double_clicked(current_evidence);
+ break;
+ default:
+ // should never be reached
+ break;
+ }
+ }
}
- }
}
void Courtroom::set_evidence_page()
{
- int total_evidence = local_evidence_list.size();
+ int total_evidence = local_evidence_list.size();
- ui_evidence_left->hide();
- ui_evidence_right->hide();
+ ui_evidence_left->hide();
+ ui_evidence_right->hide();
- for (AOEvidenceButton *i_button : ui_evidence_list)
- {
- i_button->hide();
- }
+ for (AOEvidenceButton *i_button : ui_evidence_list) {
+ i_button->hide();
+ }
- //to account for the "add evidence" button
- ++total_evidence;
+ //to account for the "add evidence" button
+ ++total_evidence;
- int total_pages = total_evidence / max_evidence_on_page;
- int evidence_on_page = 0;
+ int total_pages = total_evidence / max_evidence_on_page;
+ int evidence_on_page = 0;
- if ((total_evidence % max_evidence_on_page) != 0)
- {
- ++total_pages;
- //i. e. not on the last page
- if (total_pages > current_evidence_page + 1)
- evidence_on_page = max_evidence_on_page;
+ if ((total_evidence % max_evidence_on_page) != 0) {
+ ++total_pages;
+ //i. e. not on the last page
+ if (total_pages > current_evidence_page + 1)
+ evidence_on_page = max_evidence_on_page;
+ else
+ evidence_on_page = total_evidence % max_evidence_on_page;
+ }
else
- evidence_on_page = total_evidence % max_evidence_on_page;
+ evidence_on_page = max_evidence_on_page;
- }
- else
- evidence_on_page = max_evidence_on_page;
+ if (total_pages > current_evidence_page + 1)
+ ui_evidence_right->show();
- if (total_pages > current_evidence_page + 1)
- ui_evidence_right->show();
+ if (current_evidence_page > 0)
+ ui_evidence_left->show();
- if (current_evidence_page > 0)
- ui_evidence_left->show();
+ for (int n_evidence_button = 0; n_evidence_button < evidence_on_page; ++n_evidence_button) {
+ int n_real_evidence = n_evidence_button + current_evidence_page * max_evidence_on_page;
+ AOEvidenceButton *f_evidence_button = ui_evidence_list.at(n_evidence_button);
- for (int n_evidence_button = 0 ; n_evidence_button < evidence_on_page ; ++n_evidence_button)
- {
- int n_real_evidence = n_evidence_button + current_evidence_page * max_evidence_on_page;
- AOEvidenceButton *f_evidence_button = ui_evidence_list.at(n_evidence_button);
+ f_evidence_button->set_selected(false);
+ f_evidence_button->setToolTip("");
+ if (n_real_evidence == (total_evidence - 1)) {
+ f_evidence_button->set_theme_image("addevidence.png");
+ }
+ else if (n_real_evidence < (total_evidence - 1)) {
+ f_evidence_button->set_image(local_evidence_list.at(n_real_evidence).image);
- f_evidence_button->set_selected(false);
- f_evidence_button->setToolTip("");
- if (n_real_evidence == (total_evidence - 1))
- {
- f_evidence_button->set_theme_image("addevidence.png");
- }
- else if (n_real_evidence < (total_evidence - 1))
- {
- f_evidence_button->set_image(local_evidence_list.at(n_real_evidence).image);
+ if (n_real_evidence == current_evidence)
+ f_evidence_button->set_selected(true);
- if (n_real_evidence == current_evidence)
- f_evidence_button->set_selected(true);
+ f_evidence_button->setToolTip(QString::number(n_real_evidence + 1) + ": " + local_evidence_list.at(n_real_evidence).name);
+ }
+ else
+ f_evidence_button->set_image("");
- f_evidence_button->setToolTip(QString::number(n_real_evidence+1) + ": " + local_evidence_list.at(n_real_evidence).name);
+ f_evidence_button->show();
}
- else
- f_evidence_button->set_image("");
-
- f_evidence_button->show();
- }
}
void Courtroom::on_evidence_name_edited()
{
- ui_evidence_name->setReadOnly(true);
- if (current_evidence >= local_evidence_list.size())
- return;
+ ui_evidence_name->setReadOnly(true);
+ if (current_evidence >= local_evidence_list.size())
+ return;
}
void Courtroom::on_evidence_name_double_clicked()
{
- if (ui_evidence_overlay->isVisible())
- {
- ui_evidence_name->setReadOnly(false);
- }
- else
- {
- ui_evidence_name->setReadOnly(true);
- }
+ if (ui_evidence_overlay->isVisible()) {
+ ui_evidence_name->setReadOnly(false);
+ }
+ else {
+ ui_evidence_name->setReadOnly(true);
+ }
}
void Courtroom::on_evidence_image_name_double_clicked()
{
- ui_evidence_image_name->setReadOnly(false);
+ ui_evidence_image_name->setReadOnly(false);
}
void Courtroom::on_evidence_image_name_edited()
{
- ui_evidence_image_name->setReadOnly(true);
- if (current_evidence >= local_evidence_list.size())
- return;
+ ui_evidence_image_name->setReadOnly(true);
+ if (current_evidence >= local_evidence_list.size())
+ return;
}
void Courtroom::on_evidence_image_button_clicked()
{
- QDir dir(ao_app->get_base_path() + "evidence");
- QFileDialog dialog(this);
- dialog.setFileMode(QFileDialog::ExistingFile);
- dialog.setNameFilter(tr("Images (*.png)"));
- dialog.setViewMode(QFileDialog::List);
- dialog.setDirectory(dir);
+ QDir dir(ao_app->get_base_path() + "evidence");
+ QFileDialog dialog(this);
+ dialog.setFileMode(QFileDialog::ExistingFile);
+ dialog.setNameFilter(tr("Images (*.png)"));
+ dialog.setViewMode(QFileDialog::List);
+ dialog.setDirectory(dir);
- QStringList filenames;
+ QStringList filenames;
- if (dialog.exec())
- filenames = dialog.selectedFiles();
+ if (dialog.exec())
+ filenames = dialog.selectedFiles();
- if (filenames.size() != 1)
- return;
+ if (filenames.size() != 1)
+ return;
- QString filename = filenames.at(0);
- filename = dir.relativeFilePath(filename);
- ui_evidence_image_name->setText(filename);
- on_evidence_image_name_edited();
+ QString filename = filenames.at(0);
+ filename = dir.relativeFilePath(filename);
+ ui_evidence_image_name->setText(filename);
+ on_evidence_image_name_edited();
}
void Courtroom::on_evidence_clicked(int p_id)
{
- ui_evidence_name->setReadOnly(true);
-
- int f_real_id = p_id + max_evidence_on_page * current_evidence_page;
+ ui_evidence_name->setReadOnly(true);
- if (f_real_id == local_evidence_list.size())
- {
- if (current_evidence_global)
- ao_app->send_server_packet(new AOPacket("PE#<name>#<description>#empty.png#%"));
- else
- {
- evi_type f_evi;
- f_evi.name = "<name>";
- f_evi.description = "<description>";
- f_evi.image = "empty.png";
-
- local_evidence_list.append(f_evi);
- private_evidence_list = local_evidence_list;
- set_evidence_page();
+ int f_real_id = p_id + max_evidence_on_page * current_evidence_page;
+
+ if (f_real_id == local_evidence_list.size()) {
+ if (current_evidence_global)
+ ao_app->send_server_packet(new AOPacket("PE#<name>#<description>#empty.png#%"));
+ else {
+ evi_type f_evi;
+ f_evi.name = "<name>";
+ f_evi.description = "<description>";
+ f_evi.image = "empty.png";
+
+ local_evidence_list.append(f_evi);
+ private_evidence_list = local_evidence_list;
+ set_evidence_page();
+ }
+ return;
}
- return;
- }
- else if (f_real_id > local_evidence_list.size())
- return;
+ else if (f_real_id > local_evidence_list.size())
+ return;
- ui_evidence_name->setText(local_evidence_list.at(f_real_id).name);
+ ui_evidence_name->setText(local_evidence_list.at(f_real_id).name);
- for (AOEvidenceButton *i_button : ui_evidence_list)
- i_button->set_selected(false);
+ for (AOEvidenceButton *i_button : ui_evidence_list)
+ i_button->set_selected(false);
- ui_evidence_list.at(p_id)->set_selected(true);
+ ui_evidence_list.at(p_id)->set_selected(true);
- current_evidence = f_real_id;
-
-// ui_ic_chat_message->setFocus();
+ current_evidence = f_real_id;
+ // ui_ic_chat_message->setFocus();
}
void Courtroom::on_evidence_double_clicked(int p_id)
{
- int f_real_id = p_id + max_evidence_on_page * current_evidence_page;
+ int f_real_id = p_id + max_evidence_on_page * current_evidence_page;
- if (f_real_id >= local_evidence_list.size())
- return;
+ if (f_real_id >= local_evidence_list.size())
+ return;
- current_evidence = f_real_id;
+ current_evidence = f_real_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();
- ui_evidence_description->appendPlainText(f_evi.description);
- ui_evidence_description->setReadOnly(true);
- ui_evidence_description->setToolTip("Double-click to edit...");
+ ui_evidence_description->clear();
+ ui_evidence_description->appendPlainText(f_evi.description);
+ ui_evidence_description->setReadOnly(true);
+ ui_evidence_description->setToolTip("Double-click to edit...");
- ui_evidence_name->setText(f_evi.name);
- ui_evidence_name->setReadOnly(true);
- ui_evidence_name->setToolTip("Double-click to edit...");
- ui_evidence_image_name->setText(f_evi.image);
- ui_evidence_image_name->setReadOnly(true);
- ui_evidence_image_name->setToolTip("Double-click to edit...");
+ ui_evidence_name->setText(f_evi.name);
+ ui_evidence_name->setReadOnly(true);
+ ui_evidence_name->setToolTip("Double-click to edit...");
+ ui_evidence_image_name->setText(f_evi.image);
+ ui_evidence_image_name->setReadOnly(true);
+ ui_evidence_image_name->setToolTip("Double-click to edit...");
- ui_evidence_overlay->show();
- ui_evidence_ok->hide();
+ ui_evidence_overlay->show();
+ ui_evidence_ok->hide();
- ui_ic_chat_message->setFocus();
+ ui_ic_chat_message->setFocus();
}
void Courtroom::on_evidence_hover(int p_id, bool p_state)
{
- ui_evidence_name->setReadOnly(true);
- int final_id = p_id + max_evidence_on_page * current_evidence_page;
-
- if (p_state)
- {
- if (final_id == local_evidence_list.size())
- ui_evidence_name->setText(tr("Add new evidence..."));
- else if (final_id < local_evidence_list.size())
- ui_evidence_name->setText(local_evidence_list.at(final_id).name);
- }
- else if (current_evidence < local_evidence_list.size())
- ui_evidence_name->setText(local_evidence_list.at(current_evidence).name);
- else
- ui_evidence_name->setText("");
+ ui_evidence_name->setReadOnly(true);
+ int final_id = p_id + max_evidence_on_page * current_evidence_page;
+
+ if (p_state) {
+ if (final_id == local_evidence_list.size())
+ ui_evidence_name->setText(tr("Add new evidence..."));
+ else if (final_id < local_evidence_list.size())
+ ui_evidence_name->setText(local_evidence_list.at(final_id).name);
+ }
+ else if (current_evidence < local_evidence_list.size())
+ ui_evidence_name->setText(local_evidence_list.at(current_evidence).name);
+ else
+ ui_evidence_name->setText("");
}
void Courtroom::on_evidence_left_clicked()
{
- --current_evidence_page;
+ --current_evidence_page;
- set_evidence_page();
+ set_evidence_page();
- ui_ic_chat_message->setFocus();
+ ui_ic_chat_message->setFocus();
}
void Courtroom::on_evidence_right_clicked()
{
- ++current_evidence_page;
+ ++current_evidence_page;
- set_evidence_page();
+ set_evidence_page();
- ui_ic_chat_message->setFocus();
+ ui_ic_chat_message->setFocus();
}
void Courtroom::on_evidence_present_clicked()
{
- if (!current_evidence_global)
- {
- ui_evidence_present->hide();
- is_presenting_evidence = false;
- return; //otherwise we get force-disconnected
- }
- if (is_presenting_evidence)
- ui_evidence_present->set_image("present");
- else
- ui_evidence_present->set_image("present_disabled");
+ if (!current_evidence_global) {
+ ui_evidence_present->hide();
+ is_presenting_evidence = false;
+ return; //otherwise we get force-disconnected
+ }
+ if (is_presenting_evidence)
+ ui_evidence_present->set_image("present");
+ else
+ ui_evidence_present->set_image("present_disabled");
- is_presenting_evidence = !is_presenting_evidence;
+ is_presenting_evidence = !is_presenting_evidence;
- ui_ic_chat_message->setFocus();
+ ui_ic_chat_message->setFocus();
}
void Courtroom::on_evidence_delete_clicked()
{
- evidence_close();
- if (current_evidence_global)
- ao_app->send_server_packet(new AOPacket("DE#" + QString::number(current_evidence) + "#%"));
- else
- {
- local_evidence_list.remove(current_evidence);
- private_evidence_list = local_evidence_list;
- set_evidence_page();
- }
+ evidence_close();
+ if (current_evidence_global)
+ ao_app->send_server_packet(new AOPacket("DE#" + QString::number(current_evidence) + "#%"));
+ else {
+ local_evidence_list.remove(current_evidence);
+ private_evidence_list = local_evidence_list;
+ set_evidence_page();
+ }
- current_evidence = 0;
+ current_evidence = 0;
- ui_ic_chat_message->setFocus();
+ ui_ic_chat_message->setFocus();
}
void Courtroom::on_evidence_x_clicked()
{
- if (current_evidence >= local_evidence_list.size()) //Should never happen but you never know.
- return;
-
- evi_type fake_evidence;
- fake_evidence.name = ui_evidence_name->text();
- fake_evidence.description = ui_evidence_description->toPlainText();
- fake_evidence.image = ui_evidence_image_name->text();
- if (!compare_evidence_changed(fake_evidence, local_evidence_list.at(current_evidence)))
- {
- evidence_close();
- return;
- }
- QMessageBox *msgBox = new QMessageBox;
- msgBox->setText("Evidence has been modified.");
- msgBox->setInformativeText("Do you want to save your changes?");
- msgBox->setStandardButtons(QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel);
- msgBox->setDefaultButton(QMessageBox::Save);
- int ret = msgBox->exec();
- switch (ret) {
+ if (current_evidence >= local_evidence_list.size()) //Should never happen but you never know.
+ return;
+
+ evi_type fake_evidence;
+ fake_evidence.name = ui_evidence_name->text();
+ fake_evidence.description = ui_evidence_description->toPlainText();
+ fake_evidence.image = ui_evidence_image_name->text();
+ if (!compare_evidence_changed(fake_evidence, local_evidence_list.at(current_evidence))) {
+ evidence_close();
+ return;
+ }
+ QMessageBox *msgBox = new QMessageBox;
+ msgBox->setText("Evidence has been modified.");
+ msgBox->setInformativeText("Do you want to save your changes?");
+ msgBox->setStandardButtons(QMessageBox::Save | QMessageBox::Discard | QMessageBox::Cancel);
+ msgBox->setDefaultButton(QMessageBox::Save);
+ int ret = msgBox->exec();
+ switch (ret) {
case QMessageBox::Save:
evidence_close();
on_evidence_ok_clicked();
@@ -542,200 +519,191 @@ void Courtroom::on_evidence_x_clicked()
default:
// should never be reached
break;
- }
+ }
}
void Courtroom::on_evidence_ok_clicked()
{
- ui_evidence_name->setReadOnly(true);
- ui_evidence_description->setReadOnly(true);
- ui_evidence_image_name->setReadOnly(true);
- if (current_evidence < local_evidence_list.size())
- {
- evi_type f_evi = local_evidence_list.at(current_evidence);
- if (current_evidence_global)
- {
- QStringList f_contents;
- f_contents.append(QString::number(current_evidence));
- f_contents.append(ui_evidence_name->text());
- f_contents.append(ui_evidence_description->toPlainText());
- f_contents.append(ui_evidence_image_name->text());
-
- ao_app->send_server_packet(new AOPacket("EE", f_contents));
- }
- else
- {
- f_evi.name = ui_evidence_name->text();
- f_evi.description = ui_evidence_description->toPlainText();
- f_evi.image = ui_evidence_image_name->text();
- local_evidence_list.replace(current_evidence, f_evi);
- private_evidence_list = local_evidence_list;
- ui_evidence_ok->hide();
- set_evidence_page();
+ ui_evidence_name->setReadOnly(true);
+ ui_evidence_description->setReadOnly(true);
+ ui_evidence_image_name->setReadOnly(true);
+ if (current_evidence < local_evidence_list.size()) {
+ evi_type f_evi = local_evidence_list.at(current_evidence);
+ if (current_evidence_global) {
+ QStringList f_contents;
+ f_contents.append(QString::number(current_evidence));
+ f_contents.append(ui_evidence_name->text());
+ f_contents.append(ui_evidence_description->toPlainText());
+ f_contents.append(ui_evidence_image_name->text());
+
+ ao_app->send_server_packet(new AOPacket("EE", f_contents));
+ }
+ else {
+ f_evi.name = ui_evidence_name->text();
+ f_evi.description = ui_evidence_description->toPlainText();
+ f_evi.image = ui_evidence_image_name->text();
+ local_evidence_list.replace(current_evidence, f_evi);
+ private_evidence_list = local_evidence_list;
+ ui_evidence_ok->hide();
+ set_evidence_page();
+ }
}
- }
}
void Courtroom::on_evidence_switch_clicked()
{
- evidence_close();
- evidence_switch(!current_evidence_global);
- if (current_evidence_global)
- {
- ui_evidence_switch->set_image("evidence_global");
- ui_evidence->set_image("evidence_background");
- ui_evidence_overlay->set_image("evidence_overlay");
- ui_evidence_transfer->set_image("evidence_transfer");
- ui_evidence_transfer->setToolTip(tr("Transfer evidence to private inventory."));
- ui_evidence_switch->setToolTip(tr("Current evidence is global. Click to switch to private."));
- }
- else
- {
- ui_evidence_switch->set_image("evidence_private");
- ui_evidence->set_image("evidence_background_private");
- ui_evidence_overlay->set_image("evidence_overlay_private");
- ui_evidence_transfer->set_image("evidence_transfer_private");
- ui_evidence_transfer->setToolTip(tr("Transfer evidence to global inventory."));
- ui_evidence_switch->setToolTip(tr("Current evidence is private. Click to switch to global."));
- }
+ evidence_close();
+ evidence_switch(!current_evidence_global);
+ if (current_evidence_global) {
+ ui_evidence_switch->set_image("evidence_global");
+ ui_evidence->set_image("evidence_background");
+ ui_evidence_overlay->set_image("evidence_overlay");
+ ui_evidence_transfer->set_image("evidence_transfer");
+ ui_evidence_transfer->setToolTip(tr("Transfer evidence to private inventory."));
+ ui_evidence_switch->setToolTip(tr("Current evidence is global. Click to switch to private."));
+ }
+ else {
+ ui_evidence_switch->set_image("evidence_private");
+ ui_evidence->set_image("evidence_background_private");
+ ui_evidence_overlay->set_image("evidence_overlay_private");
+ ui_evidence_transfer->set_image("evidence_transfer_private");
+ ui_evidence_transfer->setToolTip(tr("Transfer evidence to global inventory."));
+ ui_evidence_switch->setToolTip(tr("Current evidence is private. Click to switch to global."));
+ }
}
void Courtroom::on_evidence_transfer_clicked()
{
- if (current_evidence >= local_evidence_list.size())
- return;
-
- QString name;
- if (!current_evidence_global) //Transfer private evidence to global
- {
- evi_type f_evi = local_evidence_list.at(current_evidence);
-
- QStringList f_contents;
- f_contents.append(f_evi.name);
- f_contents.append(f_evi.description);
- f_contents.append(f_evi.image);
-
- name = f_evi.name;
- ao_app->send_server_packet(new AOPacket("PE", f_contents));
- }
- else //Transfer global evidence to private
- {
- evi_type f_evi = local_evidence_list.at(current_evidence);
- name = f_evi.name;
- private_evidence_list.append(f_evi);
- }
-
- QMessageBox *msgBox = new QMessageBox;
- msgBox->setText("\"" + name + "\" has been transferred.");
- msgBox->setStandardButtons(QMessageBox::Ok);
- msgBox->setDefaultButton(QMessageBox::Ok);
- msgBox->exec();
+ if (current_evidence >= local_evidence_list.size())
+ return;
+
+ QString name;
+ if (!current_evidence_global) //Transfer private evidence to global
+ {
+ evi_type f_evi = local_evidence_list.at(current_evidence);
+
+ QStringList f_contents;
+ f_contents.append(f_evi.name);
+ f_contents.append(f_evi.description);
+ f_contents.append(f_evi.image);
+
+ name = f_evi.name;
+ ao_app->send_server_packet(new AOPacket("PE", f_contents));
+ }
+ else //Transfer global evidence to private
+ {
+ evi_type f_evi = local_evidence_list.at(current_evidence);
+ name = f_evi.name;
+ private_evidence_list.append(f_evi);
+ }
+
+ QMessageBox *msgBox = new QMessageBox;
+ msgBox->setText("\"" + name + "\" has been transferred.");
+ msgBox->setStandardButtons(QMessageBox::Ok);
+ msgBox->setDefaultButton(QMessageBox::Ok);
+ msgBox->exec();
}
void Courtroom::on_evidence_edited()
{
- if (current_evidence >= local_evidence_list.size()) //Should never happen but you never know.
- return;
- evi_type fake_evidence;
- fake_evidence.name = ui_evidence_name->text();
- fake_evidence.description = ui_evidence_description->toPlainText();
- fake_evidence.image = ui_evidence_image_name->text();
- if (compare_evidence_changed(fake_evidence, local_evidence_list.at(current_evidence)))
- ui_evidence_ok->show();
- else
- ui_evidence_ok->hide();
+ if (current_evidence >= local_evidence_list.size()) //Should never happen but you never know.
+ return;
+ evi_type fake_evidence;
+ fake_evidence.name = ui_evidence_name->text();
+ fake_evidence.description = ui_evidence_description->toPlainText();
+ fake_evidence.image = ui_evidence_image_name->text();
+ if (compare_evidence_changed(fake_evidence, local_evidence_list.at(current_evidence)))
+ ui_evidence_ok->show();
+ else
+ ui_evidence_ok->hide();
}
void Courtroom::evidence_close()
{
- ui_evidence_description->setReadOnly(true);
- ui_evidence_description->setToolTip("");
- ui_evidence_name->setReadOnly(true);
- ui_evidence_name->setToolTip("");
- ui_evidence_image_name->setReadOnly(true);
- ui_evidence_image_name->setToolTip("");
- ui_evidence_overlay->hide();
- ui_ic_chat_message->setFocus();
+ ui_evidence_description->setReadOnly(true);
+ ui_evidence_description->setToolTip("");
+ ui_evidence_name->setReadOnly(true);
+ ui_evidence_name->setToolTip("");
+ ui_evidence_image_name->setReadOnly(true);
+ ui_evidence_image_name->setToolTip("");
+ ui_evidence_overlay->hide();
+ ui_ic_chat_message->setFocus();
}
void Courtroom::evidence_switch(bool global)
{
- current_evidence_global = global;
- is_presenting_evidence = false;
- ui_evidence_present->set_image("present");
- local_evidence_list.clear();
- if (current_evidence_global)
- {
- local_evidence_list = global_evidence_list;
- ui_evidence_present->show();
- ui_evidence_save->hide();
- ui_evidence_load->hide();
- }
- else
- {
- local_evidence_list = private_evidence_list;
- ui_evidence_present->hide();
- ui_evidence_save->show();
- ui_evidence_load->show();
- }
- set_evidence_page();
+ current_evidence_global = global;
+ is_presenting_evidence = false;
+ ui_evidence_present->set_image("present");
+ local_evidence_list.clear();
+ if (current_evidence_global) {
+ local_evidence_list = global_evidence_list;
+ ui_evidence_present->show();
+ ui_evidence_save->hide();
+ ui_evidence_load->hide();
+ }
+ else {
+ local_evidence_list = private_evidence_list;
+ ui_evidence_present->hide();
+ ui_evidence_save->show();
+ ui_evidence_load->show();
+ }
+ set_evidence_page();
}
void Courtroom::on_evidence_save_clicked()
{
- if (current_evidence_global)
- return; //Don't allow saving/loading operations when in global inventory mode for now
-
- QString p_path = QFileDialog::getSaveFileName(this, tr("Save Inventory"), "base/inventories/", tr("Ini Files (*.ini)"));
- if (p_path.isEmpty())
- return;
-
- evidence_close();
- ui_evidence_name->setText("");
-
- QSettings inventory(p_path, QSettings::IniFormat);
- inventory.clear();
- for(int i = 0; i < local_evidence_list.size(); i++)
- {
- inventory.beginGroup(QString::number(i));
- inventory.setValue("name",local_evidence_list[i].name);
- inventory.setValue("description",local_evidence_list[i].description);
- inventory.setValue("image",local_evidence_list[i].image);
- inventory.endGroup();
- }
- inventory.sync();
+ if (current_evidence_global)
+ return; //Don't allow saving/loading operations when in global inventory mode for now
+
+ QString p_path = QFileDialog::getSaveFileName(this, tr("Save Inventory"), "base/inventories/", tr("Ini Files (*.ini)"));
+ if (p_path.isEmpty())
+ return;
+
+ evidence_close();
+ ui_evidence_name->setText("");
+
+ QSettings inventory(p_path, QSettings::IniFormat);
+ inventory.clear();
+ for (int i = 0; i < local_evidence_list.size(); i++) {
+ inventory.beginGroup(QString::number(i));
+ inventory.setValue("name", local_evidence_list[i].name);
+ inventory.setValue("description", local_evidence_list[i].description);
+ inventory.setValue("image", local_evidence_list[i].image);
+ inventory.endGroup();
+ }
+ inventory.sync();
}
void Courtroom::on_evidence_load_clicked()
{
- if (current_evidence_global)
- return; //Don't allow saving/loading operations when in global inventory mode for now
-
- QString p_path = QFileDialog::getOpenFileName(this, tr("Open Inventory"), "base/inventories/", tr("Ini Files (*.ini)"));
- if (p_path.isEmpty())
- return;
-
- evidence_close();
- ui_evidence_name->setText("");
-
- QSettings inventory(p_path, QSettings::IniFormat);
- local_evidence_list.clear();
- foreach (QString evi, inventory.childGroups())
- {
- if (evi == "General")
- continue;
-
- evi_type f_evi;
- f_evi.name = inventory.value(evi + "/name", "UNKNOWN").value<QString>();
- f_evi.description = inventory.value(evi + "/description", "UNKNOWN").value<QString>();
- f_evi.image = inventory.value(evi + "/image", "UNKNOWN.png").value<QString>();
- local_evidence_list.append(f_evi);
- }
- private_evidence_list = local_evidence_list;
- set_evidence_page();
+ if (current_evidence_global)
+ return; //Don't allow saving/loading operations when in global inventory mode for now
+
+ QString p_path = QFileDialog::getOpenFileName(this, tr("Open Inventory"), "base/inventories/", tr("Ini Files (*.ini)"));
+ if (p_path.isEmpty())
+ return;
+
+ evidence_close();
+ ui_evidence_name->setText("");
+
+ QSettings inventory(p_path, QSettings::IniFormat);
+ local_evidence_list.clear();
+ foreach (QString evi, inventory.childGroups()) {
+ if (evi == "General")
+ continue;
+
+ evi_type f_evi;
+ f_evi.name = inventory.value(evi + "/name", "UNKNOWN").value<QString>();
+ f_evi.description = inventory.value(evi + "/description", "UNKNOWN").value<QString>();
+ f_evi.image = inventory.value(evi + "/image", "UNKNOWN.png").value<QString>();
+ local_evidence_list.append(f_evi);
+ }
+ private_evidence_list = local_evidence_list;
+ set_evidence_page();
}
bool Courtroom::compare_evidence_changed(evi_type evi_a, evi_type evi_b)
{
- return evi_a.name != evi_b.name || evi_a.image != evi_b.image || evi_a.description != evi_b.description;
+ return evi_a.name != evi_b.name || evi_a.image != evi_b.image || evi_a.description != evi_b.description;
}