Clean up style of merged in code

This commit is contained in:
oldmud0 2018-11-10 23:08:43 -06:00
parent c7a58f89b1
commit 56ec03a23a
12 changed files with 432 additions and 440 deletions

View File

@ -97,14 +97,6 @@ QString AOApplication::get_version_string()
QString::number(MINOR_VERSION);
}
QString AOApplication::get_cccc_version_string()
{
return
QString::number(CCCC_RELEASE) + "." +
QString::number(CCCC_MAJOR_VERSION) + "." +
QString::number(CCCC_MINOR_VERSION);
}
void AOApplication::reload_theme()
{
current_theme = read_theme();
@ -165,8 +157,9 @@ void AOApplication::ms_connect_finished(bool connected, bool will_retry)
{
if (will_retry)
{
w_lobby->append_error("Error connecting to master server. Will try again in "
+ QString::number(net_manager->ms_reconnect_delay_ms / 1000.f) + " seconds.");
if (w_lobby != nullptr)
w_lobby->append_error("Error connecting to master server. Will try again in "
+ QString::number(net_manager->ms_reconnect_delay_ms / 1000.f) + " seconds.");
}
else
{
@ -181,15 +174,12 @@ void AOApplication::ms_connect_finished(bool connected, bool will_retry)
void AOApplication::call_settings_menu()
{
AOOptionsDialog* settings = new AOOptionsDialog(nullptr, this);
settings->exec();
delete settings;
AOOptionsDialog settings(nullptr, this);
settings.exec();
}
void AOApplication::call_announce_menu(Courtroom *court)
{
AOCaseAnnouncerDialog* announcer = new AOCaseAnnouncerDialog(nullptr, this, court);
announcer->exec();
delete announcer;
AOCaseAnnouncerDialog announcer(nullptr, this, court);
announcer.exec();
}

View File

@ -94,16 +94,11 @@ public:
//////////////////versioning///////////////
int get_release() {return RELEASE;}
int get_major_version() {return MAJOR_VERSION;}
int get_minor_version() {return MINOR_VERSION;}
constexpr int get_release() const { return RELEASE; }
constexpr int get_major_version() const { return MAJOR_VERSION; }
constexpr int get_minor_version() const { return MINOR_VERSION; }
QString get_version_string();
int get_cccc_release() {return CCCC_RELEASE;}
int get_cccc_major_version() {return CCCC_MAJOR_VERSION;}
int get_cccc_minor_version() {return CCCC_MINOR_VERSION;}
QString get_cccc_version_string();
///////////////////////////////////////////
void set_favorite_list();
@ -138,11 +133,6 @@ public:
// Instead of reinventing the wheel, we'll use a QSettings class.
QSettings *configini;
//Returns the config value for the passed searchline from a properly formatted config ini file
//QString read_config(QString searchline);
// No longer necessary.
//Reads the theme from config.ini and loads it into the current_theme variable
QString read_theme();
@ -302,12 +292,8 @@ public:
private:
const int RELEASE = 2;
const int MAJOR_VERSION = 4;
const int MINOR_VERSION = 10;
const int CCCC_RELEASE = 1;
const int CCCC_MAJOR_VERSION = 4;
const int CCCC_MINOR_VERSION = 1;
const int MAJOR_VERSION = 6;
const int MINOR_VERSION = 0;
QString current_theme = "default";

View File

@ -1,76 +1,77 @@
#include "aocaseannouncerdialog.h"
AOCaseAnnouncerDialog::AOCaseAnnouncerDialog(QWidget *parent, AOApplication *p_ao_app, Courtroom *p_court)
: QDialog(parent)
{
ao_app = p_ao_app;
court = p_court;
setWindowTitle("Case Announcer");
setWindowTitle(tr("Case Announcer"));
resize(405, 235);
AnnouncerButtons = new QDialogButtonBox(this);
ui_announcer_buttons = new QDialogButtonBox(this);
QSizePolicy sizepolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
sizepolicy.setHorizontalStretch(0);
sizepolicy.setVerticalStretch(0);
sizepolicy.setHeightForWidth(AnnouncerButtons->sizePolicy().hasHeightForWidth());
AnnouncerButtons->setSizePolicy(sizepolicy);
AnnouncerButtons->setOrientation(Qt::Horizontal);
AnnouncerButtons->setStandardButtons(QDialogButtonBox::Ok|QDialogButtonBox::Cancel);
sizepolicy.setHeightForWidth(ui_announcer_buttons->sizePolicy().hasHeightForWidth());
ui_announcer_buttons->setSizePolicy(sizepolicy);
ui_announcer_buttons->setOrientation(Qt::Horizontal);
ui_announcer_buttons->setStandardButtons(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
QObject::connect(AnnouncerButtons, SIGNAL(accepted()), this, SLOT(ok_pressed()));
QObject::connect(AnnouncerButtons, SIGNAL(rejected()), this, SLOT(cancel_pressed()));
QObject::connect(ui_announcer_buttons, SIGNAL(accepted()), this, SLOT(on_ok_pressed()));
QObject::connect(ui_announcer_buttons, SIGNAL(rejected()), this, SLOT(cancel_pressed()));
setUpdatesEnabled(false);
VBoxLayout = new QVBoxLayout(this);
ui_vbox_layout = new QVBoxLayout(this);
FormLayout = new QFormLayout(this);
FormLayout->setLabelAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
FormLayout->setFormAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop);
FormLayout->setContentsMargins(6, 6, 6, 6);
ui_form_layout = new QFormLayout(this);
ui_form_layout->setLabelAlignment(Qt::AlignLeading | Qt::AlignLeft | Qt::AlignVCenter);
ui_form_layout->setFormAlignment(Qt::AlignLeading | Qt::AlignLeft | Qt::AlignTop);
ui_form_layout->setContentsMargins(6, 6, 6, 6);
VBoxLayout->addItem(FormLayout);
VBoxLayout->addWidget(AnnouncerButtons);
ui_vbox_layout->addItem(ui_form_layout);
ui_vbox_layout->addWidget(ui_announcer_buttons);
CaseTitleLabel = new QLabel(this);
CaseTitleLabel->setText("Case title:");
ui_case_title_label = new QLabel(this);
ui_case_title_label->setText(tr("Case title:"));
FormLayout->setWidget(0, QFormLayout::LabelRole, CaseTitleLabel);
ui_form_layout->setWidget(0, QFormLayout::LabelRole, ui_case_title_label);
CaseTitleLineEdit = new QLineEdit(this);
CaseTitleLineEdit->setMaxLength(50);
ui_case_title_textbox = new QLineEdit(this);
ui_case_title_textbox->setMaxLength(50);
FormLayout->setWidget(0, QFormLayout::FieldRole, CaseTitleLineEdit);
ui_form_layout->setWidget(0, QFormLayout::FieldRole, ui_case_title_textbox);
DefenceNeeded = new QCheckBox(this);
DefenceNeeded->setText("Defence needed");
ProsecutorNeeded = new QCheckBox(this);
ProsecutorNeeded->setText("Prosecution needed");
JudgeNeeded = new QCheckBox(this);
JudgeNeeded->setText("Judge needed");
JurorNeeded = new QCheckBox(this);
JurorNeeded->setText("Jurors needed");
StenographerNeeded = new QCheckBox(this);
StenographerNeeded->setText("Stenographer needed");
ui_defense_needed = new QCheckBox(this);
ui_defense_needed->setText(tr("Defense needed"));
ui_prosecutor_needed = new QCheckBox(this);
ui_prosecutor_needed->setText(tr("Prosecution needed"));
ui_judge_needed = new QCheckBox(this);
ui_judge_needed->setText(tr("Judge needed"));
ui_juror_needed = new QCheckBox(this);
ui_juror_needed->setText(tr("Jurors needed"));
ui_steno_needed = new QCheckBox(this);
ui_steno_needed->setText(tr("Stenographer needed"));
FormLayout->setWidget(1, QFormLayout::FieldRole, DefenceNeeded);
FormLayout->setWidget(2, QFormLayout::FieldRole, ProsecutorNeeded);
FormLayout->setWidget(3, QFormLayout::FieldRole, JudgeNeeded);
FormLayout->setWidget(4, QFormLayout::FieldRole, JurorNeeded);
FormLayout->setWidget(5, QFormLayout::FieldRole, StenographerNeeded);
ui_form_layout->setWidget(1, QFormLayout::FieldRole, ui_defense_needed);
ui_form_layout->setWidget(2, QFormLayout::FieldRole, ui_prosecutor_needed);
ui_form_layout->setWidget(3, QFormLayout::FieldRole, ui_judge_needed);
ui_form_layout->setWidget(4, QFormLayout::FieldRole, ui_juror_needed);
ui_form_layout->setWidget(5, QFormLayout::FieldRole, ui_steno_needed);
setUpdatesEnabled(true);
}
void AOCaseAnnouncerDialog::ok_pressed()
{
court->announce_case(CaseTitleLineEdit->text(),
DefenceNeeded->isChecked(),
ProsecutorNeeded->isChecked(),
JudgeNeeded->isChecked(),
JurorNeeded->isChecked(),
StenographerNeeded->isChecked());
court->announce_case(ui_case_title_textbox->text(),
ui_defense_needed->isChecked(),
ui_prosecutor_needed->isChecked(),
ui_judge_needed->isChecked(),
ui_juror_needed->isChecked(),
ui_steno_needed->isChecked());
done(0);
}

View File

@ -23,19 +23,19 @@ private:
AOApplication *ao_app;
Courtroom *court;
QDialogButtonBox *AnnouncerButtons;
QDialogButtonBox *ui_announcer_buttons;
QVBoxLayout *VBoxLayout;
QFormLayout *FormLayout;
QVBoxLayout *ui_vbox_layout;
QFormLayout *ui_form_layout;
QLabel *CaseTitleLabel;
QLineEdit *CaseTitleLineEdit;
QLabel *ui_case_title_label;
QLineEdit *ui_case_title_textbox;
QCheckBox *DefenceNeeded;
QCheckBox *ProsecutorNeeded;
QCheckBox *JudgeNeeded;
QCheckBox *JurorNeeded;
QCheckBox *StenographerNeeded;
QCheckBox *ui_defense_needed;
QCheckBox *ui_prosecutor_needed;
QCheckBox *ui_judge_needed;
QCheckBox *ui_juror_needed;
QCheckBox *ui_steno_needed;
public slots:
void ok_pressed();

View File

@ -8,51 +8,54 @@ AOOptionsDialog::AOOptionsDialog(QWidget *parent, AOApplication *p_ao_app) : QDi
// Setting up the basics.
// setAttribute(Qt::WA_DeleteOnClose);
setWindowTitle("Settings");
setWindowTitle(tr("Settings"));
resize(398, 320);
SettingsButtons = new QDialogButtonBox(this);
ui_settings_buttons = new QDialogButtonBox(this);
QSizePolicy sizePolicy1(QSizePolicy::Expanding, QSizePolicy::Fixed);
sizePolicy1.setHorizontalStretch(0);
sizePolicy1.setVerticalStretch(0);
sizePolicy1.setHeightForWidth(SettingsButtons->sizePolicy().hasHeightForWidth());
SettingsButtons->setSizePolicy(sizePolicy1);
SettingsButtons->setOrientation(Qt::Horizontal);
SettingsButtons->setStandardButtons(QDialogButtonBox::Cancel|QDialogButtonBox::Save);
sizePolicy1.setHeightForWidth(ui_settings_buttons->sizePolicy().hasHeightForWidth());
ui_settings_buttons->setSizePolicy(sizePolicy1);
ui_settings_buttons->setOrientation(Qt::Horizontal);
ui_settings_buttons->setStandardButtons(QDialogButtonBox::Cancel | QDialogButtonBox::Save);
QObject::connect(SettingsButtons, SIGNAL(accepted()), this, SLOT(save_pressed()));
QObject::connect(SettingsButtons, SIGNAL(rejected()), this, SLOT(discard_pressed()));
QObject::connect(ui_settings_buttons, SIGNAL(accepted()), this, SLOT(save_pressed()));
QObject::connect(ui_settings_buttons, SIGNAL(rejected()), this, SLOT(discard_pressed()));
// We'll stop updates so that the window won't flicker while it's being made.
setUpdatesEnabled(false);
// First of all, we want a tabbed dialog, so let's add some layout.
verticalLayout = new QVBoxLayout(this);
SettingsTabs = new QTabWidget(this);
ui_vertical_layout = new QVBoxLayout(this);
ui_settings_tabs = new QTabWidget(this);
verticalLayout->addWidget(SettingsTabs);
verticalLayout->addWidget(SettingsButtons);
ui_vertical_layout->addWidget(ui_settings_tabs);
ui_vertical_layout->addWidget(ui_settings_buttons);
// Let's add the tabs one by one.
// First, we'll start with 'Gameplay'.
GameplayTab = new QWidget();
SettingsTabs->addTab(GameplayTab, "Gameplay");
ui_gameplay_tab = new QWidget();
ui_settings_tabs->addTab(ui_gameplay_tab, tr("Gameplay"));
formLayoutWidget = new QWidget(GameplayTab);
formLayoutWidget->setGeometry(QRect(10, 10, 361, 211));
ui_form_layout_widget = new QWidget(ui_gameplay_tab);
ui_form_layout_widget->setGeometry(QRect(10, 10, 361, 211));
GameplayForm = new QFormLayout(formLayoutWidget);
GameplayForm->setLabelAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
GameplayForm->setFormAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop);
GameplayForm->setContentsMargins(0, 0, 0, 0);
ui_gameplay_form = new QFormLayout(ui_form_layout_widget);
ui_gameplay_form->setLabelAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
ui_gameplay_form->setFormAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop);
ui_gameplay_form->setContentsMargins(0, 0, 0, 0);
ThemeLabel = new QLabel(formLayoutWidget);
ThemeLabel->setText("Theme:");
ThemeLabel->setToolTip("Allows you to set the theme used ingame. If your theme changes the lobby's look, too, you'll obviously need to reload the lobby somehow for it take effect. Joining a server and leaving it should work.");
GameplayForm->setWidget(0, QFormLayout::LabelRole, ThemeLabel);
ui_theme_label = new QLabel(ui_form_layout_widget);
ui_theme_label->setText(tr("Theme:"));
ui_theme_label->setToolTip(tr("Sets the theme used in-game. If the new theme changes "
"the lobby's look as well, you'll need to reload the "
"lobby for the changes to take effect, such as by joining "
"a server and leaving it."));
ui_gameplay_form->setWidget(0, QFormLayout::LabelRole, ui_theme_label);
ThemeCombobox = new QComboBox(formLayoutWidget);
ui_theme_combobox = new QComboBox(ui_form_layout_widget);
// Fill the combobox with the names of the themes.
QDirIterator it(p_ao_app->get_base_path() + "themes", QDir::Dirs, QDirIterator::NoIteratorFlags);
@ -60,152 +63,160 @@ AOOptionsDialog::AOOptionsDialog(QWidget *parent, AOApplication *p_ao_app) : QDi
{
QString actualname = QDir(it.next()).dirName();
if (actualname != "." && actualname != "..")
ThemeCombobox->addItem(actualname);
ui_theme_combobox->addItem(actualname);
if (actualname == p_ao_app->read_theme())
ThemeCombobox->setCurrentIndex(ThemeCombobox->count()-1);
ui_theme_combobox->setCurrentIndex(ui_theme_combobox->count()-1);
}
GameplayForm->setWidget(0, QFormLayout::FieldRole, ThemeCombobox);
ui_gameplay_form->setWidget(0, QFormLayout::FieldRole, ui_theme_combobox);
ThemeLogDivider = new QFrame(formLayoutWidget);
ThemeLogDivider->setMidLineWidth(0);
ThemeLogDivider->setFrameShape(QFrame::HLine);
ThemeLogDivider->setFrameShadow(QFrame::Sunken);
ui_theme_log_divider = new QFrame(ui_form_layout_widget);
ui_theme_log_divider->setMidLineWidth(0);
ui_theme_log_divider->setFrameShape(QFrame::HLine);
ui_theme_log_divider->setFrameShadow(QFrame::Sunken);
GameplayForm->setWidget(1, QFormLayout::FieldRole, ThemeLogDivider);
ui_gameplay_form->setWidget(1, QFormLayout::FieldRole, ui_theme_log_divider);
DownwardsLabel = new QLabel(formLayoutWidget);
DownwardsLabel->setText("Log goes downwards:");
DownwardsLabel->setToolTip("If ticked, the IC chatlog will go downwards, in the sense that new messages will appear at the bottom (like the OOC chatlog). The Vanilla behaviour is equivalent to this being unticked.");
ui_downwards_lbl = new QLabel(ui_form_layout_widget);
ui_downwards_lbl->setText(tr("Log goes downwards:"));
ui_downwards_lbl->setToolTip(tr("If ticked, new messages will appear at "
"the bottom (like the OOC chatlog). The traditional "
"(AO1) behaviour is equivalent to this being unticked."));
GameplayForm->setWidget(2, QFormLayout::LabelRole, DownwardsLabel);
ui_gameplay_form->setWidget(2, QFormLayout::LabelRole, ui_downwards_lbl);
DownwardCheckbox = new QCheckBox(formLayoutWidget);
DownwardCheckbox->setChecked(p_ao_app->get_log_goes_downwards());
ui_downwards_cb = new QCheckBox(ui_form_layout_widget);
ui_downwards_cb->setChecked(p_ao_app->get_log_goes_downwards());
GameplayForm->setWidget(2, QFormLayout::FieldRole, DownwardCheckbox);
ui_gameplay_form->setWidget(2, QFormLayout::FieldRole, ui_downwards_cb);
LengthLabel = new QLabel(formLayoutWidget);
LengthLabel->setText("Log length:");
LengthLabel->setToolTip("The amount of messages the IC chatlog will keep before getting rid of older messages. A value of 0 or below counts as 'infinite'.");
ui_length_lbl = new QLabel(ui_form_layout_widget);
ui_length_lbl->setText(tr("Log length:"));
ui_length_lbl->setToolTip(tr("The amount of messages the IC chatlog will keep before "
"deleting older messages. A value of 0 or below counts as 'infinite'."));
GameplayForm->setWidget(3, QFormLayout::LabelRole, LengthLabel);
ui_gameplay_form->setWidget(3, QFormLayout::LabelRole, ui_length_lbl);
LengthSpinbox = new QSpinBox(formLayoutWidget);
LengthSpinbox->setMaximum(10000);
LengthSpinbox->setValue(p_ao_app->get_max_log_size());
ui_length_spinbox = new QSpinBox(ui_form_layout_widget);
ui_length_spinbox->setMaximum(10000);
ui_length_spinbox->setValue(p_ao_app->get_max_log_size());
GameplayForm->setWidget(3, QFormLayout::FieldRole, LengthSpinbox);
ui_gameplay_form->setWidget(3, QFormLayout::FieldRole, ui_length_spinbox);
LogNamesDivider = new QFrame(formLayoutWidget);
LogNamesDivider->setFrameShape(QFrame::HLine);
LogNamesDivider->setFrameShadow(QFrame::Sunken);
ui_log_names_divider = new QFrame(ui_form_layout_widget);
ui_log_names_divider->setFrameShape(QFrame::HLine);
ui_log_names_divider->setFrameShadow(QFrame::Sunken);
GameplayForm->setWidget(4, QFormLayout::FieldRole, LogNamesDivider);
ui_gameplay_form->setWidget(4, QFormLayout::FieldRole, ui_log_names_divider);
UsernameLabel = new QLabel(formLayoutWidget);
UsernameLabel->setText("Default username:");
UsernameLabel->setToolTip("Your OOC name will be filled in with this string when you join a server.");
ui_username_lbl = new QLabel(ui_form_layout_widget);
ui_username_lbl->setText(tr("Default username:"));
ui_username_lbl->setToolTip(tr("Your OOC name will be automatically set to this value "
"when you join a server."));
GameplayForm->setWidget(5, QFormLayout::LabelRole, UsernameLabel);
ui_gameplay_form->setWidget(5, QFormLayout::LabelRole, ui_username_lbl);
UsernameLineEdit = new QLineEdit(formLayoutWidget);
UsernameLineEdit->setMaxLength(30);
UsernameLineEdit->setText(p_ao_app->get_default_username());
ui_username_textbox = new QLineEdit(ui_form_layout_widget);
ui_username_textbox->setMaxLength(30);
ui_username_textbox->setText(p_ao_app->get_default_username());
GameplayForm->setWidget(5, QFormLayout::FieldRole, UsernameLineEdit);
ui_gameplay_form->setWidget(5, QFormLayout::FieldRole, ui_username_textbox);
ShownameLabel = new QLabel(formLayoutWidget);
ShownameLabel->setText("Custom shownames:");
ShownameLabel->setToolTip("Gives the default value for the ingame 'Custom shownames' tickbox, which in turn determines whether your client should display custom shownames or not.");
ui_showname_lbl = new QLabel(ui_form_layout_widget);
ui_showname_lbl->setText(tr("Custom shownames:"));
ui_showname_lbl->setToolTip(tr("Gives the default value for the in-game 'Custom shownames' "
"tickbox, which in turn determines whether the client should "
"display custom in-character names."));
GameplayForm->setWidget(6, QFormLayout::LabelRole, ShownameLabel);
ui_gameplay_form->setWidget(6, QFormLayout::LabelRole, ui_showname_lbl);
ShownameCheckbox = new QCheckBox(formLayoutWidget);
ShownameCheckbox->setChecked(p_ao_app->get_showname_enabled_by_default());
ui_showname_cb = new QCheckBox(ui_form_layout_widget);
ui_showname_cb->setChecked(p_ao_app->get_showname_enabled_by_default());
GameplayForm->setWidget(6, QFormLayout::FieldRole, ShownameCheckbox);
ui_gameplay_form->setWidget(6, QFormLayout::FieldRole, ui_showname_cb);
NetDivider = new QFrame(formLayoutWidget);
NetDivider->setFrameShape(QFrame::HLine);
NetDivider->setFrameShadow(QFrame::Sunken);
ui_net_divider = new QFrame(ui_form_layout_widget);
ui_net_divider->setFrameShape(QFrame::HLine);
ui_net_divider->setFrameShadow(QFrame::Sunken);
GameplayForm->setWidget(7, QFormLayout::FieldRole, NetDivider);
ui_gameplay_form->setWidget(7, QFormLayout::FieldRole, ui_net_divider);
MasterServerLabel = new QLabel(formLayoutWidget);
MasterServerLabel->setText("Backup MS:");
MasterServerLabel->setToolTip("After the built-in server lookups fail, the game will try the address given here and use it as a backup masterserver address.");
ui_ms_lbl = new QLabel(ui_form_layout_widget);
ui_ms_lbl->setText(tr("Backup MS:"));
ui_ms_lbl->setToolTip(tr("If the built-in server lookups fail, the game will try the "
"address given here and use it as a backup master server address."));
GameplayForm->setWidget(8, QFormLayout::LabelRole, MasterServerLabel);
ui_gameplay_form->setWidget(8, QFormLayout::LabelRole, ui_ms_lbl);
QSettings* configini = ao_app->configini;
MasterServerLineEdit = new QLineEdit(formLayoutWidget);
MasterServerLineEdit->setText(configini->value("master", "").value<QString>());
ui_ms_textbox = new QLineEdit(ui_form_layout_widget);
ui_ms_textbox->setText(configini->value("master", "").value<QString>());
GameplayForm->setWidget(8, QFormLayout::FieldRole, MasterServerLineEdit);
ui_gameplay_form->setWidget(8, QFormLayout::FieldRole, ui_ms_textbox);
DiscordLabel = new QLabel(formLayoutWidget);
DiscordLabel->setText("Discord:");
DiscordLabel->setToolTip("If true, allows Discord's Rich Presence to read data about your game. These are: what server you are in, what character are you playing, and how long have you been playing for.");
ui_discord_lbl = new QLabel(ui_form_layout_widget);
ui_discord_lbl->setText(tr("Discord:"));
ui_discord_lbl->setToolTip(tr("Allows others on Discord to see what server you are in, "
"what character are you playing, and how long you have "
"been playing for."));
GameplayForm->setWidget(9, QFormLayout::LabelRole, DiscordLabel);
ui_gameplay_form->setWidget(9, QFormLayout::LabelRole, ui_discord_lbl);
DiscordCheckBox = new QCheckBox(formLayoutWidget);
DiscordCheckBox->setChecked(ao_app->is_discord_enabled());
ui_discord_cb = new QCheckBox(ui_form_layout_widget);
ui_discord_cb->setChecked(ao_app->is_discord_enabled());
GameplayForm->setWidget(9, QFormLayout::FieldRole, DiscordCheckBox);
ui_gameplay_form->setWidget(9, QFormLayout::FieldRole, ui_discord_cb);
// Here we start the callwords tab.
CallwordsTab = new QWidget();
SettingsTabs->addTab(CallwordsTab, "Callwords");
ui_callwords_tab = new QWidget();
ui_settings_tabs->addTab(ui_callwords_tab, tr("Callwords"));
verticalLayoutWidget = new QWidget(CallwordsTab);
verticalLayoutWidget->setGeometry(QRect(10, 10, 361, 211));
ui_callwords_widget = new QWidget(ui_callwords_tab);
ui_callwords_widget->setGeometry(QRect(10, 10, 361, 211));
CallwordsLayout = new QVBoxLayout(verticalLayoutWidget);
CallwordsLayout->setContentsMargins(0,0,0,0);
ui_callwords_layout = new QVBoxLayout(ui_callwords_widget);
ui_callwords_layout->setContentsMargins(0,0,0,0);
CallwordsTextEdit = new QPlainTextEdit(verticalLayoutWidget);
ui_callwords_textbox = new QPlainTextEdit(ui_callwords_widget);
QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
sizePolicy.setHorizontalStretch(0);
sizePolicy.setVerticalStretch(0);
sizePolicy.setHeightForWidth(CallwordsTextEdit->sizePolicy().hasHeightForWidth());
CallwordsTextEdit->setSizePolicy(sizePolicy);
sizePolicy.setHeightForWidth(ui_callwords_textbox->sizePolicy().hasHeightForWidth());
ui_callwords_textbox->setSizePolicy(sizePolicy);
// Let's fill the callwords text edit with the already present callwords.
CallwordsTextEdit->document()->clear();
ui_callwords_textbox->document()->clear();
foreach (QString callword, p_ao_app->get_call_words()) {
CallwordsTextEdit->appendPlainText(callword);
ui_callwords_textbox->appendPlainText(callword);
}
CallwordsLayout->addWidget(CallwordsTextEdit);
ui_callwords_layout->addWidget(ui_callwords_textbox);
CallwordsExplainLabel = new QLabel(verticalLayoutWidget);
CallwordsExplainLabel->setWordWrap(true);
CallwordsExplainLabel->setText("<html><head/><body>Enter as many callwords as you would like. These are case insensitive. Make sure to leave every callword in its own line!<br>Do not leave a line with a space at the end -- you will be alerted everytime someone uses a space in their messages.</body></html>");
ui_callwords_explain_lbl = new QLabel(ui_callwords_widget);
ui_callwords_explain_lbl->setWordWrap(true);
ui_callwords_explain_lbl->setText(tr("<html><head/><body>Enter as many callwords as you would like. These are case insensitive. Make sure to leave every callword in its own line!<br>Do not leave a line with a space at the end -- you will be alerted everytime someone uses a space in their messages.</body></html>"));
CallwordsLayout->addWidget(CallwordsExplainLabel);
ui_callwords_layout->addWidget(ui_callwords_explain_lbl);
// The audio tab.
AudioTab = new QWidget();
SettingsTabs->addTab(AudioTab, "Audio");
ui_audio_tab = new QWidget();
ui_settings_tabs->addTab(ui_audio_tab, tr("Audio"));
formLayoutWidget_2 = new QWidget(AudioTab);
formLayoutWidget_2->setGeometry(QRect(10, 10, 361, 211));
ui_audio_widget = new QWidget(ui_audio_tab);
ui_audio_widget->setGeometry(QRect(10, 10, 361, 211));
AudioForm = new QFormLayout(formLayoutWidget_2);
AudioForm->setObjectName(QStringLiteral("AudioForm"));
AudioForm->setLabelAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
AudioForm->setFormAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop);
AudioForm->setContentsMargins(0, 0, 0, 0);
ui_audio_layout = new QFormLayout(ui_audio_widget);
ui_audio_layout->setLabelAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
ui_audio_layout->setFormAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop);
ui_audio_layout->setContentsMargins(0, 0, 0, 0);
AudioDevideLabel = new QLabel(formLayoutWidget_2);
AudioDevideLabel->setText("Audio device:");
AudioDevideLabel->setToolTip("Allows you to set the theme used ingame. If your theme changes the lobby's look, too, you'll obviously need to reload the lobby somehow for it take effect. Joining a server and leaving it should work.");
ui_audio_device_lbl = new QLabel(ui_audio_widget);
ui_audio_device_lbl->setText(tr("Audio device:"));
ui_audio_device_lbl->setToolTip(tr("Sets the audio device for all sounds."));
AudioForm->setWidget(0, QFormLayout::LabelRole, AudioDevideLabel);
ui_audio_layout->setWidget(0, QFormLayout::LabelRole, ui_audio_device_lbl);
AudioDeviceCombobox = new QComboBox(formLayoutWidget_2);
ui_audio_device_combobox = new QComboBox(ui_audio_widget);
// Let's fill out the combobox with the available audio devices.
int a = 0;
@ -213,219 +224,228 @@ AOOptionsDialog::AOOptionsDialog(QWidget *parent, AOApplication *p_ao_app) : QDi
if (needs_default_audiodev())
{
AudioDeviceCombobox->addItem("Default");
ui_audio_device_combobox->addItem("Default");
}
for (a = 0; BASS_GetDeviceInfo(a, &info); a++)
{
AudioDeviceCombobox->addItem(info.name);
ui_audio_device_combobox->addItem(info.name);
if (p_ao_app->get_audio_output_device() == info.name)
AudioDeviceCombobox->setCurrentIndex(AudioDeviceCombobox->count()-1);
ui_audio_device_combobox->setCurrentIndex(ui_audio_device_combobox->count()-1);
}
AudioForm->setWidget(0, QFormLayout::FieldRole, AudioDeviceCombobox);
ui_audio_layout->setWidget(0, QFormLayout::FieldRole, ui_audio_device_combobox);
DeviceVolumeDivider = new QFrame(formLayoutWidget_2);
DeviceVolumeDivider->setFrameShape(QFrame::HLine);
DeviceVolumeDivider->setFrameShadow(QFrame::Sunken);
ui_audio_volume_divider = new QFrame(ui_audio_widget);
ui_audio_volume_divider->setFrameShape(QFrame::HLine);
ui_audio_volume_divider->setFrameShadow(QFrame::Sunken);
AudioForm->setWidget(1, QFormLayout::FieldRole, DeviceVolumeDivider);
ui_audio_layout->setWidget(1, QFormLayout::FieldRole, ui_audio_volume_divider);
MusicVolumeLabel = new QLabel(formLayoutWidget_2);
MusicVolumeLabel->setText("Music:");
MusicVolumeLabel->setToolTip("Sets the music's default volume.");
ui_music_volume_lbl = new QLabel(ui_audio_widget);
ui_music_volume_lbl->setText(tr("Music:"));
ui_music_volume_lbl->setToolTip(tr("Sets the music's default volume."));
AudioForm->setWidget(2, QFormLayout::LabelRole, MusicVolumeLabel);
ui_audio_layout->setWidget(2, QFormLayout::LabelRole, ui_music_volume_lbl);
MusicVolumeSpinbox = new QSpinBox(formLayoutWidget_2);
MusicVolumeSpinbox->setValue(p_ao_app->get_default_music());
MusicVolumeSpinbox->setMaximum(100);
MusicVolumeSpinbox->setSuffix("%");
ui_music_volume_spinbox = new QSpinBox(ui_audio_widget);
ui_music_volume_spinbox->setValue(p_ao_app->get_default_music());
ui_music_volume_spinbox->setMaximum(100);
ui_music_volume_spinbox->setSuffix("%");
AudioForm->setWidget(2, QFormLayout::FieldRole, MusicVolumeSpinbox);
ui_audio_layout->setWidget(2, QFormLayout::FieldRole, ui_music_volume_spinbox);
SFXVolumeLabel = new QLabel(formLayoutWidget_2);
SFXVolumeLabel->setText("SFX:");
SFXVolumeLabel->setToolTip("Sets the SFX's default volume. Interjections and actual sound effects count as 'SFX'.");
ui_sfx_volume_lbl = new QLabel(ui_audio_widget);
ui_sfx_volume_lbl->setText(tr("SFX:"));
ui_sfx_volume_lbl->setToolTip(tr("Sets the SFX's default volume. "
"Interjections and actual sound effects count as 'SFX'."));
AudioForm->setWidget(3, QFormLayout::LabelRole, SFXVolumeLabel);
ui_audio_layout->setWidget(3, QFormLayout::LabelRole, ui_sfx_volume_lbl);
SFXVolumeSpinbox = new QSpinBox(formLayoutWidget_2);
SFXVolumeSpinbox->setValue(p_ao_app->get_default_sfx());
SFXVolumeSpinbox->setMaximum(100);
SFXVolumeSpinbox->setSuffix("%");
ui_sfx_volume_spinbox = new QSpinBox(ui_audio_widget);
ui_sfx_volume_spinbox->setValue(p_ao_app->get_default_sfx());
ui_sfx_volume_spinbox->setMaximum(100);
ui_sfx_volume_spinbox->setSuffix("%");
AudioForm->setWidget(3, QFormLayout::FieldRole, SFXVolumeSpinbox);
ui_audio_layout->setWidget(3, QFormLayout::FieldRole, ui_sfx_volume_spinbox);
BlipsVolumeLabel = new QLabel(formLayoutWidget_2);
BlipsVolumeLabel->setText("Blips:");
BlipsVolumeLabel->setToolTip("Sets the volume of the blips, the talking sound effects.");
ui_blips_volume_lbl = new QLabel(ui_audio_widget);
ui_blips_volume_lbl->setText(tr("Blips:"));
ui_blips_volume_lbl->setToolTip(tr("Sets the volume of the blips, the talking sound effects."));
AudioForm->setWidget(4, QFormLayout::LabelRole, BlipsVolumeLabel);
ui_audio_layout->setWidget(4, QFormLayout::LabelRole, ui_blips_volume_lbl);
BlipsVolumeSpinbox = new QSpinBox(formLayoutWidget_2);
BlipsVolumeSpinbox->setValue(p_ao_app->get_default_blip());
BlipsVolumeSpinbox->setMaximum(100);
BlipsVolumeSpinbox->setSuffix("%");
ui_blips_volume_spinbox = new QSpinBox(ui_audio_widget);
ui_blips_volume_spinbox->setValue(p_ao_app->get_default_blip());
ui_blips_volume_spinbox->setMaximum(100);
ui_blips_volume_spinbox->setSuffix("%");
AudioForm->setWidget(4, QFormLayout::FieldRole, BlipsVolumeSpinbox);
ui_audio_layout->setWidget(4, QFormLayout::FieldRole, ui_blips_volume_spinbox);
VolumeBlipDivider = new QFrame(formLayoutWidget_2);
VolumeBlipDivider->setFrameShape(QFrame::HLine);
VolumeBlipDivider->setFrameShadow(QFrame::Sunken);
ui_volume_blip_divider = new QFrame(ui_audio_widget);
ui_volume_blip_divider->setFrameShape(QFrame::HLine);
ui_volume_blip_divider->setFrameShadow(QFrame::Sunken);
AudioForm->setWidget(5, QFormLayout::FieldRole, VolumeBlipDivider);
ui_audio_layout->setWidget(5, QFormLayout::FieldRole, ui_volume_blip_divider);
BlipRateLabel = new QLabel(formLayoutWidget_2);
BlipRateLabel->setText("Blip rate:");
BlipRateLabel->setToolTip("Sets the delay between playing the blip sounds.");
ui_bliprate_lbl = new QLabel(ui_audio_widget);
ui_bliprate_lbl->setText(tr("Blip rate:"));
ui_bliprate_lbl->setToolTip(tr("Sets the delay between playing the blip sounds."));
AudioForm->setWidget(6, QFormLayout::LabelRole, BlipRateLabel);
ui_audio_layout->setWidget(6, QFormLayout::LabelRole, ui_bliprate_lbl);
BlipRateSpinbox = new QSpinBox(formLayoutWidget_2);
BlipRateSpinbox->setValue(p_ao_app->read_blip_rate());
BlipRateSpinbox->setMinimum(1);
ui_bliprate_spinbox = new QSpinBox(ui_audio_widget);
ui_bliprate_spinbox->setValue(p_ao_app->read_blip_rate());
ui_bliprate_spinbox->setMinimum(1);
AudioForm->setWidget(6, QFormLayout::FieldRole, BlipRateSpinbox);
ui_audio_layout->setWidget(6, QFormLayout::FieldRole, ui_bliprate_spinbox);
BlankBlipsLabel = new QLabel(formLayoutWidget_2);
BlankBlipsLabel->setText("Blank blips:");
BlankBlipsLabel->setToolTip("If true, the game will play a blip sound even when a space is 'being said'.");
ui_blank_blips_lbl = new QLabel(ui_audio_widget);
ui_blank_blips_lbl->setText(tr("Blank blips:"));
ui_blank_blips_lbl->setToolTip(tr("If true, the game will play a blip sound even "
"when a space is 'being said'."));
AudioForm->setWidget(7, QFormLayout::LabelRole, BlankBlipsLabel);
ui_audio_layout->setWidget(7, QFormLayout::LabelRole, ui_blank_blips_lbl);
BlankBlipsCheckbox = new QCheckBox(formLayoutWidget_2);
BlankBlipsCheckbox->setChecked(p_ao_app->get_blank_blip());
ui_blank_blips_cb = new QCheckBox(ui_audio_widget);
ui_blank_blips_cb->setChecked(p_ao_app->get_blank_blip());
AudioForm->setWidget(7, QFormLayout::FieldRole, BlankBlipsCheckbox);
ui_audio_layout->setWidget(7, QFormLayout::FieldRole, ui_blank_blips_cb);
// The casing tab!
CasingTab = new QWidget();
SettingsTabs->addTab(CasingTab, "Casing");
ui_casing_tab = new QWidget();
ui_settings_tabs->addTab(ui_casing_tab, tr("Casing"));
formLayoutWidget_3 = new QWidget(CasingTab);
formLayoutWidget_3->setGeometry(QRect(10,10, 361, 211));
ui_casing_widget = new QWidget(ui_casing_tab);
ui_casing_widget->setGeometry(QRect(10,10, 361, 211));
CasingForm = new QFormLayout(formLayoutWidget_3);
CasingForm->setObjectName(QStringLiteral("CasingForm"));
CasingForm->setLabelAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
CasingForm->setFormAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop);
CasingForm->setContentsMargins(0, 0, 0, 0);
ui_casing_layout = new QFormLayout(ui_casing_widget);
ui_casing_layout->setLabelAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter);
ui_casing_layout->setFormAlignment(Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop);
ui_casing_layout->setContentsMargins(0, 0, 0, 0);
// -- SERVER SUPPORTS CASING
ServerSupportsCasing = new QLabel(formLayoutWidget_3);
ui_casing_supported_lbl = new QLabel(ui_casing_widget);
if (ao_app->casing_alerts_enabled)
ServerSupportsCasing->setText("This server supports case alerts.");
ui_casing_supported_lbl->setText(tr("This server supports case alerts."));
else
ServerSupportsCasing->setText("This server does not support case alerts.");
ServerSupportsCasing->setToolTip("Pretty self-explanatory.");
ui_casing_supported_lbl->setText(tr("This server does not support case alerts."));
ui_casing_supported_lbl->setToolTip(tr("Pretty self-explanatory."));
CasingForm->setWidget(0, QFormLayout::FieldRole, ServerSupportsCasing);
ui_casing_layout->setWidget(0, QFormLayout::FieldRole, ui_casing_supported_lbl);
// -- CASE ANNOUNCEMENTS
CasingEnabledLabel = new QLabel(formLayoutWidget_3);
CasingEnabledLabel->setText("Casing:");
CasingEnabledLabel->setToolTip("If checked, you will get alerts about case announcements.");
ui_casing_enabled_lbl = new QLabel(ui_casing_widget);
ui_casing_enabled_lbl->setText(tr("Casing:"));
ui_casing_enabled_lbl->setToolTip(tr("If checked, you will get alerts about case "
"announcements."));
CasingForm->setWidget(1, QFormLayout::LabelRole, CasingEnabledLabel);
ui_casing_layout->setWidget(1, QFormLayout::LabelRole, ui_casing_enabled_lbl);
CasingEnabledCheckbox = new QCheckBox(formLayoutWidget_3);
CasingEnabledCheckbox->setChecked(ao_app->get_casing_enabled());
ui_casing_enabled_cb = new QCheckBox(ui_casing_widget);
ui_casing_enabled_cb->setChecked(ao_app->get_casing_enabled());
CasingForm->setWidget(1, QFormLayout::FieldRole, CasingEnabledCheckbox);
ui_casing_layout->setWidget(1, QFormLayout::FieldRole, ui_casing_enabled_cb);
// -- DEFENCE ANNOUNCEMENTS
// -- DEFENSE ANNOUNCEMENTS
DefenceLabel = new QLabel(formLayoutWidget_3);
DefenceLabel->setText("Defence:");
DefenceLabel->setToolTip("If checked, you will get alerts about case announcements if a defence spot is open.");
ui_casing_def_lbl = new QLabel(ui_casing_widget);
ui_casing_def_lbl->setText(tr("Defense:"));
ui_casing_def_lbl->setToolTip(tr("If checked, you will get alerts about case "
"announcements if a defense spot is open."));
CasingForm->setWidget(2, QFormLayout::LabelRole, DefenceLabel);
ui_casing_layout->setWidget(2, QFormLayout::LabelRole, ui_casing_def_lbl);
DefenceCheckbox = new QCheckBox(formLayoutWidget_3);
DefenceCheckbox->setChecked(ao_app->get_casing_defence_enabled());
ui_casing_def_cb = new QCheckBox(ui_casing_widget);
ui_casing_def_cb->setChecked(ao_app->get_casing_defence_enabled());
CasingForm->setWidget(2, QFormLayout::FieldRole, DefenceCheckbox);
ui_casing_layout->setWidget(2, QFormLayout::FieldRole, ui_casing_def_cb);
// -- PROSECUTOR ANNOUNCEMENTS
ProsecutorLabel = new QLabel(formLayoutWidget_3);
ProsecutorLabel->setText("Prosecution:");
ProsecutorLabel->setToolTip("If checked, you will get alerts about case announcements if a prosecutor spot is open.");
ui_casing_pro_lbl = new QLabel(ui_casing_widget);
ui_casing_pro_lbl->setText(tr("Prosecution:"));
ui_casing_pro_lbl->setToolTip(tr("If checked, you will get alerts about case "
"announcements if a prosecutor spot is open."));
CasingForm->setWidget(3, QFormLayout::LabelRole, ProsecutorLabel);
ui_casing_layout->setWidget(3, QFormLayout::LabelRole, ui_casing_pro_lbl);
ProsecutorCheckbox = new QCheckBox(formLayoutWidget_3);
ProsecutorCheckbox->setChecked(ao_app->get_casing_prosecution_enabled());
ui_casing_pro_cb = new QCheckBox(ui_casing_widget);
ui_casing_pro_cb->setChecked(ao_app->get_casing_prosecution_enabled());
CasingForm->setWidget(3, QFormLayout::FieldRole, ProsecutorCheckbox);
ui_casing_layout->setWidget(3, QFormLayout::FieldRole, ui_casing_pro_cb);
// -- JUDGE ANNOUNCEMENTS
JudgeLabel = new QLabel(formLayoutWidget_3);
JudgeLabel->setText("Judge:");
JudgeLabel->setToolTip("If checked, you will get alerts about case announcements if the judge spot is open.");
ui_casing_jud_lbl = new QLabel(ui_casing_widget);
ui_casing_jud_lbl->setText(tr("Judge:"));
ui_casing_jud_lbl->setToolTip(tr("If checked, you will get alerts about case "
"announcements if the judge spot is open."));
CasingForm->setWidget(4, QFormLayout::LabelRole, JudgeLabel);
ui_casing_layout->setWidget(4, QFormLayout::LabelRole, ui_casing_jud_lbl);
JudgeCheckbox = new QCheckBox(formLayoutWidget_3);
JudgeCheckbox->setChecked(ao_app->get_casing_judge_enabled());
ui_casing_jud_cb = new QCheckBox(ui_casing_widget);
ui_casing_jud_cb->setChecked(ao_app->get_casing_judge_enabled());
CasingForm->setWidget(4, QFormLayout::FieldRole, JudgeCheckbox);
ui_casing_layout->setWidget(4, QFormLayout::FieldRole, ui_casing_jud_cb);
// -- JUROR ANNOUNCEMENTS
JurorLabel = new QLabel(formLayoutWidget_3);
JurorLabel->setText("Juror:");
JurorLabel->setToolTip("If checked, you will get alerts about case announcements if a juror spot is open.");
ui_casing_jur_lbl = new QLabel(ui_casing_widget);
ui_casing_jur_lbl->setText(tr("Juror:"));
ui_casing_jur_lbl->setToolTip(tr("If checked, you will get alerts about case "
"announcements if a juror spot is open."));
CasingForm->setWidget(5, QFormLayout::LabelRole, JurorLabel);
ui_casing_layout->setWidget(5, QFormLayout::LabelRole, ui_casing_jur_lbl);
JurorCheckbox = new QCheckBox(formLayoutWidget_3);
JurorCheckbox->setChecked(ao_app->get_casing_juror_enabled());
ui_casing_jur_cb = new QCheckBox(ui_casing_widget);
ui_casing_jur_cb->setChecked(ao_app->get_casing_juror_enabled());
CasingForm->setWidget(5, QFormLayout::FieldRole, JurorCheckbox);
ui_casing_layout->setWidget(5, QFormLayout::FieldRole, ui_casing_jur_cb);
// -- STENO ANNOUNCEMENTS
StenographerLabel = new QLabel(formLayoutWidget_3);
StenographerLabel->setText("Stenographer:");
StenographerLabel->setToolTip("If checked, you will get alerts about case announcements if a stenographer spot is open.");
ui_casing_steno_lbl = new QLabel(ui_casing_widget);
ui_casing_steno_lbl->setText(tr("Stenographer:"));
ui_casing_steno_lbl->setToolTip(tr("If checked, you will get alerts about case "
"announcements if a stenographer spot is open."));
CasingForm->setWidget(6, QFormLayout::LabelRole, StenographerLabel);
ui_casing_layout->setWidget(6, QFormLayout::LabelRole, ui_casing_steno_lbl);
StenographerCheckbox = new QCheckBox(formLayoutWidget_3);
StenographerCheckbox->setChecked(ao_app->get_casing_steno_enabled());
ui_casing_steno_cb = new QCheckBox(ui_casing_widget);
ui_casing_steno_cb->setChecked(ao_app->get_casing_steno_enabled());
CasingForm->setWidget(6, QFormLayout::FieldRole, StenographerCheckbox);
ui_casing_layout->setWidget(6, QFormLayout::FieldRole, ui_casing_steno_cb);
// -- CM ANNOUNCEMENTS
CMLabel = new QLabel(formLayoutWidget_3);
CMLabel->setText("CM:");
CMLabel->setToolTip("If checked, you will appear amongst the potential CMs on the server.");
ui_casing_cm_lbl = new QLabel(ui_casing_widget);
ui_casing_cm_lbl->setText(tr("CM:"));
ui_casing_cm_lbl->setToolTip(tr("If checked, you will appear amongst the potential "
"CMs on the server."));
CasingForm->setWidget(7, QFormLayout::LabelRole, CMLabel);
ui_casing_layout->setWidget(7, QFormLayout::LabelRole, ui_casing_cm_lbl);
CMCheckbox = new QCheckBox(formLayoutWidget_3);
CMCheckbox->setChecked(ao_app->get_casing_cm_enabled());
ui_casing_cm_cb = new QCheckBox(ui_casing_widget);
ui_casing_cm_cb->setChecked(ao_app->get_casing_cm_enabled());
CasingForm->setWidget(7, QFormLayout::FieldRole, CMCheckbox);
ui_casing_layout->setWidget(7, QFormLayout::FieldRole, ui_casing_cm_cb);
// -- CM CASES ANNOUNCEMENTS
CMCasesLabel = new QLabel(formLayoutWidget_3);
CMCasesLabel->setText("Hosting cases:");
CMCasesLabel->setToolTip("If you're a CM, enter what cases are you willing to host.");
ui_casing_cm_cases_lbl = new QLabel(ui_casing_widget);
ui_casing_cm_cases_lbl->setText(tr("Hosting cases:"));
ui_casing_cm_cases_lbl->setToolTip(tr("If you're a CM, enter what cases you are "
"willing to host."));
CasingForm->setWidget(8, QFormLayout::LabelRole, CMCasesLabel);
ui_casing_layout->setWidget(8, QFormLayout::LabelRole, ui_casing_cm_cases_lbl);
CMCasesLineEdit = new QLineEdit(formLayoutWidget_3);
CMCasesLineEdit->setText(ao_app->get_casing_can_host_cases());
ui_casing_cm_cases_textbox = new QLineEdit(ui_casing_widget);
ui_casing_cm_cases_textbox->setText(ao_app->get_casing_can_host_cases());
CasingForm->setWidget(8, QFormLayout::FieldRole, CMCasesLineEdit);
ui_casing_layout->setWidget(8, QFormLayout::FieldRole, ui_casing_cm_cases_textbox);
// When we're done, we should continue the updates!
setUpdatesEnabled(true);
@ -436,13 +456,13 @@ void AOOptionsDialog::save_pressed()
// Save everything into the config.ini.
QSettings* configini = ao_app->configini;
configini->setValue("theme", ThemeCombobox->currentText());
configini->setValue("log_goes_downwards", DownwardCheckbox->isChecked());
configini->setValue("log_maximum", LengthSpinbox->value());
configini->setValue("default_username", UsernameLineEdit->text());
configini->setValue("show_custom_shownames", ShownameCheckbox->isChecked());
configini->setValue("master", MasterServerLineEdit->text());
configini->setValue("discord", DiscordCheckBox->isChecked());
configini->setValue("theme", ui_theme_combobox->currentText());
configini->setValue("log_goes_downwards", ui_downwards_cb->isChecked());
configini->setValue("log_maximum", ui_length_spinbox->value());
configini->setValue("default_username", ui_username_textbox->text());
configini->setValue("show_custom_shownames", ui_showname_cb->isChecked());
configini->setValue("master", ui_ms_textbox->text());
configini->setValue("discord", ui_discord_cb->isChecked());
QFile* callwordsini = new QFile(ao_app->get_base_path() + "callwords.ini");
@ -453,25 +473,25 @@ void AOOptionsDialog::save_pressed()
else
{
QTextStream out(callwordsini);
out << CallwordsTextEdit->toPlainText();
out << ui_callwords_textbox->toPlainText();
callwordsini->close();
}
configini->setValue("default_audio_device", AudioDeviceCombobox->currentText());
configini->setValue("default_music", MusicVolumeSpinbox->value());
configini->setValue("default_sfx", SFXVolumeSpinbox->value());
configini->setValue("default_blip", BlipsVolumeSpinbox->value());
configini->setValue("blip_rate", BlipRateSpinbox->value());
configini->setValue("blank_blip", BlankBlipsCheckbox->isChecked());
configini->setValue("default_audio_device", ui_audio_device_combobox->currentText());
configini->setValue("default_music", ui_music_volume_spinbox->value());
configini->setValue("default_sfx", ui_sfx_volume_spinbox->value());
configini->setValue("default_blip", ui_blips_volume_spinbox->value());
configini->setValue("blip_rate", ui_bliprate_spinbox->value());
configini->setValue("blank_blip", ui_blank_blips_cb->isChecked());
configini->setValue("casing_enabled", CasingEnabledCheckbox->isChecked());
configini->setValue("casing_defence_enabled", DefenceCheckbox->isChecked());
configini->setValue("casing_prosecution_enabled", ProsecutorCheckbox->isChecked());
configini->setValue("casing_judge_enabled", JudgeCheckbox->isChecked());
configini->setValue("casing_juror_enabled", JurorCheckbox->isChecked());
configini->setValue("casing_steno_enabled", StenographerCheckbox->isChecked());
configini->setValue("casing_cm_enabled", CMCheckbox->isChecked());
configini->setValue("casing_can_host_casees", CMCasesLineEdit->text());
configini->setValue("casing_enabled", ui_casing_enabled_cb->isChecked());
configini->setValue("casing_defence_enabled", ui_casing_def_cb->isChecked());
configini->setValue("casing_prosecution_enabled", ui_casing_pro_cb->isChecked());
configini->setValue("casing_judge_enabled", ui_casing_jud_cb->isChecked());
configini->setValue("casing_juror_enabled", ui_casing_jur_cb->isChecked());
configini->setValue("casing_steno_enabled", ui_casing_steno_cb->isChecked());
configini->setValue("casing_cm_enabled", ui_casing_cm_cb->isChecked());
configini->setValue("casing_can_host_cases", ui_casing_cm_cases_textbox->text());
callwordsini->close();
done(0);

