Pārlūkot izejas kodu

Added LegacyApp pointer to each class

Ivan Arkhipov 5 gadi atpakaļ
vecāks
revīzija
58c9db30d1

+ 3 - 2
gui/helpwidget.cpp

@@ -1,9 +1,10 @@
 #include "gui\helpwidget.h"
 #include "ui_helpwidget.h"
 
-HelpWidget::HelpWidget(QWidget *parent) :
+HelpWidget::HelpWidget(LegacyApp *_app, QWidget *parent) :
     QWidget(parent),
-    ui(new Ui::HelpWidget)
+    ui(new Ui::HelpWidget),
+    app(_app)
 {
     ui->setupUi(this);
 }

+ 4 - 1
gui/helpwidget.h

@@ -3,6 +3,8 @@
 
 #include <QWidget>
 
+class LegacyApp;
+
 namespace Ui {
 class HelpWidget;
 }
@@ -12,11 +14,12 @@ class HelpWidget : public QWidget
     Q_OBJECT
 
 public:
-    explicit HelpWidget(QWidget *parent = 0);
+    explicit HelpWidget(LegacyApp *_app, QWidget *parent = 0);
     ~HelpWidget();
 
 private:
     Ui::HelpWidget *ui;
+    LegacyApp *app;
 };
 
 #endif // HELPWIDGET_H

+ 5 - 5
gui/mainwindow.cpp

@@ -14,19 +14,19 @@ MainWindow::MainWindow(LegacyApp *app, QWidget *parent) :
 void MainWindow::Init() {
     ui->setupUi(this);
 
-    status_frame = new StatusWidget(this);
+    status_frame = new StatusWidget(app, this);
     ui->content_layout->addWidget(status_frame);
 
-    rusification_frame = new RusificationWidget(this);
+    rusification_frame = new RusificationWidget(app, this);
     ui->content_layout->addWidget(rusification_frame);
 
-    settings_frame = new SettingsWidget(this);
+    settings_frame = new SettingsWidget(app, this);
     ui->content_layout->addWidget(settings_frame);
 
-    news_frame = new NewsWidget(this);
+    news_frame = new NewsWidget(app, this);
     ui->content_layout->addWidget(news_frame);
 
-    help_frame = new HelpWidget(this);
+    help_frame = new HelpWidget(app, this);
     ui->content_layout->addWidget(help_frame);
 
     hideAllContentWidgets();

+ 3 - 2
gui/newswidget.cpp

@@ -1,9 +1,10 @@
 #include "gui\newswidget.h"
 #include "ui_newswidget.h"
 
-NewsWidget::NewsWidget(QWidget *parent) :
+NewsWidget::NewsWidget(LegacyApp *_app, QWidget *parent) :
     QWidget(parent),
-    ui(new Ui::NewsWidget)
+    ui(new Ui::NewsWidget),
+    app(_app)
 {
     ui->setupUi(this);
 }

+ 4 - 1
gui/newswidget.h

@@ -7,16 +7,19 @@ namespace Ui {
 class NewsWidget;
 }
 
+class LegacyApp;
+
 class NewsWidget : public QWidget
 {
     Q_OBJECT
 
 public:
-    explicit NewsWidget(QWidget *parent = 0);
+    explicit NewsWidget(LegacyApp *_app, QWidget *parent = 0);
     ~NewsWidget();
 
 private:
     Ui::NewsWidget *ui;
+    LegacyApp *app;
 };
 
 #endif // NEWSWIDGET_H

+ 3 - 2
gui/rusificationwidget.cpp

@@ -9,9 +9,10 @@ void doStuffWithEveryItemInMyTree( QTreeWidgetItem *item )
         doStuffWithEveryItemInMyTree( item->child(i) );
 }
 
-RusificationWidget::RusificationWidget(QWidget *parent) :
+RusificationWidget::RusificationWidget(LegacyApp *_app, QWidget *parent) :
     QWidget(parent),
