loading characters now works with overlay
This commit is contained in:
parent
c262bb4974
commit
99aa327318
@ -100,3 +100,10 @@ void AOApplication::add_favorite_server(int p_server)
|
||||
|
||||
write_to_serverlist_txt(server_line);
|
||||
}
|
||||
|
||||
void AOApplication::loading_cancelled()
|
||||
{
|
||||
destruct_courtroom();
|
||||
|
||||
w_lobby->hide_loading_overlay();
|
||||
}
|
||||
|
@ -96,6 +96,9 @@ private:
|
||||
|
||||
QVector<server_type> server_list;
|
||||
QVector<server_type> favorite_list;
|
||||
|
||||
public slots:
|
||||
void loading_cancelled();
|
||||
};
|
||||
|
||||
#endif // AOAPPLICATION_H
|
||||
|
24
lobby.cpp
24
lobby.cpp
@ -29,7 +29,7 @@ Lobby::Lobby(AOApplication *p_ao_app) : QMainWindow()
|
||||
ui_chatname = new QLineEdit(this);
|
||||
ui_chatmessage = new QLineEdit(this);
|
||||
ui_loading_background = new AOImage(this, ao_app);
|
||||
ui_loading_label = new QLabel(ui_loading_background);
|
||||
ui_loading_text = new QTextEdit(ui_loading_background);
|
||||
ui_progress_bar = new QProgressBar(ui_loading_background);
|
||||
ui_cancel = new AOButton(ui_loading_background, ao_app);
|
||||
|
||||
@ -44,6 +44,7 @@ Lobby::Lobby(AOApplication *p_ao_app) : QMainWindow()
|
||||
connect(ui_about, SIGNAL(clicked()), this, SLOT(on_about_clicked()));
|
||||
connect(ui_server_list, SIGNAL(clicked(QModelIndex)), this, SLOT(on_server_list_clicked(QModelIndex)));
|
||||
connect(ui_chatmessage, SIGNAL(returnPressed()), this, SLOT(on_chatfield_return_pressed()));
|
||||
connect(ui_cancel, SIGNAL(clicked()), ao_app, SLOT(loading_cancelled()));
|
||||
|
||||
set_widgets();
|
||||
}
|
||||
@ -104,17 +105,19 @@ void Lobby::set_widgets()
|
||||
ui_loading_background->set_image("loadingbackground.png");
|
||||
ui_loading_background->resize(m_lobby_width, m_lobby_height);
|
||||
|
||||
set_size_and_pos(ui_loading_label, "loading_label");
|
||||
ui_loading_label->setFont(QFont("Arial", 20, QFont::Bold));
|
||||
ui_loading_label->setStyleSheet("color: rgba(255, 128, 0, 255);"
|
||||
"qproperty-alignment: AlignCenter;");
|
||||
ui_loading_label->setText("Loading");
|
||||
set_size_and_pos(ui_loading_text, "loading_label");
|
||||
ui_loading_text->setFont(QFont("Arial", 20, QFont::Bold));
|
||||
ui_loading_text->setReadOnly(true);
|
||||
ui_loading_text->setAlignment(Qt::AlignCenter);
|
||||
ui_loading_text->setStyleSheet("background-color: rgba(0, 0, 0, 0);"
|
||||
"color: rgba(255, 128, 0, 255);");
|
||||
ui_loading_text->append("Loading");
|
||||
|
||||
set_size_and_pos(ui_progress_bar, "progress_bar");
|
||||
set_size_and_pos(ui_cancel, "cancel");
|
||||
ui_cancel->setText("Cancel");
|
||||
|
||||
//ui_loading_background->hide();
|
||||
ui_loading_background->hide();
|
||||
|
||||
}
|
||||
|
||||
@ -142,6 +145,13 @@ void Lobby::set_size_and_pos(QWidget *p_widget, QString p_identifier)
|
||||
p_widget->resize(design_ini_result.width, design_ini_result.height);
|
||||
}
|
||||
|
||||
void Lobby::set_loading_text(QString p_text)
|
||||
{
|
||||
ui_loading_text->clear();
|
||||
ui_loading_text->setAlignment(Qt::AlignCenter);
|
||||
ui_loading_text->append(p_text);
|
||||
}
|
||||
|
||||
void Lobby::on_public_servers_clicked()
|
||||
{
|
||||
ui_public_servers->set_image("publicservers_selected.png");
|
||||
|
5
lobby.h
5
lobby.h
@ -26,6 +26,9 @@ public:
|
||||
void list_favorites();
|
||||
void append_chatmessage(QString p_message_line);
|
||||
void set_player_count(int players_online, int max_players);
|
||||
void set_loading_text(QString p_text);
|
||||
void show_loading_overlay(){ui_loading_background->show();}
|
||||
void hide_loading_overlay(){ui_loading_background->hide();}
|
||||
|
||||
~Lobby();
|
||||
|
||||
@ -59,7 +62,7 @@ private:
|
||||
QLineEdit *ui_chatmessage;
|
||||
|
||||
AOImage *ui_loading_background;
|
||||
QLabel *ui_loading_label;
|
||||
QTextEdit *ui_loading_text;
|
||||
QProgressBar *ui_progress_bar;
|
||||
AOButton *ui_cancel;
|
||||
|
||||
|
@ -141,6 +141,9 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
|
||||
|
||||
construct_courtroom();
|
||||
|
||||
w_lobby->show_loading_overlay();
|
||||
w_lobby->set_loading_text("Loading");
|
||||
|
||||
AOPacket *f_packet = new AOPacket("askchar2#%");
|
||||
send_server_packet(f_packet);
|
||||
}
|
||||
@ -166,12 +169,10 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
|
||||
f_char.description = sub_elements.at(1);
|
||||
|
||||
++loaded_chars;
|
||||
qDebug() << "loaded_chars" << loaded_chars;
|
||||
|
||||
w_lobby->set_loading_text("Loading chars:\n" + QString::number(loaded_chars) + "/" + QString::number(char_list_size));
|
||||
|
||||
w_courtroom->append_char(f_char);
|
||||
|
||||
|
||||
qDebug() << f_contents.at(n_element + 1);
|
||||
}
|
||||
|
||||
if (loaded_chars < char_list_size)
|
||||
|
Loading…
Reference in New Issue
Block a user