added functionality to loading bar

This commit is contained in:
David Skoland 2017-02-13 11:11:52 +01:00
parent f1fdb1c1dc
commit 7eb07749c5
4 changed files with 22 additions and 3 deletions

View File

@ -21,11 +21,8 @@ void Courtroom::construct_emotes()
max_emotes_on_page = emote_columns * emote_rows; max_emotes_on_page = emote_columns * emote_rows;
qDebug() << "max_emotes_on_page: " << QString::number(max_emotes_on_page);
for (int n = 0 ; n < max_emotes_on_page ; ++n) for (int n = 0 ; n < max_emotes_on_page ; ++n)
{ {
qDebug() << "constructed " << QString::number(n) << "th emote button";
int x_pos = base_x_pos + (x_modifier * x_mod_count); int x_pos = base_x_pos + (x_modifier * x_mod_count);
int y_pos = base_y_pos + (y_modifier * y_mod_count); int y_pos = base_y_pos + (y_modifier * y_mod_count);

View File

@ -32,6 +32,8 @@ Lobby::Lobby(AOApplication *p_ao_app) : QMainWindow()
ui_loading_background = new AOImage(this, ao_app); ui_loading_background = new AOImage(this, ao_app);
ui_loading_text = new QTextEdit(ui_loading_background); ui_loading_text = new QTextEdit(ui_loading_background);
ui_progress_bar = new QProgressBar(ui_loading_background); ui_progress_bar = new QProgressBar(ui_loading_background);
ui_progress_bar->setMinimum(0);
ui_progress_bar->setMaximum(100);
ui_cancel = new AOButton(ui_loading_background, ao_app); ui_cancel = new AOButton(ui_loading_background, ao_app);
connect(ui_public_servers, SIGNAL(clicked()), this, SLOT(on_public_servers_clicked())); connect(ui_public_servers, SIGNAL(clicked()), this, SLOT(on_public_servers_clicked()));
@ -162,6 +164,11 @@ int Lobby::get_selected_server()
return ui_server_list->currentRow(); return ui_server_list->currentRow();
} }
void Lobby::set_loading_value(int p_value)
{
ui_progress_bar->setValue(p_value);
}
void Lobby::on_public_servers_clicked() void Lobby::on_public_servers_clicked()
{ {
ui_public_servers->set_image("publicservers_selected.png"); ui_public_servers->set_image("publicservers_selected.png");

View File

@ -32,6 +32,8 @@ public:
QString get_chatlog(); QString get_chatlog();
int get_selected_server(); int get_selected_server();
void set_loading_value(int p_value);
bool public_servers_selected = true; bool public_servers_selected = true;
~Lobby(); ~Lobby();

View File

@ -168,6 +168,7 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
w_lobby->show_loading_overlay(); w_lobby->show_loading_overlay();
w_lobby->set_loading_text("Loading"); w_lobby->set_loading_text("Loading");
w_lobby->set_loading_value(0);
AOPacket *f_packet = new AOPacket("askchar2#%"); AOPacket *f_packet = new AOPacket("askchar2#%");
send_server_packet(f_packet); send_server_packet(f_packet);
@ -203,6 +204,10 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
w_courtroom->append_char(f_char); w_courtroom->append_char(f_char);
} }
int total_loading_size = char_list_size + evidence_list_size + music_list_size;
int loading_value = (loaded_chars / static_cast<double>(total_loading_size)) * 100;
w_lobby->set_loading_value(loading_value);
QString next_packet_number = QString::number(((loaded_chars - 1) / 10) + 1); QString next_packet_number = QString::number(((loaded_chars - 1) / 10) + 1);
send_server_packet(new AOPacket("AN#" + next_packet_number + "#%")); send_server_packet(new AOPacket("AN#" + next_packet_number + "#%"));
@ -236,6 +241,10 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
w_courtroom->append_evidence(f_evi); w_courtroom->append_evidence(f_evi);
int total_loading_size = char_list_size + evidence_list_size + music_list_size;
int loading_value = ((loaded_chars + loaded_evidence) / static_cast<double>(total_loading_size)) * 100;
w_lobby->set_loading_value(loading_value);
QString next_packet_number = QString::number(loaded_evidence); QString next_packet_number = QString::number(loaded_evidence);
send_server_packet(new AOPacket("AE#" + next_packet_number + "#%")); send_server_packet(new AOPacket("AE#" + next_packet_number + "#%"));
@ -262,6 +271,10 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
w_courtroom->append_music(f_music); w_courtroom->append_music(f_music);
} }
int total_loading_size = char_list_size + evidence_list_size + music_list_size;
int loading_value = ((loaded_chars + loaded_evidence + loaded_music) / static_cast<double>(total_loading_size)) * 100;
w_lobby->set_loading_value(loading_value);
QString next_packet_number = QString::number(((loaded_music - 1) / 10) + 1); QString next_packet_number = QString::number(((loaded_music - 1) / 10) + 1);
send_server_packet(new AOPacket("AM#" + next_packet_number + "#%")); send_server_packet(new AOPacket("AM#" + next_packet_number + "#%"));
} }