-    ui(new Ui::RusificationWidget)
+    ui(new Ui::RusificationWidget),
+    app(_app)
 {
     ui->setupUi(this);
     ui->treeWidget->expandAll();

+ 4 - 1
gui/rusificationwidget.h

@@ -7,16 +7,19 @@ namespace Ui {
 class RusificationWidget;
 }
 
+class LegacyApp;
+
 class RusificationWidget : public QWidget
 {
     Q_OBJECT
 
 public:
-    explicit RusificationWidget(QWidget *parent = 0);
+    explicit RusificationWidget(LegacyApp *_app, QWidget *parent = 0);
     ~RusificationWidget();
 
 private:
     Ui::RusificationWidget *ui;
+    LegacyApp *app;
 };
 
 #endif // RUSIFICATIONWIDGET_H

+ 30 - 2
gui/settingswidget.cpp

@@ -1,9 +1,11 @@
 #include "gui\settingswidget.h"
 #include "ui_settingswidget.h"
+#include "legacyapp.h"
 
-SettingsWidget::SettingsWidget(QWidget *parent) :
+SettingsWidget::SettingsWidget(LegacyApp *_app, QWidget *parent) :
     QWidget(parent),
-    ui(new Ui::SettingsWidget)
+    ui(new Ui::SettingsWidget),
+    app(_app)
 {
     ui->setupUi(this);
 }
@@ -12,3 +14,29 @@ SettingsWidget::~SettingsWidget()
 {
     delete ui;
 }
+
+void SettingsWidget::UpdateFolderPath()
+{
+//    QString path =
+}
+
+void SettingsWidget::on_download_restrict_slider_valueChanged(int value)
+{
+    if (value >= 1024) {
+        double new_value = double(value) / 1024;
+        ui->download_speed_label_common->setText(QString::number(new_value, 'g', 2) + " Мб/с");
+    } else {
+        ui->download_speed_label_common->setText(QString::number(value) + " Кб/с");
+    }
+}
+
+void SettingsWidget::on_interface_scale_slider_valueChanged(int value)
+{
+    ui->interface_scale_value_common->setText(QString::number(value) + "%");
+    app->window.resize(900 * value / 100, 650 * value / 100);
+}
+
+void SettingsWidget::on_fonts_scale_slider_valueChanged(int value)
+{
+    ui->fonts_scale_value_common->setText(QString::number(value) + "%");
+}

+ 13 - 1
gui/settingswidget.h

@@ -7,16 +7,28 @@ namespace Ui {
 class SettingsWidget;
 }
 
+class LegacyApp;
+
 class SettingsWidget : public QWidget
 {
     Q_OBJECT
 
 public:
-    explicit SettingsWidget(QWidget *parent = 0);
+    explicit SettingsWidget(LegacyApp *_app, QWidget *parent = 0);
     ~SettingsWidget();
 
+private slots:
+    void UpdateFolderPath();
+
+    void on_download_restrict_slider_valueChanged(int value);
+
+    void on_interface_scale_slider_valueChanged(int value);
+
+    void on_fonts_scale_slider_valueChanged(int value);
+
 private:
     Ui::SettingsWidget *ui;
+    LegacyApp *app;
 };
 
 #endif // SETTINGSWIDGET_H

+ 548 - 14
gui/settingswidget.ui

@@ -6,33 +6,567 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>640</width>
-    <height>480</height>
+    <width>825</width>
+    <height>495</height>
    </rect>
   </property>
   <property name="windowTitle">
    <string>Form</string>
   </property>
+  <property name="styleSheet">
+   <string notr="true">color: white;</string>
+  </property>
   <layout class="QGridLayout" name="gridLayout">
-   <item row="0" column="0">
-    <widget class="QLabel" name="label">
-     <property name="font">
-      <font>
-       <family>Arial</family>
-       <pointsize>18</pointsize>
-      </font>
+   <property name="leftMargin">
+    <number>0</number>
+   </property>
+   <property name="topMargin">
+    <number>0</number>
+   </property>
+   <property name="rightMargin">
+    <number>0</number>
+   </property>
+   <property name="bottomMargin">
+    <number>0</number>
+   </property>
+   <property name="horizontalSpacing">
+    <number>0</number>
+   </property>
+   <property name="verticalSpacing">
+    <number>10</number>
+   </property>
+   <item row="3" column="1">
+    <widget class="QWidget" name="widget" native="true">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+     <property name="styleSheet">
+      <string notr="true">border-radius: 20px;
+background-color: rgba(30, 0, 0, 100);</string>
+     </property>
+     <layout class="QVBoxLayout" name="verticalLayout">
+      <property name="spacing">
+       <number>11</number>
+      </property>
+      <item>
+       <widget class="QLabel" name="main_settings_title">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <property name="text">
+         <string>Основные</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignCenter</set>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QCheckBox" name="data_protection_checkbox_common">
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <property name="text">
+         <string>Включить защиту данных русификации при обновлении игры</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QCheckBox" name="restore_checkbox_common">
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <property name="text">
+         <string>Включить авто-восстановление из резервной копии в случае поломки</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QCheckBox" name="download_updates_checkbox_common">
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <property name="text">
+         <string>Включить авто-скачивание обновлений русификации</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QWidget" name="widget_3" native="true">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="minimumSize">
+         <size>
+          <width>0</width>
+          <height>33</height>
+         </size>
+        </property>
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <layout class="QHBoxLayout" name="horizontalLayout_2">
+         <property name="leftMargin">
+          <number>0</number>
+         </property>
+         <property name="topMargin">
+          <number>0</number>
+         </property>
+         <item>
+          <widget class="QCheckBox" name="restrict_download_speed_checkbox_common">
+           <property name="sizePolicy">
+            <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="styleSheet">
+            <string notr="true">
+background-color: none;</string>
+           </property>
+           <property name="text">
+            <string>Ограничивать скорость скачивания</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QSlider" name="download_restrict_slider">
+           <property name="sizePolicy">
+            <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="minimumSize">
+            <size>
+             <width>200</width>
+             <height>0</height>
+            </size>
+           </property>
+           <property name="styleSheet">
+            <string notr="true">
+background-color: none;</string>
+           </property>
+           <property name="minimum">
+            <number>64</number>
+           </property>
+           <property name="maximum">
+            <number>4096</number>
+           </property>
+           <property name="singleStep">
+            <number>64</number>
+           </property>
+           <property name="pageStep">
+            <number>64</number>
+           </property>
+           <property name="value">
+            <number>64</number>
+           </property>
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QLabel" name="download_speed_label_common">
+           <property name="sizePolicy">
+            <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="styleSheet">
+            <string notr="true">
+background-color: none;</string>
+           </property>
+           <property name="text">
+            <string>64 Кб/с</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
+     </layout>
+    </widget>
+   </item>
+   <item row="2" column="1">
+    <widget class="QWidget" name="widget_6" native="true">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+     <property name="styleSheet">
+      <string notr="true">border-radius: 20px;
+background-color: rgba(30, 0, 0, 100);</string>
+     </property>
+     <layout class="QVBoxLayout" name="verticalLayout_3">
+      <property name="spacing">
+       <number>11</number>
+      </property>
+      <item>
+       <widget class="QLabel" name="management_title">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <property name="text">
+         <string>Управление</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignCenter</set>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QPushButton" name="patch_all_button">
+        <property name="styleSheet">
+         <string notr="true">QPushButton {
+	color: black;
+    border: 2px solid #8f8f91;
+    border-radius: 6px;
+    background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
+                                      stop: 0 #f6f7fa, stop: 1 #dadbde);
+    min-width: 80px;
+}
+ 
+QPushButton: pressed {
+    background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
+                                      stop: 0 #dadbde, stop: 1 #f6f7fa);
+}
+ 
+QPushButton:flat {
+    border: none; /* no border for a flat push button */
+}
+ 
+QPushButton:default {
+    border-color: navy; /* make the default button prominent */
+}</string>
+        </property>
+        <property name="text">
+         <string>Установить все патчи заново</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QPushButton" name="restore_button">
+        <property name="autoFillBackground">
+         <bool>false</bool>
+        </property>
+        <property name="styleSheet">
+         <string notr="true">QPushButton {
+	color: black;
+    border: 2px solid #8f8f91;
+    border-radius: 6px;
+    background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
+                                      stop: 0 #f6f7fa, stop: 1 #dadbde);
+    min-width: 80px;
+}
+ 
+QPushButton: pressed {
+    background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,
+                                      stop: 0 #dadbde, stop: 1 #f6f7fa);
+}
+ 
+QPushButton:flat {
+    border: none; /* no border for a flat push button */
+}
+ 
+QPushButton:default {
+    border-color: navy; /* make the default button prominent */
+}</string>
+        </property>
+        <property name="text">
+         <string>Восстановить данные из резервной копии</string>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </widget>
+   </item>
+   <item row="4" column="1">
+    <widget class="QWidget" name="widget_2" native="true">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
      </property>
      <property name="styleSheet">
-      <string notr="true">color: white;</string>
+      <string notr="true">border-radius: 20px;
+background-color: rgba(30, 0, 0, 100);</string>
      </property>
-     <property name="text">
-      <string>Окно &quot;Настройки&quot;</string>
+     <layout class="QVBoxLayout" name="verticalLayout_2">
+      <property name="spacing">
+       <number>11</number>
+      </property>
+      <item>
+       <widget class="QLabel" name="interface_label_title">
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <property name="text">
+         <string>Внешний вид:</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignCenter</set>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QWidget" name="widget_4" native="true">
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <layout class="QHBoxLayout" name="horizontalLayout_3">
+         <item>
+          <widget class="QLabel" name="interface_scale_common">
+           <property name="sizePolicy">
+            <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="text">
+            <string>Масштаб интерфейса:</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QSlider" name="interface_scale_slider">
+           <property name="sizePolicy">
+            <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="minimumSize">
+            <size>
+             <width>200</width>
+             <height>0</height>
+            </size>
+           </property>
+           <property name="minimum">
+            <number>75</number>
+           </property>
+           <property name="maximum">
+            <number>150</number>
+           </property>
+           <property name="value">
+            <number>100</number>
+           </property>
+           <property name="tracking">
+            <bool>true</bool>
+           </property>
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+           <property name="invertedControls">
+            <bool>false</bool>
+           </property>
+           <property name="tickPosition">
+            <enum>QSlider::NoTicks</enum>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QLabel" name="interface_scale_value_common">
+           <property name="text">
+            <string>100%</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
+      <item>
+       <widget class="QWidget" name="widget_5" native="true">
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <layout class="QHBoxLayout" name="horizontalLayout_4">
+         <item>
+          <widget class="QLabel" name="fonts_scale_common">
+           <property name="sizePolicy">
+            <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="text">
+            <string>Размер шрифтов:</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QSlider" name="fonts_scale_slider">
+           <property name="sizePolicy">
+            <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+             <horstretch>0</horstretch>
+             <verstretch>0</verstretch>
+            </sizepolicy>
+           </property>
+           <property name="minimumSize">
+            <size>
+             <width>200</width>
+             <height>0</height>
+            </size>
+           </property>
+           <property name="minimum">
+            <number>75</number>
+           </property>
+           <property name="maximum">
+            <number>150</number>
+           </property>
+           <property name="value">
+            <number>100</number>
+           </property>
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QLabel" name="fonts_scale_value_common">
+           <property name="text">
+            <string>100%</string>
+           </property>
+          </widget>
+         </item>
+        </layout>
+       </widget>
+      </item>
+     </layout>
+    </widget>
+   </item>
+   <item row="1" column="1">
+    <widget class="QWidget" name="game_folder_widget" native="true">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
      </property>
-     <property name="alignment">
-      <set>Qt::AlignCenter</set>
+     <property name="styleSheet">
+      <string notr="true">border-radius: 20px;
+background-color: rgba(30, 0, 0, 100);</string>
      </property>
+     <layout class="QHBoxLayout" name="horizontalLayout">
+      <item>
+       <widget class="QLabel" name="folder_label_title">
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <property name="text">
+         <string>Папка с данными игры:</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLabel" name="folder_value_common">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="styleSheet">
+         <string notr="true">
+background-color: none;</string>
+        </property>
+        <property name="text">
+         <string>D:\Programming\SourceRepos\Legacy_v2</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QPushButton" name="change_folder_button">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="minimumSize">
+         <size>
+          <width>36</width>
+          <height>32</height>
+         </size>
+        </property>
+        <property name="styleSheet">
+         <string notr="true">border-image: url(:/assets/folder.png);
+
+background-color: none;</string>
+        </property>
+        <property name="text">
+         <string/>
+        </property>
+       </widget>
+      </item>
+     </layout>
     </widget>
    </item>
+   <item row="1" column="0" rowspan="4">
+    <spacer name="horizontalSpacer">
+     <property name="orientation">
+      <enum>Qt::Horizontal</enum>
+     </property>
+     <property name="sizeType">
+      <enum>QSizePolicy::Preferred</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>100</width>
+       <height>436</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+   <item row="1" column="2" rowspan="4">
+    <spacer name="horizontalSpacer_2">
+     <property name="orientation">
+      <enum>Qt::Horizontal</enum>
+     </property>
+     <property name="sizeType">
+      <enum>QSizePolicy::Preferred</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>100</width>
+       <height>436</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
   </layout>
  </widget>
  <resources/>

+ 3 - 2
gui/statuswidget.cpp

@@ -1,9 +1,10 @@
 #include "statuswidget.h"
 #include "ui_statuswidget.h"
 
-StatusWidget::StatusWidget(QWidget *parent) :
+StatusWidget::StatusWidget(LegacyApp *_app, QWidget *parent) :
     QWidget(parent),
-    ui(new Ui::StatusWidget)
+    ui(new Ui::StatusWidget),
+    app(_app)
 {
     ui->setupUi(this);
 }

+ 4 - 1
gui/statuswidget.h

@@ -7,16 +7,19 @@ namespace Ui {
 class StatusWidget;
 }
 
+class LegacyApp;
+
 class StatusWidget : public QWidget
 {
     Q_OBJECT
 
 public:
-    explicit StatusWidget(QWidget *parent = 0);
+    explicit StatusWidget(LegacyApp *_app, QWidget *parent = 0);
     ~StatusWidget();
 
 private:
     Ui::StatusWidget *ui;
+    LegacyApp *app;
 };
 
 #endif // STATUSWIDGET_H

+ 65 - 13
gui/statuswidget.ui

@@ -6,7 +6,7 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>675</width>
+    <width>696</width>
     <height>382</height>
    </rect>
   </property>
@@ -31,7 +31,15 @@ background-color: rgba(30, 0, 0, 100);</string>
            </property>
            <layout class="QHBoxLayout" name="horizontalLayout_4">
             <item>
-             <widget class="QLabel" name="label_4">
+             <widget class="QLabel" name="label_4_title">
+              <property name="font">
+               <font>
+                <family>Arial</family>
+                <pointsize>8</pointsize>
+                <weight>75</weight>
+                <bold>true</bold>
+               </font>
+              </property>
               <property name="styleSheet">
                <string notr="true">color: rgb(255, 255, 255); background-color:none;</string>
               </property>
@@ -41,7 +49,12 @@ background-color: rgba(30, 0, 0, 100);</string>
              </widget>
             </item>
             <item>
-             <widget class="QLabel" name="label_5">
+             <widget class="QLabel" name="label_5_common">
+              <property name="font">
+               <font>
+                <family>Arial</family>
+               </font>
+              </property>
               <property name="styleSheet">
                <string notr="true">color: rgb(85, 170, 255); background-color:none;</string>
               </property>
@@ -83,7 +96,15 @@ background-color: rgba(30, 0, 0, 100);</string>
            </property>
            <layout class="QHBoxLayout" name="horizontalLayout_5">
             <item>
-             <widget class="QLabel" name="label_8">
+             <widget class="QLabel" name="label_8_title">
+              <property name="font">
+               <font>
+                <family>Arial</family>
+                <pointsize>8</pointsize>
+                <weight>75</weight>
+                <bold>true</bold>
+               </font>
+              </property>
               <property name="styleSheet">
                <string notr="true">color: rgb(255, 255, 255); background-color:none;</string>
               </property>
@@ -93,7 +114,12 @@ background-color: rgba(30, 0, 0, 100);</string>
              </widget>
             </item>
             <item>
-             <widget class="QLabel" name="label_9">
+             <widget class="QLabel" name="label_9_common">
+              <property name="font">
+               <font>
+                <family>Arial</family>
+               </font>
+              </property>
               <property name="styleSheet">
                <string notr="true">color: rgb(0, 170, 0); background-color:none;</string>
               </property>
@@ -132,7 +158,15 @@ background-color: rgba(30, 0, 0, 100);</string>
            </property>
            <layout class="QHBoxLayout" name="horizontalLayout_6">
             <item>
-             <widget class="QLabel" name="label_2">
+             <widget class="QLabel" name="label_2_title">
+              <property name="font">
+               <font>
+                <family>Arial</family>
+                <pointsize>8</pointsize>
+                <weight>75</weight>
+                <bold>true</bold>
+               </font>
+              </property>
               <property name="styleSheet">
                <string notr="true">color: rgb(255, 255, 255); background-color:none;</string>
               </property>
@@ -142,7 +176,12 @@ background-color: rgba(30, 0, 0, 100);</string>
              </widget>
             </item>
             <item>
-             <widget class="QLabel" name="label_3">
+             <widget class="QLabel" name="label_3_common">
+              <property name="font">
+               <font>
+                <family>Arial</family>
+               </font>
+              </property>
               <property name="styleSheet">
                <string notr="true">color: rgb(85, 170, 255); background-color:none;</string>
               </property>
@@ -181,7 +220,15 @@ background-color: rgba(30, 0, 0, 100);</string>
            </property>
            <layout class="QHBoxLayout" name="horizontalLayout_7">
             <item>
-             <widget class="QLabel" name="label_6">
+             <widget class="QLabel" name="label_6_title">
+              <property name="font">
+               <font>
+                <family>Arial</family>
+                <pointsize>8</pointsize>
+                <weight>75</weight>
+                <bold>true</bold>
+               </font>
+              </property>
               <property name="styleSheet">
                <string notr="true">color: rgb(255, 255, 255); background-color:none;</string>
               </property>
@@ -191,7 +238,12 @@ background-color: rgba(30, 0, 0, 100);</string>
              </widget>
             </item>
             <item>
-             <widget class="QLabel" name="label_7">
+             <widget class="QLabel" name="label_7_common">
+              <property name="font">
+               <font>
+                <family>Arial</family>
+               </font>
+              </property>
               <property name="styleSheet">
                <string notr="true">color: rgb(255, 85, 0); background-color:none;</string>
               </property>
@@ -293,8 +345,10 @@ background-color: rgba(30, 0, 0, 100);</string>
            </property>
            <property name="font">
             <font>
-             <family>Trebuchet MS</family>
+             <family>Times New Roman</family>
              <pointsize>12</pointsize>
+             <weight>75</weight>
+             <bold>true</bold>
             </font>
            </property>
            <property name="autoFillBackground">
@@ -365,7 +419,7 @@ color: rgb(85, 0, 0);</string>
         </property>
         <layout class="QHBoxLayout" name="horizontalLayout_3">
          <item>
-          <widget class="QLabel" name="status_label">
+          <widget class="QLabel" name="status_label_supertitle">
            <property name="font">
             <font>
              <family>Times New Roman</family>
@@ -430,8 +484,6 @@ color: rgb(85, 0, 0);</string>
     </widget>
    </item>
   </layout>
-  <zorder>right_column_widget</zorder>
-  <zorder>left_column_widget</zorder>
  </widget>
  <resources/>
  <connections/>

+ 1 - 2
include/legacyapp.h

@@ -16,7 +16,6 @@ class FileDownloader;
 class LegacyApp : public QObject
 {
     Q_OBJECT
-    friend class MainWindow;
 
 public:
     explicit LegacyApp(QObject *parent = nullptr);
@@ -33,7 +32,7 @@ private slots:
     void DownloadFinished();
 
 
-private:
+public:
     MainWindow window;
 
     LOTRO_DAT::DatFile client_local_dat;

+ 2 - 2
src/legacyapp.cpp

@@ -4,8 +4,8 @@
 #include <QtConcurrent/QtConcurrent>
 
 LegacyApp::LegacyApp(QObject *parent) : QObject(parent), window(this),
-    client_local_dat(), properties(qApp->applicationDirPath() + "/legacy_v2.ini", QSettings::IniFormat),
-    client_local_dat_busy(false)
+    client_local_dat(), client_local_dat_busy(false),
+    properties(qApp->applicationDirPath() + "/legacy_v2.ini", QSettings::IniFormat)
 {}
 
 void LegacyApp::Init()