Launcher: Split up Options/Updates to two buttons on main menu

This commit is contained in:
UnknownShadow200 2022-08-23 23:13:58 +10:00
parent 345904244f
commit c43495b293

View File

@ -647,7 +647,7 @@ void MFAScreen_SetActive(void) {
*#########################################################################################################################*/ *#########################################################################################################################*/
static struct MainScreen { static struct MainScreen {
LScreen_Layout LScreen_Layout
struct LButton btnLogin, btnResume, btnDirect, btnSPlayer, btnOptions, btnRegister; struct LButton btnLogin, btnResume, btnDirect, btnSPlayer, btnRegister, btnOptions, btnUpdates;
struct LInput iptUsername, iptPassword; struct LInput iptUsername, iptPassword;
struct LLabel lblStatus, lblUpdate; struct LLabel lblStatus, lblUpdate;
cc_bool signingIn; cc_bool signingIn;
@ -658,7 +658,8 @@ static struct LWidget* main_widgets[] = {
(struct LWidget*)&MainScreen.btnLogin, (struct LWidget*)&MainScreen.btnResume, (struct LWidget*)&MainScreen.btnLogin, (struct LWidget*)&MainScreen.btnResume,
(struct LWidget*)&MainScreen.lblStatus, (struct LWidget*)&MainScreen.btnDirect, (struct LWidget*)&MainScreen.lblStatus, (struct LWidget*)&MainScreen.btnDirect,
(struct LWidget*)&MainScreen.btnSPlayer, (struct LWidget*)&MainScreen.lblUpdate, (struct LWidget*)&MainScreen.btnSPlayer, (struct LWidget*)&MainScreen.lblUpdate,
(struct LWidget*)&MainScreen.btnRegister, (struct LWidget*)&MainScreen.btnOptions (struct LWidget*)&MainScreen.btnRegister, (struct LWidget*)&MainScreen.btnOptions,
(struct LWidget*)&MainScreen.btnUpdates
}; };
LAYOUTS main_iptUsername[] = { { ANCHOR_CENTRE_MIN, -140 }, { ANCHOR_CENTRE, -120 } }; LAYOUTS main_iptUsername[] = { { ANCHOR_CENTRE_MIN, -140 }, { ANCHOR_CENTRE, -120 } };
@ -672,8 +673,9 @@ LAYOUTS main_btnDirect[] = { { ANCHOR_CENTRE, 0 }, { ANCHOR_CENTRE, 60 } };
LAYOUTS main_btnSPlayer[] = { { ANCHOR_CENTRE, 0 }, { ANCHOR_CENTRE, 110 } }; LAYOUTS main_btnSPlayer[] = { { ANCHOR_CENTRE, 0 }, { ANCHOR_CENTRE, 110 } };
LAYOUTS main_lblUpdate[] = { { ANCHOR_MAX, 10 }, { ANCHOR_MAX, 45 } }; LAYOUTS main_lblUpdate[] = { { ANCHOR_MAX, 10 }, { ANCHOR_MAX, 45 } };
LAYOUTS main_btnOptions[] = { { ANCHOR_MAX, 6 }, { ANCHOR_MAX, 6 } };
LAYOUTS main_btnRegister[] = { { ANCHOR_MIN, 6 }, { ANCHOR_MAX, 6 } }; LAYOUTS main_btnRegister[] = { { ANCHOR_MIN, 6 }, { ANCHOR_MAX, 6 } };
LAYOUTS main_btnOptions[] = { { ANCHOR_CENTRE, 0 }, { ANCHOR_MAX, 6 } };
LAYOUTS main_btnUpdates[] = { { ANCHOR_MAX, 6 }, { ANCHOR_MAX, 6 } };
struct ResumeInfo { struct ResumeInfo {
@ -805,13 +807,15 @@ static void MainScreen_Init(struct LScreen* s_) {
LLabel_Init( &s->lblUpdate, "&eChecking..", main_lblUpdate); LLabel_Init( &s->lblUpdate, "&eChecking..", main_lblUpdate);
LButton_Init(&s->btnRegister, 100, 35, "Register", main_btnRegister); LButton_Init(&s->btnRegister, 100, 35, "Register", main_btnRegister);
LButton_Init(&s->btnOptions, 100, 35, "Options", main_btnOptions); LButton_Init(&s->btnOptions, 100, 35, "Options", main_btnOptions);
LButton_Init(&s->btnUpdates, 100, 35, "Updates", main_btnUpdates);
s->btnLogin.OnClick = MainScreen_Login; s->btnLogin.OnClick = MainScreen_Login;
s->btnResume.OnClick = MainScreen_Resume; s->btnResume.OnClick = MainScreen_Resume;
s->btnDirect.OnClick = SwitchToDirectConnect; s->btnDirect.OnClick = SwitchToDirectConnect;
s->btnSPlayer.OnClick = MainScreen_Singleplayer; s->btnSPlayer.OnClick = MainScreen_Singleplayer;
s->btnOptions.OnClick = SwitchToSettings;
s->btnRegister.OnClick = MainScreen_Register; s->btnRegister.OnClick = MainScreen_Register;
s->btnOptions.OnClick = SwitchToSettings;
s->btnUpdates.OnClick = SwitchToUpdates;
s->btnResume.OnHover = MainScreen_ResumeHover; s->btnResume.OnHover = MainScreen_ResumeHover;
s->btnResume.OnUnhover = MainScreen_ResumeUnhover; s->btnResume.OnUnhover = MainScreen_ResumeUnhover;
@ -1326,15 +1330,14 @@ void ServersScreen_SetActive(void) {
*#########################################################################################################################*/ *#########################################################################################################################*/
static struct SettingsScreen { static struct SettingsScreen {
LScreen_Layout LScreen_Layout
struct LButton btnUpdates, btnMode, btnColours, btnBack; struct LButton btnMode, btnColours, btnBack;
struct LLabel lblUpdates, lblMode, lblColours; struct LLabel lblMode, lblColours;
struct LCheckbox cbExtra, cbEmpty, cbScale; struct LCheckbox cbExtra, cbEmpty, cbScale;
struct LLine sep; struct LLine sep;
} SettingsScreen; } SettingsScreen;
static struct LWidget* settings_widgets[] = { static struct LWidget* settings_widgets[] = {
(struct LWidget*)&SettingsScreen.sep, (struct LWidget*)&SettingsScreen.sep,
(struct LWidget*)&SettingsScreen.btnUpdates, (struct LWidget*)&SettingsScreen.lblUpdates,
(struct LWidget*)&SettingsScreen.btnMode, (struct LWidget*)&SettingsScreen.lblMode, (struct LWidget*)&SettingsScreen.btnMode, (struct LWidget*)&SettingsScreen.lblMode,
(struct LWidget*)&SettingsScreen.btnColours, (struct LWidget*)&SettingsScreen.lblColours, (struct LWidget*)&SettingsScreen.btnColours, (struct LWidget*)&SettingsScreen.lblColours,
(struct LWidget*)&SettingsScreen.cbExtra, (struct LWidget*)&SettingsScreen.cbEmpty, (struct LWidget*)&SettingsScreen.cbExtra, (struct LWidget*)&SettingsScreen.cbEmpty,
@ -1342,14 +1345,11 @@ static struct LWidget* settings_widgets[] = {
}; };
static struct LWidget* settings_classic[] = { static struct LWidget* settings_classic[] = {
(struct LWidget*)&SettingsScreen.sep, (struct LWidget*)&SettingsScreen.sep,
(struct LWidget*)&SettingsScreen.btnUpdates, (struct LWidget*)&SettingsScreen.lblUpdates,
(struct LWidget*)&SettingsScreen.btnMode, (struct LWidget*)&SettingsScreen.lblMode, (struct LWidget*)&SettingsScreen.btnMode, (struct LWidget*)&SettingsScreen.lblMode,
(struct LWidget*)&SettingsScreen.cbExtra, (struct LWidget*)&SettingsScreen.cbEmpty, (struct LWidget*)&SettingsScreen.cbExtra, (struct LWidget*)&SettingsScreen.cbEmpty,
(struct LWidget*)&SettingsScreen.btnBack, (struct LWidget*)&SettingsScreen.cbScale (struct LWidget*)&SettingsScreen.btnBack, (struct LWidget*)&SettingsScreen.cbScale
}; };
LAYOUTS set_btnUpdates[] = { { ANCHOR_CENTRE, -135 }, { ANCHOR_CENTRE, -120 } };
LAYOUTS set_lblUpdates[] = { { ANCHOR_CENTRE_MIN, -70 }, { ANCHOR_CENTRE, -120 } };
LAYOUTS set_btnMode[] = { { ANCHOR_CENTRE, -135 }, { ANCHOR_CENTRE, -70 } }; LAYOUTS set_btnMode[] = { { ANCHOR_CENTRE, -135 }, { ANCHOR_CENTRE, -70 } };
LAYOUTS set_lblMode[] = { { ANCHOR_CENTRE_MIN, -70 }, { ANCHOR_CENTRE, -70 } }; LAYOUTS set_lblMode[] = { { ANCHOR_CENTRE_MIN, -70 }, { ANCHOR_CENTRE, -70 } };
LAYOUTS set_btnColours[] = { { ANCHOR_CENTRE, -135 }, { ANCHOR_CENTRE, -20 } }; LAYOUTS set_btnColours[] = { { ANCHOR_CENTRE, -135 }, { ANCHOR_CENTRE, -20 } };
@ -1392,9 +1392,6 @@ static void SettingsScreen_Init(struct LScreen* s_) {
struct SettingsScreen* s = (struct SettingsScreen*)s_; struct SettingsScreen* s = (struct SettingsScreen*)s_;
LLine_Init( &s->sep, 380, set_sep); LLine_Init( &s->sep, 380, set_sep);
LButton_Init(&s->btnUpdates, 110, 35, "Updates", set_btnUpdates);
LLabel_Init( &s->lblUpdates, "&eGet the latest stuff", set_lblUpdates);
LButton_Init(&s->btnMode, 110, 35, "Mode", set_btnMode); LButton_Init(&s->btnMode, 110, 35, "Mode", set_btnMode);
LLabel_Init( &s->lblMode, "&eChange the enabled features", set_lblMode); LLabel_Init( &s->lblMode, "&eChange the enabled features", set_lblMode);
@ -1418,7 +1415,6 @@ static void SettingsScreen_Init(struct LScreen* s_) {
s->cbScale.ValueChanged = SettingsScreen_DPIScaling; s->cbScale.ValueChanged = SettingsScreen_DPIScaling;
s->btnMode.OnClick = SwitchToChooseMode; s->btnMode.OnClick = SwitchToChooseMode;
s->btnUpdates.OnClick = SwitchToUpdates;
s->btnColours.OnClick = SwitchToThemes; s->btnColours.OnClick = SwitchToThemes;
s->btnBack.OnClick = SwitchToMain; s->btnBack.OnClick = SwitchToMain;
} }
@ -1727,7 +1723,7 @@ static void UpdatesScreen_Init(struct LScreen* s_) {
s->btnRel[1].OnClick = UpdatesScreen_Rel_1; s->btnRel[1].OnClick = UpdatesScreen_Rel_1;
s->btnDev[0].OnClick = UpdatesScreen_Dev_0; s->btnDev[0].OnClick = UpdatesScreen_Dev_0;
s->btnDev[1].OnClick = UpdatesScreen_Dev_1; s->btnDev[1].OnClick = UpdatesScreen_Dev_1;
s->btnBack.OnClick = SwitchToSettings; s->btnBack.OnClick = SwitchToMain;
} }
static void UpdatesScreen_Show(struct LScreen* s_) { static void UpdatesScreen_Show(struct LScreen* s_) {