View File

@ -32,76 +32,76 @@ public:
private:
AOApplication *ao_app;
QVBoxLayout *verticalLayout;
QTabWidget *SettingsTabs;
QVBoxLayout *ui_vertical_layout;
QTabWidget *ui_settings_tabs;
QWidget *GameplayTab;
QWidget *formLayoutWidget;
QFormLayout *GameplayForm;
QLabel *ThemeLabel;
QComboBox *ThemeCombobox;
QFrame *ThemeLogDivider;
QLabel *DownwardsLabel;
QCheckBox *DownwardCheckbox;
QLabel *LengthLabel;
QSpinBox *LengthSpinbox;
QFrame *LogNamesDivider;
QLineEdit *UsernameLineEdit;
QLabel *UsernameLabel;
QLabel *ShownameLabel;
QCheckBox *ShownameCheckbox;
QFrame *NetDivider;
QLabel *MasterServerLabel;
QLineEdit *MasterServerLineEdit;
QLabel *DiscordLabel;
QCheckBox *DiscordCheckBox;
QWidget *ui_gameplay_tab;
QWidget *ui_form_layout_widget;
QFormLayout *ui_gameplay_form;
QLabel *ui_theme_label;
QComboBox *ui_theme_combobox;
QFrame *ui_theme_log_divider;
QLabel *ui_downwards_lbl;
QCheckBox *ui_downwards_cb;
QLabel *ui_length_lbl;
QSpinBox *ui_length_spinbox;
QFrame *ui_log_names_divider;
QLineEdit *ui_username_textbox;
QLabel *ui_username_lbl;
QLabel *ui_showname_lbl;
QCheckBox *ui_showname_cb;
QFrame *ui_net_divider;
QLabel *ui_ms_lbl;
QLineEdit *ui_ms_textbox;
QLabel *ui_discord_lbl;
QCheckBox *ui_discord_cb;
QWidget *CallwordsTab;
QWidget *verticalLayoutWidget;
QVBoxLayout *CallwordsLayout;
QPlainTextEdit *CallwordsTextEdit;
QLabel *CallwordsExplainLabel;
QCheckBox *CharacterCallwordsCheckbox;
QWidget *ui_callwords_tab;
QWidget *ui_callwords_widget;
QVBoxLayout *ui_callwords_layout;
QPlainTextEdit *ui_callwords_textbox;
QLabel *ui_callwords_explain_lbl;
QCheckBox *ui_callwords_char_textbox;
QWidget *AudioTab;
QWidget *formLayoutWidget_2;
QFormLayout *AudioForm;
QLabel *AudioDevideLabel;
QComboBox *AudioDeviceCombobox;
QFrame *DeviceVolumeDivider;
QSpinBox *MusicVolumeSpinbox;
QLabel *MusicVolumeLabel;
QSpinBox *SFXVolumeSpinbox;
QSpinBox *BlipsVolumeSpinbox;
QLabel *SFXVolumeLabel;
QLabel *BlipsVolumeLabel;
QFrame *VolumeBlipDivider;
QSpinBox *BlipRateSpinbox;
QLabel *BlipRateLabel;
QCheckBox *BlankBlipsCheckbox;
QLabel *BlankBlipsLabel;
QDialogButtonBox *SettingsButtons;
QWidget *ui_audio_tab;
QWidget *ui_audio_widget;
QFormLayout *ui_audio_layout;
QLabel *ui_audio_device_lbl;
QComboBox *ui_audio_device_combobox;
QFrame *ui_audio_volume_divider;
QSpinBox *ui_music_volume_spinbox;
QLabel *ui_music_volume_lbl;
QSpinBox *ui_sfx_volume_spinbox;
QSpinBox *ui_blips_volume_spinbox;
QLabel *ui_sfx_volume_lbl;
QLabel *ui_blips_volume_lbl;
QFrame *ui_volume_blip_divider;
QSpinBox *ui_bliprate_spinbox;
QLabel *ui_bliprate_lbl;
QCheckBox *ui_blank_blips_cb;
QLabel *ui_blank_blips_lbl;
QDialogButtonBox *ui_settings_buttons;
QWidget *CasingTab;
QWidget *formLayoutWidget_3;
QFormLayout *CasingForm;
QLabel *ServerSupportsCasing;
QLabel *CasingEnabledLabel;
QCheckBox *CasingEnabledCheckbox;
QLabel *DefenceLabel;
QCheckBox *DefenceCheckbox;
QLabel *ProsecutorLabel;
QCheckBox *ProsecutorCheckbox;
QLabel *JudgeLabel;
QCheckBox *JudgeCheckbox;
QLabel *JurorLabel;
QCheckBox *JurorCheckbox;
QLabel *StenographerLabel;
QCheckBox *StenographerCheckbox;
QLabel *CMLabel;
QCheckBox *CMCheckbox;
QLabel *CMCasesLabel;
QLineEdit *CMCasesLineEdit;
QWidget *ui_casing_tab;
QWidget *ui_casing_widget;
QFormLayout *ui_casing_layout;
QLabel *ui_casing_supported_lbl;
QLabel *ui_casing_enabled_lbl;
QCheckBox *ui_casing_enabled_cb;
QLabel *ui_casing_def_lbl;
QCheckBox *ui_casing_def_cb;
QLabel *ui_casing_pro_lbl;
QCheckBox *ui_casing_pro_cb;
QLabel *ui_casing_jud_lbl;
QCheckBox *ui_casing_jud_cb;
QLabel *ui_casing_jur_lbl;
QCheckBox *ui_casing_jur_cb;
QLabel *ui_casing_steno_lbl;
QCheckBox *ui_casing_steno_cb;
QLabel *ui_casing_cm_lbl;
QCheckBox *ui_casing_cm_cb;
QLabel *ui_casing_cm_cases_lbl;
QLineEdit *ui_casing_cm_cases_textbox;
bool needs_default_audiodev();

