mirror of
https://github.com/HMCL-dev/HMCL.git
synced 2025-03-31 18:10:26 +08:00
New animationsublime_text launch4jlinux.cpp
This commit is contained in:
parent
68a734adb0
commit
b3fb372e3b
@ -80,7 +80,8 @@ jar {
|
||||
}
|
||||
|
||||
launch4j {
|
||||
launch4jCmd = 'D:\\Develop\\Java\\Launch4j\\launch4j.exe'
|
||||
//launch4jCmd = 'D:\\Develop\\Java\\Launch4j\\launch4j.exe'
|
||||
launch4jCmd = '/home/huangyuhui/softwares/launch4j/launch4j'
|
||||
supportUrl = 'http://www.mcbbs.net/thread-142335-1-1.html'
|
||||
jreMinVersion = '1.6.0'
|
||||
|
||||
|
@ -104,7 +104,7 @@ public final class Main implements Runnable {
|
||||
}
|
||||
|
||||
public static String launcherName = "Hello Minecraft! Launcher";
|
||||
public static byte firstVer = 2, secondVer = 3, thirdVer = 5, forthVer = 5;
|
||||
public static byte firstVer = 2, secondVer = 3, thirdVer = 5, forthVer = 6;
|
||||
public static int minimumLauncherVersion = 16;
|
||||
//public static Proxy PROXY;
|
||||
|
||||
|
@ -46,16 +46,16 @@ public class CrashReporter implements Thread.UncaughtExceptionHandler {
|
||||
|
||||
public boolean checkThrowable(Throwable e) {
|
||||
String s = StrUtils.getStackTrace(e);
|
||||
if (s.contains("MessageBox") || s.contains("AWTError")) {
|
||||
if (s.contains("MessageBox") || s.contains("AWTError"))
|
||||
return false;
|
||||
} else if (s.contains("JFileChooser") || s.contains("JceSecurityManager")) {
|
||||
else if (s.contains("JFileChooser") || s.contains("JceSecurityManager")) {
|
||||
System.out.println("Is not your operating system installed completely? ");
|
||||
return false;
|
||||
}
|
||||
if (s.contains("sun.awt.shell.Win32ShellFolder2") || s.contains("UnsatisfiedLinkError")) {
|
||||
System.out.println(C.i18n("crash.user_fault"));
|
||||
try {
|
||||
MessageBox.Show(C.i18n("crash.user_fault"));
|
||||
showMessage(C.i18n("crash.user_fault"));
|
||||
} catch (Throwable t) {
|
||||
t.printStackTrace();
|
||||
}
|
||||
@ -63,7 +63,7 @@ public class CrashReporter implements Thread.UncaughtExceptionHandler {
|
||||
} else if (s.contains("java.awt.HeadlessException")) {
|
||||
System.out.println(C.i18n("crash.headless"));
|
||||
try {
|
||||
MessageBox.Show(C.i18n("crash.headless"));
|
||||
showMessage(C.i18n("crash.headless"));
|
||||
} catch (Throwable t) {
|
||||
t.printStackTrace();
|
||||
}
|
||||
@ -71,7 +71,7 @@ public class CrashReporter implements Thread.UncaughtExceptionHandler {
|
||||
} else if (s.contains("java.lang.NoClassDefFoundError") || s.contains("java.lang.VerifyError") || s.contains("java.lang.NoSuchMethodError") || s.contains("java.lang.IncompatibleClassChangeError") || s.contains("java.lang.ClassFormatError")) {
|
||||
System.out.println(C.i18n("crash.NoClassDefFound"));
|
||||
try {
|
||||
MessageBox.Show(C.i18n("crash.NoClassDefFound"));
|
||||
showMessage(C.i18n("crash.NoClassDefFound"));
|
||||
} catch (Throwable t) {
|
||||
t.printStackTrace();
|
||||
}
|
||||
@ -110,25 +110,26 @@ public class CrashReporter implements Thread.UncaughtExceptionHandler {
|
||||
reportToServer(text, s);
|
||||
}
|
||||
} catch (Throwable ex) {
|
||||
try {
|
||||
MessageBox.Show(e.getMessage() + "\n" + ex.getMessage(), "ERROR", MessageBox.ERROR_MESSAGE);
|
||||
} catch (Throwable exx) {
|
||||
System.out.println("Failed to catch exception thrown by " + t + " on " + Main.makeVersion() + ".");
|
||||
exx.printStackTrace();
|
||||
}
|
||||
showMessage(e.getMessage() + "\n" + ex.getMessage());
|
||||
ex.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
void showMessage() {
|
||||
|
||||
|
||||
void showMessage(String s) {
|
||||
try {
|
||||
MessageBox.Show(s, "ERROR", MessageBox.ERROR_MESSAGE);
|
||||
} catch (Throwable e) {
|
||||
System.err.println("ERROR: " + s);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
private static final HashSet<String> throwableSet = new HashSet<>();
|
||||
private static final HashSet<String> THROWABLE_SET = new HashSet<>();
|
||||
|
||||
void reportToServer(String text, String stacktrace) {
|
||||
if (throwableSet.contains(stacktrace))
|
||||
if (THROWABLE_SET.contains(stacktrace))
|
||||
return;
|
||||
throwableSet.add(stacktrace);
|
||||
THROWABLE_SET.add(stacktrace);
|
||||
new Thread(() -> {
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
map.put("CrashReport", text);
|
||||
|
@ -0,0 +1,85 @@
|
||||
/*
|
||||
* Hello Minecraft! Launcher.
|
||||
* Copyright (C) 2013 huangyuhui <huanghongxun2008@126.com>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see {http://www.gnu.org/licenses/}.
|
||||
*/
|
||||
package org.jackhuang.hellominecraft.launcher.views;
|
||||
|
||||
import java.awt.AlphaComposite;
|
||||
import java.awt.Color;
|
||||
import java.awt.Graphics;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.image.BufferedImage;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.SwingUtilities;
|
||||
import javax.swing.Timer;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author huangyuhui
|
||||
*/
|
||||
public class AnimatedPanel extends JPanel {
|
||||
|
||||
private static final int ANIMATION_LENGTH = 10;
|
||||
|
||||
public AnimatedPanel() {
|
||||
timer = new Timer(1, (e) -> {
|
||||
SwingUtilities.invokeLater(() -> {
|
||||
AnimatedPanel.this.repaint();
|
||||
offsetX += 0.15;
|
||||
if (offsetX >= ANIMATION_LENGTH) {
|
||||
timer.stop();
|
||||
AnimatedPanel.this.repaint();
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
double offsetX = ANIMATION_LENGTH;
|
||||
|
||||
Timer timer;
|
||||
|
||||
public void animate() {
|
||||
offsetX = 0;
|
||||
timer.start();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void paint(Graphics g) {
|
||||
double pgs = 1 - Math.sin(Math.PI / 2 / ANIMATION_LENGTH * offsetX);
|
||||
if(Math.abs(ANIMATION_LENGTH - offsetX) < 0.1) {
|
||||
super.paint(g);
|
||||
return;
|
||||
}
|
||||
if (pgs > 1)
|
||||
pgs = 1;
|
||||
if (pgs < 0)
|
||||
pgs = 0;
|
||||
Graphics2D gg = (Graphics2D) g;
|
||||
int width = this.getWidth();
|
||||
int height = this.getHeight();
|
||||
if (isOpaque()) {
|
||||
g.setColor(getBackground());
|
||||
g.fillRect(0, 0, width, height);
|
||||
}
|
||||
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);
|
||||
Graphics2D g2d = image.createGraphics();
|
||||
g2d.translate((int) (pgs * 50), 0);
|
||||
super.paint(g2d);
|
||||
g2d.dispose();
|
||||
gg.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, (float) (1 - pgs)));
|
||||
g.drawImage(image, 0, 0, this);
|
||||
}
|
||||
}
|
@ -5,6 +5,7 @@
|
||||
<Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor">
|
||||
<Color blue="ff" green="ff" red="ff" type="rgb"/>
|
||||
</Property>
|
||||
<Property name="opaque" type="boolean" value="false"/>
|
||||
</Properties>
|
||||
<AuxValues>
|
||||
<AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/>
|
||||
@ -67,6 +68,9 @@
|
||||
<Layout class="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout"/>
|
||||
<SubComponents>
|
||||
<Container class="javax.swing.JPanel" name="pnlSettings">
|
||||
<AuxValues>
|
||||
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="new AnimatedPanel()"/>
|
||||
</AuxValues>
|
||||
<Constraints>
|
||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
|
||||
<JTabbedPaneConstraints tabName="普通设置">
|
||||
@ -337,6 +341,9 @@
|
||||
</SubComponents>
|
||||
</Container>
|
||||
<Container class="javax.swing.JPanel" name="pnlAdvancedSettings">
|
||||
<AuxValues>
|
||||
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="new AnimatedPanel()"/>
|
||||
</AuxValues>
|
||||
<Constraints>
|
||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
|
||||
<JTabbedPaneConstraints tabName="高级设置">
|
||||
@ -523,6 +530,9 @@
|
||||
</SubComponents>
|
||||
</Container>
|
||||
<Container class="javax.swing.JPanel" name="pnlModManagement">
|
||||
<AuxValues>
|
||||
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="new AnimatedPanel()"/>
|
||||
</AuxValues>
|
||||
<Constraints>
|
||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
|
||||
<JTabbedPaneConstraints tabName="Mod管理">
|
||||
@ -654,6 +664,9 @@
|
||||
</SubComponents>
|
||||
</Container>
|
||||
<Container class="javax.swing.JPanel" name="pnlAutoInstall">
|
||||
<AuxValues>
|
||||
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="new AnimatedPanel()"/>
|
||||
</AuxValues>
|
||||
<Constraints>
|
||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
|
||||
<JTabbedPaneConstraints tabName="自动安装">
|
||||
@ -684,6 +697,9 @@
|
||||
</SubComponents>
|
||||
</Container>
|
||||
<Container class="javax.swing.JPanel" name="pnlGameDownloads">
|
||||
<AuxValues>
|
||||
<AuxValue name="JavaCodeGenerator_CreateCodeCustom" type="java.lang.String" value="new AnimatedPanel()"/>
|
||||
</AuxValues>
|
||||
<Constraints>
|
||||
<Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout" value="org.netbeans.modules.form.compat2.layouts.support.JTabbedPaneSupportLayout$JTabbedPaneConstraintsDescription">
|
||||
<JTabbedPaneConstraints tabName="游戏下载">
|
||||
|
@ -66,13 +66,13 @@ import rx.concurrency.Schedulers;
|
||||
*
|
||||
* @author huangyuhui
|
||||
*/
|
||||
public final class GameSettingsPanel extends javax.swing.JPanel implements DropTargetListener {
|
||||
public final class GameSettingsPanel extends AnimatedPanel implements DropTargetListener {
|
||||
|
||||
boolean isLoading = false;
|
||||
public MinecraftVersionRequest minecraftVersion;
|
||||
String mcVersion;
|
||||
|
||||
InstallerPanel installerPanels[] = new InstallerPanel[InstallerType.values().length];
|
||||
final InstallerPanel installerPanels[] = new InstallerPanel[InstallerType.values().length];
|
||||
|
||||
/**
|
||||
* Creates new form GameSettingsPanel
|
||||
@ -206,6 +206,8 @@ public final class GameSettingsPanel extends javax.swing.JPanel implements DropT
|
||||
|
||||
@Override
|
||||
public void stateChanged(ChangeEvent e) {
|
||||
if (tabVersionEdit.getSelectedComponent() instanceof AnimatedPanel)
|
||||
((AnimatedPanel) tabVersionEdit.getSelectedComponent()).animate();
|
||||
if (tabVersionEdit.getSelectedComponent() == pnlGameDownloads && !a) {
|
||||
a = true;
|
||||
refreshDownloads();
|
||||
@ -215,8 +217,8 @@ public final class GameSettingsPanel extends javax.swing.JPanel implements DropT
|
||||
}
|
||||
}
|
||||
});
|
||||
for (InstallerType type : InstallerType.values())
|
||||
tabInstallers.addTab(type.getLocalizedName(), new InstallerPanel(this, type));
|
||||
for (int i = 0; i < InstallerType.values().length; i++)
|
||||
tabInstallers.addTab(InstallerType.values()[i].getLocalizedName(), installerPanels[i]);
|
||||
|
||||
tabInstallers.addChangeListener(new ChangeListener() {
|
||||
boolean refreshed[] = new boolean[InstallerType.values().length];
|
||||
@ -242,7 +244,7 @@ public final class GameSettingsPanel extends javax.swing.JPanel implements DropT
|
||||
private void initComponents() {
|
||||
|
||||
tabVersionEdit = new javax.swing.JTabbedPane();
|
||||
pnlSettings = new javax.swing.JPanel();
|
||||
pnlSettings = new AnimatedPanel();
|
||||
lblGameDir = new javax.swing.JLabel();
|
||||
txtGameDir = new javax.swing.JTextField();
|
||||
lblDimension = new javax.swing.JLabel();
|
||||
@ -263,7 +265,7 @@ public final class GameSettingsPanel extends javax.swing.JPanel implements DropT
|
||||
btnChoosingJavaDir = new javax.swing.JButton();
|
||||
cboJava = new javax.swing.JComboBox();
|
||||
btnChoosingGameDir = new javax.swing.JButton();
|
||||
pnlAdvancedSettings = new javax.swing.JPanel();
|
||||
pnlAdvancedSettings = new AnimatedPanel();
|
||||
chkDebug = new javax.swing.JCheckBox();
|
||||
lblJavaArgs = new javax.swing.JLabel();
|
||||
txtJavaArgs = new javax.swing.JTextField();
|
||||
@ -277,16 +279,16 @@ public final class GameSettingsPanel extends javax.swing.JPanel implements DropT
|
||||
txtPrecalledCommand = new javax.swing.JTextField();
|
||||
lblServerIP = new javax.swing.JLabel();
|
||||
txtServerIP = new javax.swing.JTextField();
|
||||
pnlModManagement = new javax.swing.JPanel();
|
||||
pnlModManagement = new AnimatedPanel();
|
||||
pnlModManagementContent = new javax.swing.JPanel();
|
||||
jScrollPane1 = new javax.swing.JScrollPane();
|
||||
lstExternalMods = new javax.swing.JTable();
|
||||
btnAddMod = new javax.swing.JButton();
|
||||
btnRemoveMod = new javax.swing.JButton();
|
||||
lblModInfo = new javax.swing.JLabel();
|
||||
pnlAutoInstall = new javax.swing.JPanel();
|
||||
pnlAutoInstall = new AnimatedPanel();
|
||||
tabInstallers = new javax.swing.JTabbedPane();
|
||||
pnlGameDownloads = new javax.swing.JPanel();
|
||||
pnlGameDownloads = new AnimatedPanel();
|
||||
btnDownload = new javax.swing.JButton();
|
||||
jScrollPane2 = new javax.swing.JScrollPane();
|
||||
lstDownloads = new javax.swing.JTable();
|
||||
@ -310,6 +312,7 @@ public final class GameSettingsPanel extends javax.swing.JPanel implements DropT
|
||||
btnCleanGame = new javax.swing.JButton();
|
||||
|
||||
setBackground(new java.awt.Color(255, 255, 255));
|
||||
setOpaque(false);
|
||||
|
||||
tabVersionEdit.setName("tabVersionEdit"); // NOI18N
|
||||
|
||||
@ -1350,7 +1353,7 @@ public final class GameSettingsPanel extends javax.swing.JPanel implements DropT
|
||||
@Override
|
||||
public void drop(DropTargetDropEvent dtde) {
|
||||
}
|
||||
|
||||
|
||||
private void refreshVersions() {
|
||||
getProfile().getMinecraftProvider().refreshVersions();
|
||||
loadVersions();
|
||||
|
@ -37,7 +37,7 @@ import org.jackhuang.hellominecraft.utils.SwingUtils;
|
||||
*
|
||||
* @author huangyuhui
|
||||
*/
|
||||
public class InstallerPanel extends javax.swing.JPanel {
|
||||
public class InstallerPanel extends AnimatedPanel {
|
||||
|
||||
GameSettingsPanel gsp;
|
||||
|
||||
@ -50,10 +50,10 @@ public class InstallerPanel extends javax.swing.JPanel {
|
||||
public InstallerPanel(GameSettingsPanel gsp, InstallerType installerType) {
|
||||
initComponents();
|
||||
|
||||
setOpaque(false);
|
||||
this.gsp = gsp;
|
||||
id = installerType;
|
||||
list = Settings.getInstance().getDownloadSource().getProvider().getInstallerByType(id);
|
||||
((DefaultTableModel) lstInstallers.getModel()).addRow(new Object[] {"hehe", "hehe"});
|
||||
}
|
||||
|
||||
/**
|
||||
@ -138,7 +138,7 @@ public class InstallerPanel extends javax.swing.JPanel {
|
||||
|
||||
void downloadSelectedRow() {
|
||||
int idx = lstInstallers.getSelectedRow();
|
||||
if (idx < 0 || idx >= versions.size()) {
|
||||
if (versions == null || idx < 0 || idx >= versions.size()) {
|
||||
MessageBox.Show(C.i18n("install.not_refreshed"));
|
||||
return;
|
||||
}
|
||||
@ -147,20 +147,18 @@ public class InstallerPanel extends javax.swing.JPanel {
|
||||
|
||||
public void loadVersions() {
|
||||
SwingUtilities.invokeLater(() -> {
|
||||
versions = loadVersions(list, lstInstallers);
|
||||
synchronized (InstallerPanel.this) {
|
||||
DefaultTableModel model = (DefaultTableModel) lstInstallers.getModel();
|
||||
String mcver = StrUtils.formatVersion(gsp.getMinecraftVersionFormatted());
|
||||
versions = list.getVersions(mcver);
|
||||
SwingUtils.clearDefaultTable(lstInstallers);
|
||||
if (versions != null)
|
||||
for (InstallerVersionList.InstallerVersion v : versions)
|
||||
model.addRow(new Object[] {v.selfVersion == null ? "null" : v.selfVersion, v.mcVersion == null ? "null" : v.mcVersion});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private List<InstallerVersionList.InstallerVersion> loadVersions(InstallerVersionList list, JTable table) {
|
||||
DefaultTableModel model = (DefaultTableModel) table.getModel();
|
||||
String mcver = StrUtils.formatVersion(gsp.getMinecraftVersionFormatted());
|
||||
List<InstallerVersionList.InstallerVersion> ver = list.getVersions(mcver);
|
||||
SwingUtils.clearDefaultTable(table);
|
||||
if (ver != null)
|
||||
for (InstallerVersionList.InstallerVersion v : ver)
|
||||
model.addRow(new Object[] {v.selfVersion == null ? "null" : v.selfVersion, v.mcVersion == null ? "null" : v.mcVersion});
|
||||
return ver;
|
||||
}
|
||||
|
||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||
private javax.swing.JButton btnInstall;
|
||||
|
@ -34,7 +34,7 @@ import rx.Observable;
|
||||
*
|
||||
* @author huangyuhui
|
||||
*/
|
||||
public class LauncherSettingsPanel extends javax.swing.JPanel {
|
||||
public class LauncherSettingsPanel extends AnimatedPanel {
|
||||
|
||||
/**
|
||||
* Creates new form LancherSettingsPanel
|
||||
|
@ -244,6 +244,7 @@ public final class MainFrame extends DraggableFrame {
|
||||
}
|
||||
|
||||
public void selectTab(String tabName) {
|
||||
boolean a = mainTab.isActive(), b = gameTab.isActive(), c = launcherTab.isActive();
|
||||
this.mainTab.setIsActive(false);
|
||||
this.gameTab.setIsActive(false);
|
||||
this.launcherTab.setIsActive(false);
|
||||
@ -255,6 +256,8 @@ public final class MainFrame extends DraggableFrame {
|
||||
}
|
||||
this.mainTab.setIsActive(true);
|
||||
this.mainPanel.onSelected();
|
||||
if (!a)
|
||||
mainPanel.animate();
|
||||
} else if (tabName.equalsIgnoreCase("game")) {
|
||||
if (gamePanel == null) {
|
||||
gamePanel = new GameSettingsPanel();
|
||||
@ -262,12 +265,16 @@ public final class MainFrame extends DraggableFrame {
|
||||
}
|
||||
this.gameTab.setIsActive(true);
|
||||
this.gamePanel.onSelected();
|
||||
if (!b)
|
||||
gamePanel.animate();
|
||||
} else if (tabName.equalsIgnoreCase("launcher")) {
|
||||
if (launcherPanel == null) {
|
||||
launcherPanel = new LauncherSettingsPanel();
|
||||
launcherPanelWrapper.add(launcherPanel);
|
||||
}
|
||||
this.launcherTab.setIsActive(true);
|
||||
if (!c)
|
||||
launcherPanel.animate();
|
||||
}
|
||||
|
||||
this.infoLayout.show(this.infoSwap, tabName);
|
||||
|
@ -47,7 +47,7 @@ import org.jackhuang.hellominecraft.utils.functions.Consumer;
|
||||
*
|
||||
* @author huangyuhui
|
||||
*/
|
||||
public class MainPagePanel extends javax.swing.JPanel {
|
||||
public class MainPagePanel extends AnimatedPanel {
|
||||
|
||||
/**
|
||||
* Creates new form MainPagePanel
|
||||
@ -336,6 +336,7 @@ public class MainPagePanel extends javax.swing.JPanel {
|
||||
if (l.isLoggedIn())
|
||||
l.logout();
|
||||
cl.first(pnlPassword);
|
||||
pnlPassword.repaint();
|
||||
}//GEN-LAST:event_btnLogoutActionPerformed
|
||||
|
||||
private void txtPlayerNameKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txtPlayerNameKeyPressed
|
||||
@ -423,7 +424,7 @@ public class MainPagePanel extends javax.swing.JPanel {
|
||||
if (0 <= loginType && loginType < cboLoginMode.getItemCount()) {
|
||||
preparingAuth = false;
|
||||
|
||||
//cboLoginMode.setSelectedIndex(loginType);
|
||||
cboLoginMode.setSelectedIndex(loginType);
|
||||
|
||||
cboLoginModeItemStateChanged(null);
|
||||
}
|
||||
|
@ -175,7 +175,8 @@ public class TaskWindow extends javax.swing.JDialog
|
||||
tasks.clear();
|
||||
|
||||
if (!this.failReasons.isEmpty()) {
|
||||
SwingUtilities.invokeLater(() -> MessageBox.Show(StrUtils.parseParams("", failReasons.toArray(), "\n"), C.i18n("message.error"), MessageBox.ERROR_MESSAGE));
|
||||
String str = StrUtils.parseParams("", failReasons.toArray(), "\n");
|
||||
SwingUtilities.invokeLater(() -> MessageBox.Show(str, C.i18n("message.error"), MessageBox.ERROR_MESSAGE));
|
||||
failReasons.clear();
|
||||
}
|
||||
|
||||
|
@ -46,7 +46,7 @@ public class SwingUtils {
|
||||
* @return
|
||||
*/
|
||||
public static DefaultTableModel makeDefaultTableModel(String[] titleA, final Class[] typesA, final boolean[] canEditA) {
|
||||
return new javax.swing.table.DefaultTableModel(
|
||||
return new DefaultTableModel(
|
||||
new Object[][] {},
|
||||
titleA) {
|
||||
Class[] types = typesA;
|
||||
|
@ -57,6 +57,7 @@ install.mcversion=\u6e38\u620f\u7248\u672c
|
||||
install.time=\u65f6\u95f4
|
||||
install.release_time=\u91ca\u653e\u65f6\u95f4
|
||||
install.type=\u7c7b\u578b
|
||||
install.please_refresh=\u5982\u9700\u4f7f\u7528\u81ea\u52a8\u5b89\u88c5\u8bf7\u70b9\u51fb\u53f3\u4fa7\u5237\u65b0\u6309\u94ae
|
||||
|
||||
crash.launcher=\u542f\u52a8\u5668\u5d29\u6e83\u4e86\uff01
|
||||
crash.minecraft=Minecraft\u5d29\u6e83\u4e86\uff01\u8bf7\u8ba4\u771f\u9605\u8bfb\u5efa\u8bae\u3002
|
||||
@ -204,7 +205,7 @@ settings.physical_memory=\u7269\u7406\u5185\u5b58\u5927\u5c0f
|
||||
settings.choose_javapath=\u9009\u62e9Java\u8def\u5f84
|
||||
settings.default=\u9ed8\u8ba4
|
||||
settings.custom=\u81ea\u5b9a\u4e49
|
||||
settings.choose_gamepath=\u9009\u62e9\u6e38\u620f\u8def\u5f84
|
||||
settings.choose_gamedir=\u9009\u62e9\u6e38\u620f\u8def\u5f84
|
||||
|
||||
settings.failed_load=\u8bbe\u7f6e\u6587\u4ef6\u52a0\u8f7d\u5931\u8d25\uff0c\u53ef\u80fd\u662f\u5347\u7ea7\u4e86\u542f\u52a8\u5668\u6216\u88ab\u4eba\u5de5\u4fee\u6539\u9020\u6210\u9519\u8bef\uff0c\u662f\u5426\u6e05\u9664\uff1f
|
||||
|
||||
|
@ -57,6 +57,7 @@ install.mcversion=Game Version
|
||||
install.time=Time
|
||||
install.release_time=Release Time
|
||||
install.type=Type
|
||||
install.please_refresh=If you want to install something, please click "Refresh" button.
|
||||
|
||||
crash.launcher=Launcher has crashed!
|
||||
crash.minecraft=Minecraft has crashed!
|
||||
@ -204,7 +205,7 @@ settings.physical_memory=Physical Memory Size
|
||||
settings.choose_javapath=Choose Java Directory.
|
||||
settings.default=Default
|
||||
settings.custom=Custom
|
||||
settings.choose_gamepath=Choose Game Directory
|
||||
settings.choose_gamedir=Choose Game Directory
|
||||
|
||||
settings.failed_load=Failed to load settings file. Remove it?
|
||||
|
||||
|
@ -57,6 +57,7 @@ install.mcversion=\u904a\u6232\u7248\u672c
|
||||
install.time=\u6642\u9593
|
||||
install.release_time=\u91cb\u653e\u6642\u9593
|
||||
install.type=\u985e\u578b
|
||||
install.please_refresh=\u5982\u9700\u4f7f\u7528\u81ea\u52a8\u5b89\u88c5\u8bf7\u70b9\u51fb\u53f3\u4fa7\u5237\u65b0\u6309\u94ae
|
||||
|
||||
crash.launcher=\u555f\u52d5\u5668\u5d29\u6f70\u4e86\uff01
|
||||
crash.minecraft=Minecraft\u5d29\u6f70\u4e86\uff01
|
||||
@ -204,7 +205,7 @@ settings.physical_memory=\u7269\u7406\u5185\u5b58\u5927\u5c0f
|
||||
settings.choose_javapath=\u9009\u62e9Java\u8def\u5f84
|
||||
settings.default=\u9ed8\u8a8d
|
||||
settings.custom=\u81ea\u5b9a\u7fa9
|
||||
settings.choose_gamepath=\u9009\u62e9\u6e38\u620f\u8def\u5f84
|
||||
settings.choose_gamedir=\u9009\u62e9\u6e38\u620f\u8def\u5f84
|
||||
|
||||
settings.failed_load=\u8a2d\u5b9a\u6587\u4ef6\u52a0\u8f09\u5931\u6557\uff0c\u53ef\u80fd\u662f\u5347\u7d1a\u4e86\u555f\u52d5\u5668\u6216\u88ab\u4eba\u5de5\u4fee\u6539\u9020\u6210\u932f\u8aa4\uff0c\u662f\u5426\u6e05\u9664\uff1f
|
||||
|
||||
|
@ -57,6 +57,7 @@ install.mcversion=\u6e38\u620f\u7248\u672c
|
||||
install.time=\u65f6\u95f4
|
||||
install.release_time=\u91ca\u653e\u65f6\u95f4
|
||||
install.type=\u7c7b\u578b
|
||||
install.please_refresh=\u5982\u9700\u4f7f\u7528\u81ea\u52a8\u5b89\u88c5\u8bf7\u70b9\u51fb\u53f3\u4fa7\u5237\u65b0\u6309\u94ae
|
||||
|
||||
crash.launcher=\u542f\u52a8\u5668\u5d29\u6e83\u4e86\uff01
|
||||
crash.minecraft=Minecraft\u5d29\u6e83\u4e86\uff01\u8bf7\u8ba4\u771f\u9605\u8bfb\u5efa\u8bae\u3002
|
||||
@ -204,7 +205,7 @@ settings.physical_memory=\u7269\u7406\u5185\u5b58\u5927\u5c0f
|
||||
settings.choose_javapath=\u9009\u62e9Java\u8def\u5f84
|
||||
settings.default=\u9ed8\u8ba4
|
||||
settings.custom=\u81ea\u5b9a\u4e49
|
||||
settings.choose_gamepath=\u9009\u62e9\u6e38\u620f\u8def\u5f84
|
||||
settings.choose_gamedir=\u9009\u62e9\u6e38\u620f\u8def\u5f84
|
||||
|
||||
settings.failed_load=\u8bbe\u7f6e\u6587\u4ef6\u52a0\u8f7d\u5931\u8d25\uff0c\u53ef\u80fd\u662f\u5347\u7ea7\u4e86\u542f\u52a8\u5668\u6216\u88ab\u4eba\u5de5\u4fee\u6539\u9020\u6210\u9519\u8bef\uff0c\u662f\u5426\u6e05\u9664\uff1f
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user