diff options
Diffstat (limited to 'application/setupwizard')
-rw-r--r-- | application/setupwizard/SetupWizard.cpp | 26 | ||||
-rw-r--r-- | application/setupwizard/SetupWizard.h | 39 | ||||
-rw-r--r-- | application/setupwizard/SetupWizard.ui | 255 |
3 files changed, 320 insertions, 0 deletions
diff --git a/application/setupwizard/SetupWizard.cpp b/application/setupwizard/SetupWizard.cpp new file mode 100644 index 00000000..b51b34a7 --- /dev/null +++ b/application/setupwizard/SetupWizard.cpp @@ -0,0 +1,26 @@ +#include "SetupWizard.h" + +enum Page +{ + Language, + Java, + Analytics, + Themes, + Accounts +}; +#include "ui_SetupWizard.h" + + +SetupWizard::SetupWizard(QWidget *parent):QWizard(parent), ui(new Ui::SetupWizard) +{ + ui->setupUi(this); +} + +SetupWizard::~SetupWizard() +{ +} + +bool SetupWizard::isRequired() +{ + return true; +} diff --git a/application/setupwizard/SetupWizard.h b/application/setupwizard/SetupWizard.h new file mode 100644 index 00000000..5dbe90a9 --- /dev/null +++ b/application/setupwizard/SetupWizard.h @@ -0,0 +1,39 @@ +/* Copyright 2016 MultiMC Contributors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#pragma once + +#include <QWizard> + +namespace Ui +{ +class SetupWizard; +} + +class SetupWizard : public QWizard +{ + Q_OBJECT + +public: /* con/destructors */ + explicit SetupWizard(QWidget *parent = 0); + virtual ~SetupWizard(); + +public: /* methods */ +static bool isRequired(); + +private: /* data */ + Ui::SetupWizard *ui = nullptr; +}; + diff --git a/application/setupwizard/SetupWizard.ui b/application/setupwizard/SetupWizard.ui new file mode 100644 index 00000000..5a4eb558 --- /dev/null +++ b/application/setupwizard/SetupWizard.ui @@ -0,0 +1,255 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>SetupWizard</class> + <widget class="QWizard" name="SetupWizard"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>630</width> + <height>667</height> + </rect> + </property> + <property name="windowTitle"> + <string>MultiMC Quick Setup</string> + </property> + <property name="options"> + <set>QWizard::NoCancelButtonOnLastPage</set> + </property> + <widget class="QWizardPage" name="welcomePage"> + <property name="title"> + <string>Welcome</string> + </property> + <property name="subTitle"> + <string>Hello and welcome the quick setup wizard!</string> + </property> + <attribute name="pageId"> + <string notr="true">Page::Language</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <widget class="QLabel" name="label"> + <property name="text"> + <string><html><head/><body><p>Choose your <s>adventure</s> language:</p></body></html></string> + </property> + </widget> + </item> + <item> + <widget class="QListView" name="languageView"/> + </item> + </layout> + </widget> + <widget class="QWizardPage" name="javaPage"> + <property name="title"> + <string>Java</string> + </property> + <property name="subTitle"> + <string>Your java settings need attention!</string> + </property> + <attribute name="pageId"> + <string notr="true">Page::Java</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_2"> + <item> + <widget class="QGroupBox" name="javaSettingsGroupBox"> + <property name="title"> + <string>Java Runtime</string> + </property> + <layout class="QGridLayout" name="gridLayout_3"> + <item row="4" column="1"> + <widget class="QTreeView" name="javaView"/> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="memoryGroupBox"> + <property name="title"> + <string>Memory</string> + </property> + <layout class="QGridLayout" name="gridLayout_2"> + <item row="1" column="1"> + <widget class="QSpinBox" name="maxMemSpinBox"> + <property name="toolTip"> + <string>The maximum amount of memory Minecraft is allowed to use.</string> + </property> + <property name="suffix"> + <string notr="true"> MB</string> + </property> + <property name="minimum"> + <number>512</number> + </property> + <property name="maximum"> + <number>65536</number> + </property> + <property name="singleStep"> + <number>128</number> + </property> + <property name="value"> + <number>1024</number> + </property> + </widget> + </item> + <item row="0" column="0"> + <widget class="QLabel" name="labelMinMem"> + <property name="text"> + <string>Minimum memory allocation:</string> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="labelMaxMem"> + <property name="text"> + <string>Maximum memory allocation:</string> + </property> + </widget> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="labelPermGen"> + <property name="text"> + <string notr="true">PermGen:</string> + </property> + </widget> + </item> + <item row="2" column="1"> + <widget class="QSpinBox" name="permGenSpinBox"> + <property name="toolTip"> + <string>The amount of memory available to store loaded Java classes.</string> + </property> + <property name="suffix"> + <string notr="true"> MB</string> + </property> + <property name="minimum"> + <number>64</number> + </property> + <property name="maximum"> + <number>999999999</number> + </property> + <property name="singleStep"> + <number>8</number> + </property> + <property name="value"> + <number>64</number> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="QSpinBox" name="minMemSpinBox"> + <property name="toolTip"> + <string>The amount of memory Minecraft is started with.</string> + </property> + <property name="suffix"> + <string notr="true"> MB</string> + </property> + <property name="minimum"> + <number>256</number> + </property> + <property name="maximum"> + <number>65536</number> + </property> + <property name="singleStep"> + <number>128</number> + </property> + <property name="value"> + <number>256</number> + </property> + </widget> + </item> + </layout> + </widget> + </item> + </layout> + </widget> + <widget class="QWizardPage" name="analyticsPage"> + <property name="title"> + <string>Analytics</string> + </property> + <property name="subTitle"> + <string>We track some anonymous statistics about users.</string> + </property> + <attribute name="pageId"> + <string notr="true">Page::Analytics</string> + </attribute> + <layout class="QVBoxLayout" name="verticalLayout_3"> + <item> + <widget class="QLabel" name="label_5"> + <property name="text"> + <string><html><head/><body> +<p>MultiMC sends anonymous usage statistics on every start of the application. This helps us decide what platforms and issues to focus on.</p> +<p>The data is processed by Google Analytics, see their <a href="https://support.google.com/analytics/answer/6004245?hl=en">article on the matter</a>.</p> +<p>The following data is collected:</p> +<ul> +<li>A random unique ID of the MultiMC installation.<br />It is stored in the application settings (multimc.cfg).</li> +<li>Anonymized IP address.<br />Last octet is set to 0 by Google and not stored.</li> +<li>MultiMC version.</li> +<li>Operating system name, version and architecture.</li> +<li>CPU architecture (kernel architecture on linux).</li> +<li>Size of system memory.</li> +<li>Java version, architecture and memory settings.</li> +</ul> +<p>The analytics will activate on next start, unless you disable them in the settings.</p> +<p>If we change the tracked information, analytics won't be active for the first run and you will see this page again.</p> +</body></html></string> + </property> + <property name="wordWrap"> + <bool>true</bool> + </property> + <property name="openExternalLinks"> + <bool>true</bool> + </property> + </widget> + </item> + </layout> + </widget> + <widget class="QWizardPage" name="themePage"> + <property name="title"> + <string>Themes and icons</string> + </property> + <property name="subTitle"> + <string>Change how things look.</string> + </property> + <attribute name="pageId"> + <string notr="true">Page::Themes</string> + </attribute> + <widget class="QLabel" name="label_2"> + <property name="geometry"> + <rect> + <x>230</x> + <y>70</y> + <width>151</width> + <height>71</height> + </rect> + </property> + <property name="text"> + <string>Put stuff here.</string> + </property> + </widget> + </widget> + <widget class="QWizardPage" name="accountsPage"> + <property name="title"> + <string>Minecraft accounts</string> + </property> + <property name="subTitle"> + <string>Add your account - or accounts.</string> + </property> + <attribute name="pageId"> + <string notr="true">Page::Accounts</string> + </attribute> + <widget class="QLabel" name="label_3"> + <property name="geometry"> + <rect> + <x>60</x> + <y>60</y> + <width>311</width> + <height>131</height> + </rect> + </property> + <property name="text"> + <string>Put existing accounts page here.</string> + </property> + </widget> + </widget> + </widget> + <resources/> + <connections/> +</ui> |