View File

@ -118,11 +118,11 @@ Courtroom::Courtroom(AOApplication *p_ao_app) : QMainWindow()
ui_ic_chat_name = new QLineEdit(this);
ui_ic_chat_name->setFrame(false);
ui_ic_chat_name->setPlaceholderText("Showname");
ui_ic_chat_name->setPlaceholderText(tr("Showname"));
ui_ic_chat_message = new QLineEdit(this);
ui_ic_chat_message->setFrame(false);
ui_ic_chat_message->setPlaceholderText("Message");
ui_ic_chat_message->setPlaceholderText(tr("Message"));
ui_muted = new AOImage(ui_ic_chat_message, ao_app);
ui_muted->hide();
@ -193,15 +193,15 @@ Courtroom::Courtroom(AOApplication *p_ao_app) : QMainWindow()
ui_guard->hide();
ui_casing = new QCheckBox(this);
ui_casing->setChecked(ao_app->get_casing_enabled());
ui_casing->setText("Casing");
ui_casing->setText(tr("Casing"));
ui_casing->hide();
ui_showname_enable = new QCheckBox(this);
ui_showname_enable->setChecked(ao_app->get_showname_enabled_by_default());
ui_showname_enable->setText("Shownames");
ui_showname_enable->setText(tr("Shownames"));
ui_pre_non_interrupt = new QCheckBox(this);
ui_pre_non_interrupt->setText("No Intrpt");
ui_pre_non_interrupt->setText(tr("No Intrpt"));
ui_pre_non_interrupt->hide();
ui_custom_objection = new AOButton(this, ao_app);

