aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMangosArentLiterature <58055358+MangosArentLiterature@users.noreply.github.com>2021-04-28 00:43:06 -0500
committerMangosArentLiterature <58055358+MangosArentLiterature@users.noreply.github.com>2021-04-28 00:43:06 -0500
commit99d083d114844ce3f8274663da212784595421ed (patch)
tree23dc0f0b2d3737dffb259c105c02d4aae83373cb
parentf08a293a2f052806480984717cf2961f8b6824ac (diff)
Add default shownames
Adds a new setting to config.ini to set a default showname. This works similarly to default username, but for IC shownames, setting the client's showname automatically. Like default username, this has a 30 character limit. * Adds a new option to config.ini, default_showname. * Adds this setting to the options dialog. * Adds get_default_showname() for retrieving this showname. * Sets the showname box to this value upon joining a server.
-rw-r--r--include/aoapplication.h3
-rw-r--r--include/aooptionsdialog.h2
-rw-r--r--src/aooptionsdialog.cpp16
-rw-r--r--src/courtroom.cpp1
-rw-r--r--src/text_file_functions.cpp6
5 files changed, 28 insertions, 0 deletions
diff --git a/include/aoapplication.h b/include/aoapplication.h
index 16bbb9f2..77154750 100644
--- a/include/aoapplication.h
+++ b/include/aoapplication.h
@@ -278,6 +278,9 @@ public:
// Returns whether the user would like to have custom shownames on by default.
bool get_showname_enabled_by_default();
+ //Returns the showname the user may have set in config.ini.
+ QString get_default_showname();
+
// Returns the list of words in callwords.ini
QStringList get_call_words();
diff --git a/include/aooptionsdialog.h b/include/aooptionsdialog.h
index 45fc86ca..a6c8b8e9 100644
--- a/include/aooptionsdialog.h
+++ b/include/aooptionsdialog.h
@@ -78,6 +78,8 @@ private:
QLabel *ui_username_lbl;
QLabel *ui_showname_lbl;
QCheckBox *ui_showname_cb;
+ QLabel *ui_default_showname_lbl;
+ QLineEdit *ui_default_showname_textbox;
QFrame *ui_net_divider;
QLabel *ui_ms_lbl;
QLineEdit *ui_ms_textbox;
diff --git a/src/aooptionsdialog.cpp b/src/aooptionsdialog.cpp
index 1eb99ba3..1db0dec9 100644
--- a/src/aooptionsdialog.cpp
+++ b/src/aooptionsdialog.cpp
@@ -325,6 +325,20 @@ AOOptionsDialog::AOOptionsDialog(QWidget *parent, AOApplication *p_ao_app)
ui_gameplay_form->setWidget(row, QFormLayout::FieldRole, ui_showname_cb);
+ row +=1;
+ ui_default_showname_lbl = new QLabel(ui_form_layout_widget);
+ ui_default_showname_lbl->setText(tr("Default showname:"));
+ ui_default_showname_lbl->setToolTip(
+ tr("Your showname will be automatically set to this value "
+ "when you join a server."));
+
+ ui_gameplay_form->setWidget(row, QFormLayout::LabelRole, ui_default_showname_lbl);
+
+ ui_default_showname_textbox = new QLineEdit(ui_form_layout_widget);
+ ui_default_showname_textbox->setMaxLength(30);
+
+ ui_gameplay_form->setWidget(row, QFormLayout::FieldRole, ui_default_showname_textbox);
+
row += 1;
ui_net_divider = new QFrame(ui_form_layout_widget);
ui_net_divider->setFrameShape(QFrame::HLine);
@@ -961,6 +975,7 @@ void AOOptionsDialog::update_values() {
ui_sfx_volume_spinbox->setValue(ao_app->get_default_sfx());
ui_blips_volume_spinbox->setValue(ao_app->get_default_blip());
ui_bliprate_spinbox->setValue(ao_app->read_blip_rate());
+ ui_default_showname_textbox->setText(ao_app->get_default_showname());
}
void AOOptionsDialog::save_pressed()
@@ -987,6 +1002,7 @@ void AOOptionsDialog::save_pressed()
configini->setValue("chat_ratelimit", ui_chat_ratelimit_spinbox->value());
configini->setValue("default_username", ui_username_textbox->text());
configini->setValue("show_custom_shownames", ui_showname_cb->isChecked());
+ configini->setValue("default_showname", ui_default_showname_textbox->text());
configini->setValue("master", ui_ms_textbox->text());
configini->setValue("discord", ui_discord_cb->isChecked());
configini->setValue("language", ui_language_combobox->currentText().left(2));
diff --git a/src/courtroom.cpp b/src/courtroom.cpp
index 301b82e4..71fa828d 100644
--- a/src/courtroom.cpp
+++ b/src/courtroom.cpp
@@ -161,6 +161,7 @@ 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(tr("Showname"));
+ ui_ic_chat_name->setText(p_ao_app->get_default_showname());
ui_ic_chat_name->setObjectName("ui_ic_chat_name");
ui_ic_chat_message = new AOLineEdit(this);
diff --git a/src/text_file_functions.cpp b/src/text_file_functions.cpp
index 39ebb7e8..2c50e175 100644
--- a/src/text_file_functions.cpp
+++ b/src/text_file_functions.cpp
@@ -112,6 +112,12 @@ QString AOApplication::get_default_username()
return result;
}
+QString AOApplication::get_default_showname()
+{
+ QString result = configini->value("default_showname", "").value<QString>();
+ return result;
+}
+
QString AOApplication::get_audio_output_device()
{
QString result =