diff --git a/launcher/Application.cpp b/launcher/Application.cpp
index 2da8ac56..5772d7ca 100644
--- a/launcher/Application.cpp
+++ b/launcher/Application.cpp
@@ -501,6 +501,7 @@ Application::Application(int &argc, char **argv) : QApplication(argc, argv)
// Theming
m_settings->registerSetting("IconTheme", QString("pe_colored"));
m_settings->registerSetting("ApplicationTheme", QString("system"));
+ m_settings->registerSetting("BackgroundCat", QString("kitteh"));
// Remembered state
m_settings->registerSetting("LastUsedGroupForNewInstance", QString());
diff --git a/launcher/resources/backgrounds/backgrounds.qrc b/launcher/resources/backgrounds/backgrounds.qrc
index 52921512..fb426707 100644
--- a/launcher/resources/backgrounds/backgrounds.qrc
+++ b/launcher/resources/backgrounds/backgrounds.qrc
@@ -1,8 +1,14 @@
- catbgrnd2.png
- catmas.png
- cattiversary.png
+ kitteh.png
+ kitteh-xmas.png
+ kitteh-bday.png
+ rory.png
+ rory-xmas.png
+ rory-bday.png
+ rory-flat.png
+ rory-flat-xmas.png
+ rory-flat-bday.png
diff --git a/launcher/resources/backgrounds/cattiversary.png b/launcher/resources/backgrounds/kitteh-bday.png
similarity index 100%
rename from launcher/resources/backgrounds/cattiversary.png
rename to launcher/resources/backgrounds/kitteh-bday.png
diff --git a/launcher/resources/backgrounds/catmas.png b/launcher/resources/backgrounds/kitteh-xmas.png
similarity index 100%
rename from launcher/resources/backgrounds/catmas.png
rename to launcher/resources/backgrounds/kitteh-xmas.png
diff --git a/launcher/resources/backgrounds/catbgrnd2.png b/launcher/resources/backgrounds/kitteh.png
similarity index 100%
rename from launcher/resources/backgrounds/catbgrnd2.png
rename to launcher/resources/backgrounds/kitteh.png
diff --git a/launcher/resources/backgrounds/rory-bday.png b/launcher/resources/backgrounds/rory-bday.png
new file mode 100644
index 00000000..66b88094
Binary files /dev/null and b/launcher/resources/backgrounds/rory-bday.png differ
diff --git a/launcher/resources/backgrounds/rory-flat-bday.png b/launcher/resources/backgrounds/rory-flat-bday.png
new file mode 100644
index 00000000..8a6e366d
Binary files /dev/null and b/launcher/resources/backgrounds/rory-flat-bday.png differ
diff --git a/launcher/resources/backgrounds/rory-flat-xmas.png b/launcher/resources/backgrounds/rory-flat-xmas.png
new file mode 100644
index 00000000..96c3ae38
Binary files /dev/null and b/launcher/resources/backgrounds/rory-flat-xmas.png differ
diff --git a/launcher/resources/backgrounds/rory-flat.png b/launcher/resources/backgrounds/rory-flat.png
new file mode 100644
index 00000000..ccec0662
Binary files /dev/null and b/launcher/resources/backgrounds/rory-flat.png differ
diff --git a/launcher/resources/backgrounds/rory-xmas.png b/launcher/resources/backgrounds/rory-xmas.png
new file mode 100644
index 00000000..107feb78
Binary files /dev/null and b/launcher/resources/backgrounds/rory-xmas.png differ
diff --git a/launcher/resources/backgrounds/rory.png b/launcher/resources/backgrounds/rory.png
new file mode 100644
index 00000000..577f4dce
Binary files /dev/null and b/launcher/resources/backgrounds/rory.png differ
diff --git a/launcher/ui/MainWindow.cpp b/launcher/ui/MainWindow.cpp
index eda234df..28eaa741 100644
--- a/launcher/ui/MainWindow.cpp
+++ b/launcher/ui/MainWindow.cpp
@@ -1560,15 +1560,13 @@ void MainWindow::setCatBackground(bool enabled)
QDateTime now = QDateTime::currentDateTime();
QDateTime birthday(QDate(now.date().year(), 11, 30), QTime(0, 0));
QDateTime xmas(QDate(now.date().year(), 12, 25), QTime(0, 0));
- QString cat;
+ QString cat = APPLICATION->settings()->get("BackgroundCat").toString();
+
if(non_stupid_abs(now.daysTo(xmas)) <= 4) {
- cat = "catmas";
+ cat += "-xmas";
}
else if (non_stupid_abs(now.daysTo(birthday)) <= 12) {
- cat = "cattiversary";
- }
- else {
- cat = "kitteh";
+ cat += "-bday";
}
view->setStyleSheet(QString(R"(
InstanceView
@@ -1576,10 +1574,11 @@ InstanceView
background-image: url(:/backgrounds/%1);
background-attachment: fixed;
background-clip: padding;
- background-position: top right;
+ background-position: bottom left;
background-repeat: none;
background-color:palette(base);
-})").arg(cat));
+})")
+ .arg(cat));
}
else
{
diff --git a/launcher/ui/pages/global/LauncherPage.cpp b/launcher/ui/pages/global/LauncherPage.cpp
index 4ae7509c..822c69b0 100644
--- a/launcher/ui/pages/global/LauncherPage.cpp
+++ b/launcher/ui/pages/global/LauncherPage.cpp
@@ -334,6 +334,18 @@ void LauncherPage::applySettings()
APPLICATION->setApplicationTheme(newAppTheme, false);
}
+ switch (ui->themeBackgroundCat->currentIndex()) {
+ case 0: // original cat
+ s->set("BackgroundCat", "kitteh");
+ break;
+ case 1: // rory the cat
+ s->set("BackgroundCat", "rory");
+ break;
+ case 2: // rory the cat flat edition
+ s->set("BackgroundCat", "rory-flat");
+ break;
+ }
+
s->set("MenuBarInsteadOfToolBar", ui->preferMenuBarCheckBox->isChecked());
// Console settings
@@ -425,6 +437,15 @@ void LauncherPage::loadSettings()
ui->themeComboBox->setCurrentIndex(9);
}
+ auto cat = s->get("BackgroundCat").toString();
+ if (cat == "kitteh") {
+ ui->themeBackgroundCat->setCurrentIndex(0);
+ } else if (cat == "rory") {
+ ui->themeBackgroundCat->setCurrentIndex(1);
+ } else if (cat == "rory-flat") {
+ ui->themeBackgroundCat->setCurrentIndex(2);
+ }
+
{
auto currentTheme = s->get("ApplicationTheme").toString();
auto themes = APPLICATION->getValidApplicationThemes();
diff --git a/launcher/ui/pages/global/LauncherPage.ui b/launcher/ui/pages/global/LauncherPage.ui
index 76a25f2e..6de644ee 100644
--- a/launcher/ui/pages/global/LauncherPage.ui
+++ b/launcher/ui/pages/global/LauncherPage.ui
@@ -340,6 +340,44 @@
+ -
+
+
+ C&at
+
+
+ themeBackgroundCat
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Qt::StrongFocus
+
+
-
+
+ Background Cat (from MultiMC)
+
+
+ -
+
+ Rory ID 11 (drawn by Ashtaka)
+
+
+ -
+
+ Rory ID 11 (flat edition, drawn by Ashtaka)
+
+
+
+