View File

@ -29,8 +29,8 @@ void Discord::state_lobby()
{
DiscordRichPresence presence;
std::memset(&presence, 0, sizeof(presence));
presence.largeImageKey = "aa_cc_icon_new";
presence.largeImageText = "Omit!";
presence.largeImageKey = "ao2-logo";
presence.largeImageText = "Objection!";
presence.instance = 1;
presence.state = "In Lobby";
@ -44,8 +44,8 @@ void Discord::state_server(std::string name, std::string server_id)
DiscordRichPresence presence;
std::memset(&presence, 0, sizeof(presence));
presence.largeImageKey = "aa_cc_icon_new";
presence.largeImageText = "Omit!";
presence.largeImageKey = "ao2-logo";
presence.largeImageText = "Objection!";
presence.instance = 1;
auto timestamp = static_cast<int64_t>(std::time(nullptr));
@ -70,8 +70,8 @@ void Discord::state_character(std::string name)
DiscordRichPresence presence;
std::memset(&presence, 0, sizeof(presence));
presence.largeImageKey = "aa_cc_icon_new";
presence.largeImageText = "Omit!";
presence.largeImageKey = "ao2-logo";
presence.largeImageText = "Objection!";
presence.instance = 1;
presence.details = this->server_name.c_str();
presence.matchSecret = this->server_id.c_str();
@ -89,8 +89,8 @@ void Discord::state_spectate()
DiscordRichPresence presence;
std::memset(&presence, 0, sizeof(presence));
presence.largeImageKey = "aa_cc_icon_new";
presence.largeImageText = "Omit!";
presence.largeImageKey = "ao2-logo";
presence.largeImageText = "Objection!";
presence.instance = 1;
presence.details = this->server_name.c_str();
presence.matchSecret = this->server_id.c_str();

View File

@ -17,7 +17,7 @@ namespace AttorneyOnline {
class Discord
{
private:
const char* APPLICATION_ID = "474362730397302823";
const char* APPLICATION_ID = "399779271737868288";
std::string server_name, server_id;
int64_t timestamp;
public:

View File

@ -9,7 +9,7 @@ Lobby::Lobby(AOApplication *p_ao_app) : QMainWindow()
{
ao_app = p_ao_app;
this->setWindowTitle("Attorney Online 2 -- Case Café Custom Client");
this->setWindowTitle("Attorney Online 2");
ui_background = new AOImage(this, ao_app);
ui_public_servers = new AOButton(this, ao_app);
@ -98,7 +98,7 @@ void Lobby::set_widgets()
ui_connect->set_image("connect.png");
set_size_and_pos(ui_version, "version");
ui_version->setText("AO Version: " + ao_app->get_version_string() + " | CCCC Version: " + ao_app->get_cccc_version_string());
ui_version->setText("Version: " + ao_app->get_version_string());
set_size_and_pos(ui_about, "about");
ui_about->set_image("about.png");

View File

@ -241,7 +241,7 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
courtroom_loaded = false;
QString window_title = "Attorney Online 2 -- Case Café Custom Client";
QString window_title = "Attorney Online 2";
int selected_server = w_lobby->get_selected_server();
QString server_address = "", server_name = "";
@ -250,7 +250,7 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
if (selected_server >= 0 && selected_server < server_list.size()) {
auto info = server_list.at(selected_server);
server_name = info.name;
server_address = info.ip + info.port;
server_address = QString("%1:%2").arg(info.ip, info.port);
window_title += ": " + server_name;
}
}
@ -289,8 +289,6 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
if (!courtroom_constructed)
goto end;
int total_loading_size = char_list_size + evidence_list_size + music_list_size;
for (int n_element = 0 ; n_element < f_contents.size() ; n_element += 2)
{
if (f_contents.at(n_element).toInt() != loaded_chars)
@ -447,8 +445,6 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
if (!courtroom_constructed)
goto end;
int total_loading_size = char_list_size + evidence_list_size + music_list_size;
for (int n_element = 0 ; n_element < f_contents.size() ; ++n_element)
{
QStringList sub_elements = f_contents.at(n_element).split("&");
@ -479,7 +475,6 @@ void AOApplication::server_packet_received(AOPacket *p_packet)
if (!courtroom_constructed)
goto end;
int total_loading_size = char_list_size + evidence_list_size + music_list_size;
bool musics_time = false;
int areas = 0;

View File

@ -571,6 +571,6 @@ bool AOApplication::get_casing_cm_enabled()
QString AOApplication::get_casing_can_host_cases()
{
QString result = configini->value("casing_can_host_casees", "Turnabout Check Your Settings").value<QString>();
QString result = configini->value("casing_can_host_cases", "Turnabout Check Your Settings").value<QString>();
return result;
}