tweaking program flow to prevent crash on closing

This commit is contained in:
David Skoland 2017-01-17 14:02:30 +01:00
parent e468bc53b7
commit d842caafe4
7 changed files with 17 additions and 106 deletions

View File

@ -13,7 +13,8 @@ AOApplication::AOApplication(int &argc, char **argv) : QApplication(argc, argv)
AOApplication::~AOApplication() AOApplication::~AOApplication()
{ {
destruct_lobby();
destruct_courtroom();
} }
void AOApplication::construct_lobby() void AOApplication::construct_lobby()

View File

@ -1,10 +1,10 @@
#include <QDebug> #include "aobutton.h"
#include "debug_functions.h" #include "debug_functions.h"
#include "path_functions.h" #include "path_functions.h"
#include "file_functions.h" #include "file_functions.h"
#include "aobutton.h" #include <QDebug>
AOButton::AOButton(QWidget *parent) : QPushButton(parent) AOButton::AOButton(QWidget *parent) : QPushButton(parent)
{ {

View File

@ -2,6 +2,8 @@
#include "aoapplication.h" #include "aoapplication.h"
#include <QDebug>
Courtroom::Courtroom(AOApplication *parent) : QMainWindow() Courtroom::Courtroom(AOApplication *parent) : QMainWindow()
{ {
ao_app = parent; ao_app = parent;
@ -117,8 +119,9 @@ void Courtroom::set_widgets()
ui_mute_list->resize(231, 159); ui_mute_list->resize(231, 159);
ui_area_list->move(266, 494); ui_area_list->move(266, 494);
ui_area_list->resize(); //ui_area_list->resize();
/*
QListWidget *ui_music_list; QListWidget *ui_music_list;
QLineEdit *ui_ic_chat_message; QLineEdit *ui_ic_chat_message;
@ -145,7 +148,8 @@ void Courtroom::set_widgets()
AOButton *ui_objection; AOButton *ui_objection;
AOButton *ui_take_that; AOButton *ui_take_that;
AOButton *ui_ooc_toggle; ui_ooc_toggle->move(100,100);
AOButton *ui_witness_testimony; AOButton *ui_witness_testimony;
AOButton *ui_cross_examination; AOButton *ui_cross_examination;
@ -156,7 +160,7 @@ void Courtroom::set_widgets()
QCheckBox *ui_pre; QCheckBox *ui_pre;
QCheckBox *ui_flip; QCheckBox *ui_flip;
QCheckBox *ui_guard; QCheckBox *ui_guard;
\
AOButton *ui_custom_objection; AOButton *ui_custom_objection;
AOButton *ui_realization; AOButton *ui_realization;
AOButton *ui_mute; AOButton *ui_mute;
@ -187,87 +191,10 @@ void Courtroom::set_widgets()
QLineEdit *ui_char_password; QLineEdit *ui_char_password;
AOButton *ui_spectator; AOButton *ui_spectator;
*/
} }
Courtroom::~Courtroom() Courtroom::~Courtroom()
{ {
delete ui_background;
//T0D0: deallocate viewport elements like background, desk, etc.
delete ui_ic_chatlog;
delete ui_server_chatlog;
delete ui_ms_chatlog;
delete ui_mute_list;
delete ui_area_list;
delete ui_music_list;
delete ui_ic_chat_message;
delete ui_ooc_chat_message;
delete ui_ooc_chat_name;
delete ui_area_password;
delete ui_music_search;
//T0D0: deallocate emote buttons
delete ui_emote_left;
delete ui_emote_right;
delete ui_defense_bar;
delete ui_prosecution_bar;
delete ui_music_label;
delete ui_sfx_label;
delete ui_blip_label;
delete ui_hold_it;
delete ui_objection;
delete ui_take_that;
delete ui_ooc_toggle;
delete ui_witness_testimony;
delete ui_cross_examination;
delete ui_change_character;
delete ui_reload_theme;
delete ui_call_mod;
delete ui_pre;
delete ui_flip;
delete ui_guard;
\
delete ui_custom_objection;
delete ui_realization;
delete ui_mute;
delete ui_defense_plus;
delete ui_defense_minus;
delete ui_prosecution_plus;
delete ui_prosecution_minus;
delete ui_text_color;
delete ui_music_slider;
delete ui_sfx_slider;
delete ui_blip_slider;
delete ui_muted;
delete ui_char_select_background;
//T0D0: deallocate char buttons
//QVector<AOCharButton*> ui_char_button_list;
delete ui_selector;
delete ui_back_to_lobby;
delete ui_char_password;
delete ui_spectator;
} }

View File

@ -14,6 +14,7 @@
#include <QComboBox> #include <QComboBox>
#include <QSlider> #include <QSlider>
#include <QVector> #include <QVector>
#include <QCloseEvent>
class AOApplication; class AOApplication;

View File

@ -279,17 +279,5 @@ void Lobby::set_player_count(int players_online, int max_players)
Lobby::~Lobby() Lobby::~Lobby()
{ {
delete ui_background;
delete ui_public_servers;
delete ui_favorites;
delete ui_refresh;
delete ui_add_to_fav;
delete ui_connect;
delete ui_about;
delete ui_server_list;
delete ui_player_count;
delete ui_description;
delete ui_chatbox;
delete ui_chatname;
delete ui_chatmessage;
} }

View File

@ -17,10 +17,5 @@ int main(int argc, char *argv[])
main_app.send_ms_packet(f_packet); main_app.send_ms_packet(f_packet);
main_app.w_lobby->show(); main_app.w_lobby->show();
//debug start
Courtroom w_courtroom;
w_courtroom.show();
//debug end
return main_app.exec(); return main_app.exec();
} }

View File

@ -9,8 +9,8 @@ NetworkManager::NetworkManager(AOApplication *parent) : QObject(parent)
{ {
ao_app = parent; ao_app = parent;
ms_socket = new QTcpSocket(); ms_socket = new QTcpSocket(this);
server_socket = new QTcpSocket(); server_socket = new QTcpSocket(this);
QObject::connect(ms_socket, SIGNAL(readyRead()), this, SLOT(handle_ms_packet())); QObject::connect(ms_socket, SIGNAL(readyRead()), this, SLOT(handle_ms_packet()));
QObject::connect(server_socket, SIGNAL(readyRead()), this, SLOT(handle_server_packet())); QObject::connect(server_socket, SIGNAL(readyRead()), this, SLOT(handle_server_packet()));
@ -18,8 +18,7 @@ NetworkManager::NetworkManager(AOApplication *parent) : QObject(parent)
NetworkManager::~NetworkManager() NetworkManager::~NetworkManager()
{ {
delete ms_socket;
delete server_socket;
} }
void NetworkManager::connect_to_master() void NetworkManager::connect_to_master()