Commit a677f875 authored by superblaubeere27's avatar superblaubeere27

Add LiquidBounce Tab

parent 3dbc1b3a
......@@ -203,7 +203,7 @@ public class LiquidLauncher {
} catch (Exception e) {
if (DEVEL_VERSION) {
clientBuilds = new ArrayList<>();
clientBuilds.add(new ClientBuild("", "", "", "1.8.9", "b26.2", "54beaca4e07fe665676048227408c498"));
clientBuilds.add(new ClientBuild("", "", "", "1.8.9", "b26.2", "54beaca4e07fe665676048227408c498", "LiquidBounce-1.8"));
}
fatalError("Failed to load LiquidBounce versions: " + e);
}
......@@ -247,31 +247,7 @@ public class LiquidLauncher {
boolean launched = false;
menuInterface.launchButton.setEnabled(false);
try {
File treeFolder = null;
switch (menuInterface.getFolderType().getSelectedIndex()) {
case 0:
treeFolder = minecraftDirectory;
break;
case 1:
treeFolder = launcherDirectory;
break;
case 2:
try {
File f = new File(menuInterface.getCustomFolderSelection().getText());
if (f.exists() && f.isDirectory()) {
treeFolder = f;
break;
}
} catch (Exception e) {
}
treeFolder = minecraftDirectory;
break;
default:
treeFolder = launcherDirectory;
break;
}
final LauncherFolderTree tree = new LauncherFolderTree(FolderType.values()[menuInterface.getFolderArch().getSelectedIndex()], treeFolder, clientBuild);
LauncherFolderTree tree = getLauncherFolderTree(clientBuild);
tree.mkdirs();
if (!tree.getLiquidBounceFile().exists()) {
final String f = AddLiquidBounceDialog.showDialog(clientBuild.getLiquidBounceDownload(), clientBuild.getLiquidBounceHash());
......@@ -429,6 +405,35 @@ public class LiquidLauncher {
}, "Launch thread").start();
}
public LauncherFolderTree getLauncherFolderTree(ClientBuild build) {
File treeFolder = null;
switch (menuInterface.getFolderType().getSelectedIndex()) {
case 0:
treeFolder = minecraftDirectory;
break;
case 1:
treeFolder = launcherDirectory;
break;
case 2:
try {
File f = new File(menuInterface.getCustomFolderSelection().getText());
if (f.exists() && f.isDirectory()) {
treeFolder = f;
break;
}
} catch (Exception e) {
}
treeFolder = minecraftDirectory;
break;
default:
treeFolder = launcherDirectory;
break;
}
final LauncherFolderTree tree = new LauncherFolderTree(FolderType.values()[menuInterface.getFolderArch().getSelectedIndex()], treeFolder, build);
return tree;
}
private void checkForUpdate() {
try {
double latestVersion = Double.parseDouble(NetworkUtils.readContent("https://raw.githubusercontent.com/CCBlueX/FileCloud/master/LiquidLauncher/latestVersion.txt"));
......
......@@ -143,6 +143,7 @@ public class Settings {
if (jsonObject.has(CUSTOM_FOLDER))
menuInterface.getCustomFolderSelection().setText(jsonObject.get(CUSTOM_FOLDER).getAsString());
menuInterface.updateEnabled();
menuInterface.updatePaths();
if (jsonObject.has("versions")) {
for (JsonElement versionElement :
jsonObject.getAsJsonArray("versions")) {
......
......@@ -17,14 +17,16 @@ public class ClientBuild {
private String minecraftVersion;
private String liquidBounceVersion;
private String liquidBounceHash;
private String configFolder;
public ClientBuild(final String forgeVersion, final String optifineDownload, final String liquidBounceDownload, final String minecraftVersion, final String liquidBounceVersion, final String liquidBounceHash) {
public ClientBuild(final String forgeVersion, final String optifineDownload, final String liquidBounceDownload, final String minecraftVersion, final String liquidBounceVersion, final String liquidBounceHash, String configFolder) {
this.forgeVersion = forgeVersion;
this.optifineDownload = optifineDownload;
this.liquidBounceDownload = liquidBounceDownload;
this.minecraftVersion = minecraftVersion;
this.liquidBounceVersion = liquidBounceVersion;
this.liquidBounceHash = liquidBounceHash;
this.configFolder = configFolder;
}
public static List<ClientBuild> getBuildsFromJson(JsonObject obj) {
......@@ -36,7 +38,8 @@ public class ClientBuild {
final String optifine = version.get("optifine").getAsString();
final String liquidBounce = version.get("liquidBounce").getAsString();
final String liquidBounceHash = version.get("liquidBounceHash").getAsString();
result.add(new ClientBuild(forge, optifine, liquidBounce, minecraftVersion, liquidBounceVersion, liquidBounceHash));
final String configFolder = version.get("configFolder").getAsString();
result.add(new ClientBuild(forge, optifine, liquidBounce, minecraftVersion, liquidBounceVersion, liquidBounceHash, configFolder));
}
}
return result;
......@@ -66,6 +69,10 @@ public class ClientBuild {
return liquidBounceHash;
}
public String getConfigFolder() {
return configFolder;
}
@Override
public String toString() {
return String.format("LiquidBounce %s %s [forge: %s, of: %s, liquidBounceDownload: %s/%s]", minecraftVersion, liquidBounceVersion, forgeVersion, optifineDownload, liquidBounceDownload, liquidBounceHash);
......
......@@ -22,6 +22,7 @@ public class LauncherFolderTree {
private File forgeJson;
private File forgeJar;
private File modsFolder;
private File liquidBounceFolder;
public LauncherFolderTree(final FolderType type, final File folder, final ClientBuild build) {
if (type == FolderType.LIQUIDLAUNCHER) {
......@@ -31,6 +32,7 @@ public class LauncherFolderTree {
minecraftJson = new File(minecraftVersionFolder, build.getMinecraftVersion() + ".json");
minecraftJar = new File(minecraftVersionFolder, build.getMinecraftVersion() + ".jar");
gameDir = new File(folder, "gameDir");
liquidBounceFolder = new File(gameDir, build.getConfigFolder());
libraryFolder = new File(folder, "libraries");
modsFolder = new File(gameDir, "mods");
otherFolder = new File(versionDir, "jars");
......@@ -44,10 +46,11 @@ public class LauncherFolderTree {
minecraftJson = new File(minecraftVersionFolder, build.getMinecraftVersion() + ".json");
minecraftJar = new File(minecraftVersionFolder, build.getMinecraftVersion() + ".jar");
gameDir = folder;
liquidBounceFolder = new File(gameDir, build.getConfigFolder());
libraryFolder = new File(folder, "libraries");
modsFolder = new File(gameDir, "mods");
versionDir = new File(new File(folder, "versions" + File.separator + build.getMinecraftVersion()), build.getLiquidBounceVersion());
otherFolder = new File(versionDir, "LiquidBounce");
versionDir = new File(new File(folder, "versions" + File.separator + build.getMinecraftVersion() + File.separator + "LiquidBounce"), build.getLiquidBounceVersion());
otherFolder = new File(versionDir, "jars");
liquidBounceFile = new File(otherFolder, "liquidBounce.jar");
optifineFile = new File(otherFolder, "optifine.jar");
forgeJson = new File(otherFolder, "forge.json");
......@@ -107,6 +110,10 @@ public class LauncherFolderTree {
return modsFolder;
}
public File getLiquidBounceFolder() {
return liquidBounceFolder;
}
public void mkdirs() {
assets.mkdirs();
minecraftVersionFolder.mkdirs();
......@@ -115,5 +122,6 @@ public class LauncherFolderTree {
otherFolder.mkdirs();
libraryFolder.mkdirs();
modsFolder.mkdirs();
liquidBounceFolder.mkdirs();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="net.ccbluex.LiquidLauncher.ui.EditAndViewConfigDialog">
<grid id="cbd77" binding="contentPane" layout-manager="GridLayoutManager" row-count="2" column-count="1" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="10" left="10" bottom="10" right="10"/>
<constraints>
<xy x="48" y="54" width="436" height="297"/>
</constraints>
<properties/>
<border type="none"/>
<children>
<grid id="94766" layout-manager="GridLayoutManager" row-count="1" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="1" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
<border type="none"/>
<children>
<hspacer id="98af6">
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="1" hsize-policy="6" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
</hspacer>
<grid id="9538f" layout-manager="GridLayoutManager" row-count="1" column-count="2" same-size-horizontally="true" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
<grid row="0" column="1" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
<border type="none"/>
<children>
<component id="e7465" class="javax.swing.JButton" binding="buttonOK">
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="OK"/>
</properties>
</component>
<component id="5723f" class="javax.swing.JButton" binding="buttonCancel">
<constraints>
<grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Cancel"/>
</properties>
</component>
</children>
</grid>
</children>
</grid>
<grid id="e3588" layout-manager="GridLayoutManager" row-count="3" column-count="1" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
<border type="none"/>
<children>
<component id="1ec31" class="javax.swing.JLabel">
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="0" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<font size="48"/>
<text value="Select file"/>
</properties>
</component>
<vspacer id="c9acf">
<constraints>
<grid row="2" column="0" row-span="1" col-span="1" vsize-policy="6" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false"/>
</constraints>
</vspacer>
<component id="61ea0" class="javax.swing.JComboBox" binding="file">
<constraints>
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="2" anchor="8" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
</component>
</children>
</grid>
</children>
</grid>
</form>
package net.ccbluex.LiquidLauncher.ui;
import com.intellij.uiDesigner.core.GridConstraints;
import com.intellij.uiDesigner.core.GridLayoutManager;
import com.intellij.uiDesigner.core.Spacer;
import net.ccbluex.LiquidLauncher.LiquidLauncher;
import javax.swing.*;
import java.awt.*;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import java.util.Arrays;
public class EditAndViewConfigDialog extends JDialog {
private JPanel contentPane;
private JButton buttonOK;
private JButton buttonCancel;
private JComboBox file;
private File folder;
{
// GUI initializer generated by IntelliJ IDEA GUI Designer
// >>> IMPORTANT!! <<<
// DO NOT EDIT OR ADD ANY CODE HERE!
$$$setupUI$$$();
}
public EditAndViewConfigDialog(File folder) {
this.folder = folder;
setSize(500, 250);
setLocationRelativeTo(LiquidLauncher.liquidLauncher.menuInterface);
setContentPane(contentPane);
setModal(true);
getRootPane().setDefaultButton(buttonOK);
buttonOK.addActionListener(e -> onOK());
buttonCancel.addActionListener(e -> onCancel());
// call onCancel() when cross is clicked
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
onCancel();
}
});
// call onCancel() on ESCAPE
contentPane.registerKeyboardAction(e -> onCancel(), KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
File[] files = folder.listFiles((dir, name) -> name.endsWith(".json"));
Arrays.stream(files).sorted().forEach(f -> file.addItem(f.getName()));
}
private void onOK() {
if (Desktop.isDesktopSupported()) {
try {
Desktop.getDesktop().edit(new File(folder, (String) file.getSelectedItem()));
} catch (Exception e1) {
try {
Desktop.getDesktop().open(new File(folder, (String) file.getSelectedItem()));
} catch (Exception e2) {
JOptionPane.showMessageDialog(this, e2.toString(), "Error", JOptionPane.ERROR_MESSAGE);
}
}
} else {
JOptionPane.showMessageDialog(this, "Operation not supported", "Error", JOptionPane.ERROR_MESSAGE);
}
dispose();
}
private void onCancel() {
dispose();
}
/**
* Method generated by IntelliJ IDEA GUI Designer
* >>> IMPORTANT!! <<<
* DO NOT edit this method OR call it in your code!
*
* @noinspection ALL
*/
private void $$$setupUI$$$() {
contentPane = new JPanel();
contentPane.setLayout(new GridLayoutManager(2, 1, new Insets(10, 10, 10, 10), -1, -1));
final JPanel panel1 = new JPanel();
panel1.setLayout(new GridLayoutManager(1, 2, new Insets(0, 0, 0, 0), -1, -1));
contentPane.add(panel1, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, 1, null, null, null, 0, false));
final Spacer spacer1 = new Spacer();
panel1.add(spacer1, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_WANT_GROW, 1, null, null, null, 0, false));
final JPanel panel2 = new JPanel();
panel2.setLayout(new GridLayoutManager(1, 2, new Insets(0, 0, 0, 0), -1, -1, true, false));
panel1.add(panel2, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false));
buttonOK = new JButton();
buttonOK.setText("OK");
panel2.add(buttonOK, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
buttonCancel = new JButton();
buttonCancel.setText("Cancel");
panel2.add(buttonCancel, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
final JPanel panel3 = new JPanel();
panel3.setLayout(new GridLayoutManager(3, 1, new Insets(0, 0, 0, 0), -1, -1));
contentPane.add(panel3, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false));
final JLabel label1 = new JLabel();
label1.setFont(new Font(label1.getFont().getName(), label1.getFont().getStyle(), 48));
label1.setText("Select file");
panel3.add(label1, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
final Spacer spacer2 = new Spacer();
panel3.add(spacer2, new GridConstraints(2, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_VERTICAL, 1, GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false));
file = new JComboBox();
panel3.add(file, new GridConstraints(1, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_HORIZONTAL, GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
}
/**
* @noinspection ALL
*/
public JComponent $$$getRootComponent$$$() {
return contentPane;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="net.ccbluex.LiquidLauncher.ui.ExportDialog">
<grid id="cbd77" binding="contentPane" layout-manager="GridLayoutManager" row-count="2" column-count="1" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="10" left="10" bottom="10" right="10"/>
<constraints>
<xy x="48" y="54" width="436" height="332"/>
</constraints>
<properties/>
<border type="none"/>
<children>
<grid id="94766" layout-manager="GridLayoutManager" row-count="1" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="1" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
<border type="none"/>
<children>
<hspacer id="98af6">
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="1" hsize-policy="6" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
</hspacer>
<grid id="9538f" layout-manager="GridLayoutManager" row-count="1" column-count="2" same-size-horizontally="true" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
<grid row="0" column="1" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
<border type="none"/>
<children>
<component id="e7465" class="javax.swing.JButton" binding="buttonOK">
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Export"/>
</properties>
</component>
<component id="5723f" class="javax.swing.JButton" binding="buttonCancel">
<constraints>
<grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Cancel"/>
</properties>
</component>
</children>
</grid>
</children>
</grid>
<grid id="e3588" layout-manager="GridLayoutManager" row-count="9" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
</constraints>
<properties/>
<border type="none"/>
<children>
<component id="7d98b" class="javax.swing.JCheckBox" binding="settingsCheckBox" default-binding="true">
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<selected value="true"/>
<text value="Settings"/>
</properties>
</component>
<vspacer id="8937d">
<constraints>
<grid row="8" column="0" row-span="1" col-span="1" vsize-policy="6" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false"/>
</constraints>
</vspacer>
<component id="7515d" class="javax.swing.JCheckBox" binding="modulesInfoKeybindsCheckBox" default-binding="true">
<constraints>
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<selected value="true"/>
<text value="Modules info (Keybinds)"/>
</properties>
</component>
<component id="f9788" class="javax.swing.JCheckBox" binding="friendsCheckBox" default-binding="true">
<constraints>
<grid row="2" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<selected value="true"/>
<text value="Friends"/>
</properties>
</component>
<component id="3db99" class="javax.swing.JCheckBox" binding="clickGuiCheckBox" default-binding="true">
<constraints>
<grid row="3" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<selected value="true"/>
<text value="ClickGui"/>
</properties>
</component>
<component id="ac870" class="javax.swing.JCheckBox" binding="xRayConfigCheckBox" default-binding="true">
<constraints>
<grid row="4" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<selected value="true"/>
<text value="X-Ray config"/>
</properties>
</component>
<component id="21f8f" class="javax.swing.JCheckBox" binding="accountsAltsCheckBox" default-binding="true">
<constraints>
<grid row="6" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="&lt;html&gt;&lt;body color=&quot;red&quot;&gt;Accounts / Alts&lt;/body&gt;&lt;/html&gt;"/>
</properties>
</component>
<component id="9e407" class="javax.swing.JTextField" binding="exportLocation">
<constraints>
<grid row="7" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
<preferred-size width="150" height="-1"/>
</grid>
</constraints>
<properties/>
</component>
<component id="f825b" class="javax.swing.JButton" binding="browseButton" default-binding="true">
<constraints>
<grid row="7" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text resource-bundle="tanslations" key="browse"/>
</properties>
</component>
<component id="a4d56" class="javax.swing.JCheckBox" binding="scriptsCheckBox" default-binding="true">
<constraints>
<grid row="5" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<selected value="true"/>
<text value="Scripts"/>
</properties>
</component>
</children>
</grid>
</children>
</grid>
</form>
This diff is collapsed.
......@@ -317,7 +317,7 @@
</component>
<component id="7aa7b" class="javax.swing.JComboBox" binding="folderArch">
<constraints>
<grid row="1" column="0" row-span="1" col-span="2" vsize-policy="0" hsize-policy="2" anchor="8" fill="1" indent="0" use-parent-layout="false"/>
<grid row="1" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="2" anchor="8" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<model>
......@@ -328,7 +328,7 @@
</component>
<component id="f3fec" class="javax.swing.JComboBox" binding="folderType">
<constraints>
<grid row="3" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="2" anchor="8" fill="1" indent="0" use-parent-layout="false"/>
<grid row="3" column="0" row-span="1" col-span="3" vsize-policy="0" hsize-policy="2" anchor="8" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<model>
......@@ -348,6 +348,104 @@
</component>
</children>
</grid>
<grid id="dfd9a" layout-manager="GridLayoutManager" row-count="9" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
<tabbedpane title="LiquidBounce"/>
</constraints>
<properties/>
<border type="none"/>
<children>
<component id="e126b" class="javax.swing.JLabel">
<constraints>
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Settings:"/>
</properties>
</component>
<vspacer id="f854d">
<constraints>
<grid row="8" column="0" row-span="1" col-span="1" vsize-policy="6" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false"/>
</constraints>
</vspacer>
<component id="98e05" class="javax.swing.JButton" binding="importButton" default-binding="true">
<constraints>
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Import"/>
</properties>
</component>
<component id="bc53d" class="javax.swing.JButton" binding="exportButton" default-binding="true">
<constraints>
<grid row="1" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Export"/>
</properties>
</component>
<component id="1431b" class="javax.swing.JButton" binding="viewEditButton" default-binding="true">
<constraints>
<grid row="2" column="0" row-span="1" col-span="2" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="View / Edit"/>
</properties>
</component>
<component id="7ec60" class="javax.swing.JLabel">
<constraints>
<grid row="3" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Folder:"/>
</properties>
</component>
<component id="e4375" class="javax.swing.JTextField" binding="liquidBouncePath">
<constraints>
<grid row="4" column="0" row-span="1" col-span="2" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
<preferred-size width="150" height="-1"/>
</grid>
</constraints>
<properties>
<editable value="false"/>
<text value="ERR"/>
</properties>
</component>
<component id="6320a" class="javax.swing.JButton" binding="openButton" default-binding="true">
<constraints>
<grid row="5" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Open"/>
</properties>
</component>
<component id="2b9c4" class="javax.swing.JButton" binding="copyPathButton" default-binding="true">
<constraints>
<grid row="5" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Copy Path"/>
</properties>
</component>
<component id="55a8f" class="javax.swing.JLabel">
<constraints>
<grid row="6" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="LiquidScript:"/>
</properties>
</component>
<component id="a8ecd" class="javax.swing.JButton" binding="importButton1" default-binding="true">
<constraints>
<grid row="7" column="0" row-span="1" col-span="2" vsize-policy="0" hsize-policy="3" anchor="0" fill="1" indent="0" use-parent-layout="false"/>
</constraints>
<properties>
<text value="Import"/>
</properties>
</component>
</children>
</grid>
<grid id="d6117" layout-manager="GridLayoutManager" row-count="2" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
<margin top="0" left="0" bottom="0" right="0"/>
<constraints>
......