2121import net .raphimc .viaprotocolhack .util .VersionEnum ;
2222import net .raphimc .viaproxy .ViaProxy ;
2323import net .raphimc .viaproxy .cli .options .Options ;
24+ import net .raphimc .viaproxy .saves .impl .UISave ;
2425import net .raphimc .viaproxy .ui .AUITab ;
2526import net .raphimc .viaproxy .ui .ViaProxyUI ;
2627import net .raphimc .viaproxy .util .logging .Logger ;
@@ -77,6 +78,7 @@ public void mouseReleased(MouseEvent e) {
7778
7879 this .serverAddress = new JTextField ();
7980 this .serverAddress .setBounds (10 , 70 , 465 , 20 );
81+ ViaProxy .saveManager .uiSave .loadTextField ("server_address" , this .serverAddress );
8082 contentPane .add (this .serverAddress );
8183 }
8284 {
@@ -96,6 +98,7 @@ public Component getListCellRendererComponent(JList<?> list, Object value, int i
9698 return super .getListCellRendererComponent (list , value , index , isSelected , cellHasFocus );
9799 }
98100 });
101+ ViaProxy .saveManager .uiSave .loadComboBox ("server_version" , this .serverVersion );
99102 contentPane .add (this .serverVersion );
100103 }
101104 {
@@ -105,6 +108,7 @@ public Component getListCellRendererComponent(JList<?> list, Object value, int i
105108
106109 this .bindPort = new JSpinner (new SpinnerNumberModel (25568 , 1 , 65535 , 1 ));
107110 this .bindPort .setBounds (10 , 170 , 465 , 20 );
111+ ViaProxy .saveManager .uiSave .loadSpinner ("bind_port" , this .bindPort );
108112 contentPane .add (this .bindPort );
109113 }
110114 {
@@ -114,17 +118,20 @@ public Component getListCellRendererComponent(JList<?> list, Object value, int i
114118
115119 this .authMethod = new JComboBox <>(new String []{"Use no account" , "Use selected account" , "Use OpenAuthMod" });
116120 this .authMethod .setBounds (10 , 220 , 465 , 20 );
121+ ViaProxy .saveManager .uiSave .loadComboBox ("auth_method" , this .authMethod );
117122 contentPane .add (this .authMethod );
118123 }
119124 {
120125 this .betaCraftAuth = new JCheckBox ("BetaCraft Auth (Classic)" );
121126 this .betaCraftAuth .setBounds (10 , 250 , 150 , 20 );
127+ ViaProxy .saveManager .uiSave .loadCheckBox ("betacraft_auth" , this .betaCraftAuth );
122128 contentPane .add (this .betaCraftAuth );
123129 }
124130 {
125131 this .proxyOnlineMode = new JCheckBox ("Proxy Online Mode" );
126132 this .proxyOnlineMode .setBounds (350 , 250 , 465 , 20 );
127133 this .proxyOnlineMode .setToolTipText ("Enabling Proxy Online Mode requires your client to have a valid account.\n Proxy Online Mode allows your client to see skins on online mode servers and use the signed chat features." );
134+ ViaProxy .saveManager .uiSave .loadCheckBox ("proxy_online_mode" , this .proxyOnlineMode );
128135 contentPane .add (this .proxyOnlineMode );
129136 }
130137 {
@@ -145,6 +152,26 @@ public Component getListCellRendererComponent(JList<?> list, Object value, int i
145152 }
146153 }
147154
155+ @ Override
156+ public void setReady () {
157+ SwingUtilities .invokeLater (() -> {
158+ this .stateButton .setText ("Start" );
159+ this .stateButton .setEnabled (true );
160+ });
161+ }
162+
163+ @ Override
164+ public void onClose () {
165+ UISave save = ViaProxy .saveManager .uiSave ;
166+ save .put ("server_address" , this .serverAddress .getText ());
167+ save .put ("server_version" , String .valueOf (this .serverVersion .getSelectedIndex ()));
168+ save .put ("bind_port" , String .valueOf (this .bindPort .getValue ()));
169+ save .put ("auth_method" , String .valueOf (this .authMethod .getSelectedIndex ()));
170+ save .put ("betacraft_auth" , String .valueOf (this .betaCraftAuth .isSelected ()));
171+ save .put ("proxy_online_mode" , String .valueOf (this .proxyOnlineMode .isSelected ()));
172+ ViaProxy .saveManager .save ();
173+ }
174+
148175 private void setComponentsEnabled (final boolean state ) {
149176 this .serverAddress .setEnabled (state );
150177 this .serverVersion .setEnabled (state );
@@ -233,12 +260,4 @@ private void stop() {
233260 this .setComponentsEnabled (true );
234261 }
235262
236- @ Override
237- public void setReady () {
238- SwingUtilities .invokeLater (() -> {
239- this .stateButton .setText ("Start" );
240- this .stateButton .setEnabled (true );
241- });
242- }
243-
244263}
0 commit comments