mirror of
https://github.com/HMCL-dev/HMCL.git
synced 2025-09-10 20:37:30 -04:00
Adds some suggested files to remove
This commit is contained in:
parent
a5504a4b74
commit
dfc6e91321
@ -202,8 +202,8 @@ public final class ModpackManager {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final List<String> MODPACK_BLACK_LIST = Arrays.asList(new String[] { "usernamecache.json", "asm", "logs", "backups", "versions", "assets", "usercache.json", "libraries", "crash-reports", "launcher_profiles.json", "NVIDIA", "AMD", "TCNodeTracker", "screenshots", "natives", "native", "$native", "pack.json", "launcher.jar", "launcher.pack.lzma", "hmclmc.log" });
|
public static final List<String> MODPACK_BLACK_LIST = Arrays.asList(new String[] { "usernamecache.json", "asm", "logs", "backups", "versions", "assets", "usercache.json", "libraries", "crash-reports", "launcher_profiles.json", "NVIDIA", "AMD", "TCNodeTracker", "screenshots", "natives", "native", "$native", "pack.json", "launcher.jar", "minetweaker.log", "launcher.pack.lzma", "hmclmc.log" });
|
||||||
public static final List<String> MODPACK_SUGGESTED_BLACK_LIST = Arrays.asList(new String[] { "saves", "servers.dat", "options.txt", "optionsshaders.txt", "mods/VoxelMods" });
|
public static final List<String> MODPACK_SUGGESTED_BLACK_LIST = Arrays.asList(new String[] { "fonts", "saves", "servers.dat", "options.txt", "optionsof.txt", "journeymap", "optionsshaders.txt", "mods/VoxelMods" });
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* < String, Boolean, Boolean >: Folder/File name, Is Directory,
|
* < String, Boolean, Boolean >: Folder/File name, Is Directory,
|
||||||
|
@ -178,8 +178,7 @@ public class ModpackWizard extends WizardBranchController {
|
|||||||
throw new IllegalArgumentException(id);
|
throw new IllegalArgumentException(id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -100,6 +100,8 @@ public class ZipEngine {
|
|||||||
zos.putNextEntry(new ZipEntry(pathName));
|
zos.putNextEntry(new ZipEntry(pathName));
|
||||||
putDirectoryImpl(file, basePath, pathNameCallback);
|
putDirectoryImpl(file, basePath, pathNameCallback);
|
||||||
} else {
|
} else {
|
||||||
|
if (".DS_Store".equals(file.getName())) // For mac computers.
|
||||||
|
continue;
|
||||||
pathName = file.getPath().substring(basePath.length() + 1);
|
pathName = file.getPath().substring(basePath.length() + 1);
|
||||||
if (pathNameCallback != null)
|
if (pathNameCallback != null)
|
||||||
pathName = pathNameCallback.apply(pathName, false);
|
pathName = pathNameCallback.apply(pathName, false);
|
||||||
|
@ -64,16 +64,18 @@ public class NavProgress implements ResultProgressHandle {
|
|||||||
|
|
||||||
public void setProgress(final int currentStep, final int totalSteps) {
|
public void setProgress(final int currentStep, final int totalSteps) {
|
||||||
invoke(() -> {
|
invoke(() -> {
|
||||||
if (totalSteps == -1)
|
if (totalSteps == -1) {
|
||||||
progressBar.setIndeterminate(true);
|
if (!progressBar.isIndeterminate())
|
||||||
else {
|
progressBar.setIndeterminate(true);
|
||||||
|
} else {
|
||||||
if (currentStep > totalSteps || currentStep < 0) {
|
if (currentStep > totalSteps || currentStep < 0) {
|
||||||
if (currentStep == -1 && totalSteps == -1)
|
if (currentStep == -1 && totalSteps == -1)
|
||||||
return;
|
return;
|
||||||
throw new IllegalArgumentException("Bad step values: "
|
throw new IllegalArgumentException("Bad step values: "
|
||||||
+ currentStep + " out of " + totalSteps);
|
+ currentStep + " out of " + totalSteps);
|
||||||
}
|
}
|
||||||
progressBar.setIndeterminate(false);
|
if (progressBar.isIndeterminate())
|
||||||
|
progressBar.setIndeterminate(false);
|
||||||
progressBar.setMaximum(totalSteps);
|
progressBar.setMaximum(totalSteps);
|
||||||
progressBar.setValue(currentStep);
|
progressBar.setValue(currentStep);
|
||||||
}
|
}
|
||||||
@ -83,8 +85,8 @@ public class NavProgress implements ResultProgressHandle {
|
|||||||
public void setBusy(final String description) {
|
public void setBusy(final String description) {
|
||||||
invoke(() -> {
|
invoke(() -> {
|
||||||
lbl.setText(description == null ? " " : description);
|
lbl.setText(description == null ? " " : description);
|
||||||
|
if (!progressBar.isIndeterminate())
|
||||||
progressBar.setIndeterminate(true);
|
progressBar.setIndeterminate(true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@ import javax.swing.JTextArea;
|
|||||||
* SimpleWizard created for it, acting as the WizardController for
|
* SimpleWizard created for it, acting as the WizardController for
|
||||||
* calls to WizardPanelProvider.createPanel().
|
* calls to WizardPanelProvider.createPanel().
|
||||||
*/
|
*/
|
||||||
final class SimpleWizardInfo implements WizardControllerImplementation {
|
public final class SimpleWizardInfo implements WizardControllerImplementation {
|
||||||
|
|
||||||
private WeakReference wizard = null;
|
private WeakReference wizard = null;
|
||||||
private final String[] descriptions;
|
private final String[] descriptions;
|
||||||
@ -318,4 +318,8 @@ final class SimpleWizardInfo implements WizardControllerImplementation {
|
|||||||
boolean cancel(Map settings) {
|
boolean cancel(Map settings) {
|
||||||
return provider.cancel(settings);
|
return provider.cancel(settings);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public WizardPanelProvider getProvider() {
|
||||||
|
return provider;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,38 +8,41 @@ and include the License file at http://www.netbeans.org/cddl.txt.
|
|||||||
If applicable, add the following below the CDDL Header, with the fields
|
If applicable, add the following below the CDDL Header, with the fields
|
||||||
enclosed by brackets [] replaced by your own identifying information:
|
enclosed by brackets [] replaced by your own identifying information:
|
||||||
"Portions Copyrighted [year] [name of copyright owner]" */
|
"Portions Copyrighted [year] [name of copyright owner]" */
|
||||||
/*
|
/*
|
||||||
* WizardBranchController.java
|
* WizardBranchController.java
|
||||||
*
|
*
|
||||||
* Created on March 5, 2005, 6:33 PM
|
* Created on March 5, 2005, 6:33 PM
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.jackhuang.hellominecraft.util.ui.wizard.spi;
|
package org.jackhuang.hellominecraft.util.ui.wizard.spi;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Extend this class to create wizards which have branch points in them -
|
* Extend this class to create wizards which have branch points in them -
|
||||||
* either override <code>getWizardForStep</code> to return one or another a wizard which
|
* either override <code>getWizardForStep</code> to return one or another a
|
||||||
|
* wizard which
|
||||||
* represents the subsequent steps after a decision point, or override
|
* represents the subsequent steps after a decision point, or override
|
||||||
* <code>getPanelProviderForStep</code> to provide instances of <code>WizardPanelProvider</code>
|
* <code>getPanelProviderForStep</code> to provide instances of
|
||||||
|
* <code>WizardPanelProvider</code>
|
||||||
* if there are no subsequent branch points and the continuation is a
|
* if there are no subsequent branch points and the continuation is a
|
||||||
* simple wizard.
|
* simple wizard.
|
||||||
* <p>
|
* <p>
|
||||||
* The basic idea is to supply a base wizard for the initial steps, stopping
|
* The basic idea is to supply a base wizard for the initial steps, stopping
|
||||||
* at the branch point. The panel for the branch point should put enough
|
* at the branch point. The panel for the branch point should put enough
|
||||||
* information into the settings map that the WizardBranchController can
|
* information into the settings map that the WizardBranchController can
|
||||||
* decide what to return as the remaining steps of the wizard.
|
* decide what to return as the remaining steps of the wizard.
|
||||||
* <p>
|
* <p>
|
||||||
* The result is a <code>Wizard</code> which embeds sub-wizards; when the
|
* The result is a <code>Wizard</code> which embeds sub-wizards; when the
|
||||||
* <code>PanelProvider</code> passed to the constructor runs out of steps,
|
* <code>PanelProvider</code> passed to the constructor runs out of steps,
|
||||||
* the master <code>Wizard</code> will try to find a sub-<code>Wizard</code>
|
* the master <code>Wizard</code> will try to find a sub-<code>Wizard</code>
|
||||||
* by calling <code>getWizardForStep</code>. If non-null, the user seamlessly
|
* by calling <code>getWizardForStep</code>. If non-null, the user seamlessly
|
||||||
* continues in the returned wizard. To create <code>Wizard</code>s with
|
* continues in the returned wizard. To create <code>Wizard</code>s with
|
||||||
* multiple branches, simply override <code>getWizardForStep</code> to create
|
* multiple branches, simply override <code>getWizardForStep</code> to create
|
||||||
* another <code>WizardBranchController</code> and return the result of its
|
* another <code>WizardBranchController</code> and return the result of its
|
||||||
* <code>createWizard</code> method.
|
* <code>createWizard</code> method.
|
||||||
* <p>
|
* <p>
|
||||||
* Note that it is important to cache the instances of <code>WizardPanelProvider</code>
|
* Note that it is important to cache the instances of
|
||||||
|
* <code>WizardPanelProvider</code>
|
||||||
* or <code>Wizard</code> which are returned here - this class's methods may
|
* or <code>Wizard</code> which are returned here - this class's methods may
|
||||||
* be called frequently to determine if the sequence of steps (the next wizard)
|
* be called frequently to determine if the sequence of steps (the next wizard)
|
||||||
* have changed.
|
* have changed.
|
||||||
@ -47,61 +50,68 @@ import java.util.Map;
|
|||||||
* @author Tim Boudreau
|
* @author Tim Boudreau
|
||||||
*/
|
*/
|
||||||
public abstract class WizardBranchController {
|
public abstract class WizardBranchController {
|
||||||
|
|
||||||
private final SimpleWizardInfo base;
|
private final SimpleWizardInfo base;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new WizardBranchController. The <code>base</code> argument
|
* Create a new WizardBranchController. The <code>base</code> argument
|
||||||
* provides the initial step(s) of the wizard up; when the user comes to
|
* provides the initial step(s) of the wizard up; when the user comes to
|
||||||
* the last step of the base wizard, this WizardBranchController will be
|
* the last step of the base wizard, this WizardBranchController will be
|
||||||
* asked for a wizard to provide subsequent panes. So the base wizard
|
* asked for a wizard to provide subsequent panes. So the base wizard
|
||||||
* should put some token into the settings map based on what the user
|
* should put some token into the settings map based on what the user
|
||||||
* selects on its final pane, which the WizardBranchController can use
|
* selects on its final pane, which the WizardBranchController can use
|
||||||
* to decide what the next steps should be.
|
* to decide what the next steps should be.
|
||||||
*/
|
*/
|
||||||
protected WizardBranchController (WizardPanelProvider base) {
|
protected WizardBranchController(WizardPanelProvider base) {
|
||||||
this (new SimpleWizardInfo (base));
|
this(new SimpleWizardInfo(base));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new WizardBranchController using the passed WizardPage
|
* Create a new WizardBranchController using the passed WizardPage
|
||||||
* instances as the initial pages of the wizard.
|
* instances as the initial pages of the wizard.
|
||||||
|
*
|
||||||
* @param pages An array of WizardPage instances
|
* @param pages An array of WizardPage instances
|
||||||
*/
|
*/
|
||||||
protected WizardBranchController (WizardPage[] pages) {
|
protected WizardBranchController(WizardPage[] pages) {
|
||||||
this (WizardPage.createWizardPanelProvider(pages));
|
this(WizardPage.createWizardPanelProvider(pages));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new WizardBranchController using the passed WizardPage
|
* Create a new WizardBranchController using the passed WizardPage
|
||||||
* as the initial page of the wizard. The initial page should
|
* as the initial page of the wizard. The initial page should
|
||||||
* determine the subsequent steps of the wizard.
|
* determine the subsequent steps of the wizard.
|
||||||
|
*
|
||||||
* @param onlyPage An instance of WizardPage
|
* @param onlyPage An instance of WizardPage
|
||||||
*/
|
*/
|
||||||
protected WizardBranchController (WizardPage onlyPage) {
|
protected WizardBranchController(WizardPage onlyPage) {
|
||||||
this (WizardPage.createWizardPanelProvider(onlyPage));
|
this(WizardPage.createWizardPanelProvider(onlyPage));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new WizardBranchController, using the passed <code>SimpleWizardInfo</code>
|
* Create a new WizardBranchController, using the passed
|
||||||
|
* <code>SimpleWizardInfo</code>
|
||||||
* for the initial panes of the wizard.
|
* for the initial panes of the wizard.
|
||||||
*/
|
*/
|
||||||
WizardBranchController (SimpleWizardInfo base) {
|
WizardBranchController(SimpleWizardInfo base) {
|
||||||
if (base == null) throw new NullPointerException ("No base");
|
if (base == null)
|
||||||
|
throw new NullPointerException("No base");
|
||||||
this.base = base;
|
this.base = base;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the wizard which represents the subsequent panes after this step.
|
* Get the wizard which represents the subsequent panes after this step.
|
||||||
* The UI for the current step should have put sufficient data into the
|
* The UI for the current step should have put sufficient data into the
|
||||||
* settings map to decide what to return; return null if not.
|
* settings map to decide what to return; return null if not.
|
||||||
* <p>
|
* <p>
|
||||||
* The default implementation delegates to <code>getPanelProviderForStep()</code>
|
* The default implementation delegates to
|
||||||
|
* <code>getPanelProviderForStep()</code>
|
||||||
* and returns a <code>Wizard</code> representing the result of that
|
* and returns a <code>Wizard</code> representing the result of that
|
||||||
* call.
|
* call.
|
||||||
* <p>
|
* <p>
|
||||||
* <b>Note:</b> This method can be called very frequently, to determine
|
* <b>Note:</b> This method can be called very frequently, to determine
|
||||||
* if the sequence of steps has changed - so it needs to run fast.
|
* if the sequence of steps has changed - so it needs to run fast.
|
||||||
* Returning the same instance every time the same arguments are passed
|
* Returning the same instance every time the same arguments are passed
|
||||||
* is highly recommended. It will typically be called whenever a change
|
* is highly recommended. It will typically be called whenever a change
|
||||||
* is fired by the base wizard (i.e. every call <code>setProblem()</code>
|
* is fired by the base wizard (i.e. every call <code>setProblem()</code>
|
||||||
* should generate a check to see if the navigation has changed).
|
* should generate a check to see if the navigation has changed).
|
||||||
* <p>
|
* <p>
|
||||||
@ -112,9 +122,9 @@ public abstract class WizardBranchController {
|
|||||||
* Wizard object itself, which will create panels on demand if they
|
* Wizard object itself, which will create panels on demand if they
|
||||||
* have not already been created).
|
* have not already been created).
|
||||||
*
|
*
|
||||||
* @param step The current step the user is on in the wizard
|
* @param step The current step the user is on in the wizard
|
||||||
* @param settings The settings map, which previous panes of the wizard
|
* @param settings The settings map, which previous panes of the wizard
|
||||||
* have been writing information into
|
* have been writing information into
|
||||||
*/
|
*/
|
||||||
protected Wizard getWizardForStep(String step, Map settings) {
|
protected Wizard getWizardForStep(String step, Map settings) {
|
||||||
WizardPanelProvider provider = getPanelProviderForStep(step, settings);
|
WizardPanelProvider provider = getPanelProviderForStep(step, settings);
|
||||||
@ -122,25 +132,26 @@ public abstract class WizardBranchController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Override this method to return a <code>WizardPanelProvider</code> representing the
|
* Override this method to return a <code>WizardPanelProvider</code>
|
||||||
|
* representing the
|
||||||
* steps from here to the final step of the wizard, varying the returned
|
* steps from here to the final step of the wizard, varying the returned
|
||||||
* object based on the contents of the map and the step in question.
|
* object based on the contents of the map and the step in question.
|
||||||
* The default implementation of this method throws an <code>Error</code> -
|
* The default implementation of this method throws an <code>Error</code> -
|
||||||
* either override this method, or override <code>getWizardForStep()</code>
|
* either override this method, or override <code>getWizardForStep()</code>
|
||||||
* (in which case this method will not be called).
|
* (in which case this method will not be called).
|
||||||
* <p>
|
* <p>
|
||||||
* <b>Note:</b> This method can be called very frequently, to determine
|
* <b>Note:</b> This method can be called very frequently, to determine
|
||||||
* if the sequence of steps has changed - so it needs to run fast.
|
* if the sequence of steps has changed - so it needs to run fast.
|
||||||
* Returning the same instance every time called with equivalent arguments
|
* Returning the same instance every time called with equivalent arguments
|
||||||
* is highly recommended.
|
* is highly recommended.
|
||||||
*
|
*
|
||||||
* @param step The string ID of the current step
|
* @param step The string ID of the current step
|
||||||
* @param settings The settings map, which previous panes of the wizard
|
* @param settings The settings map, which previous panes of the wizard
|
||||||
* will have written content into
|
* will have written content into
|
||||||
*/
|
*/
|
||||||
protected WizardPanelProvider getPanelProviderForStep(String step, Map settings) {
|
protected WizardPanelProvider getPanelProviderForStep(String step, Map settings) {
|
||||||
throw new Error ("Override either createInfoForStep or " +
|
throw new Error("Override either createInfoForStep or "
|
||||||
"createWizardForStep");
|
+ "createWizardForStep");
|
||||||
}
|
}
|
||||||
|
|
||||||
SimpleWizardInfo getBase() {
|
SimpleWizardInfo getBase() {
|
||||||
@ -149,15 +160,16 @@ public abstract class WizardBranchController {
|
|||||||
|
|
||||||
private WizardImplementation wizard = null;
|
private WizardImplementation wizard = null;
|
||||||
private Wizard real = null;
|
private Wizard real = null;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a Wizard to represent this branch controller. The resulting
|
* Create a Wizard to represent this branch controller. The resulting
|
||||||
* Wizard instance is cached; subsequent calls to this method will return
|
* Wizard instance is cached; subsequent calls to this method will return
|
||||||
* the same instance.
|
* the same instance.
|
||||||
*/
|
*/
|
||||||
public final Wizard createWizard() {
|
public final Wizard createWizard() {
|
||||||
if (wizard == null) {
|
if (wizard == null) {
|
||||||
wizard = new BranchingWizard (this);
|
wizard = new BranchingWizard(this);
|
||||||
real = new Wizard (wizard);
|
real = new Wizard(wizard);
|
||||||
}
|
}
|
||||||
return real;
|
return real;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user