Skip to content

Commit 2597cd1

Browse files
committed
add config GUI helpers
1 parent 06833a3 commit 2597cd1

File tree

6 files changed

+74
-0
lines changed

6 files changed

+74
-0
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package com.falsepattern.lib.config;
2+
3+
import com.falsepattern.lib.StableAPI;
4+
import cpw.mods.fml.client.config.GuiConfig;
5+
import cpw.mods.fml.relauncher.Side;
6+
import cpw.mods.fml.relauncher.SideOnly;
7+
import net.minecraft.client.gui.GuiScreen;
8+
import net.minecraft.client.resources.I18n;
9+
10+
@SideOnly(Side.CLIENT)
11+
@StableAPI(since = "0.9.0")
12+
public class SimpleGuiConfig extends GuiConfig {
13+
public SimpleGuiConfig(GuiScreen parent, Class<?> configClass, String modID, String modName) throws ConfigException {
14+
super(parent, ConfigurationManager.getConfigElements(configClass), modID, false, false, modName + " Configuration", I18n.format("falsepatternlib.gui.config.description"));
15+
}
16+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package com.falsepattern.lib.config;
2+
3+
import com.falsepattern.lib.StableAPI;
4+
import cpw.mods.fml.client.IModGuiFactory;
5+
import cpw.mods.fml.relauncher.Side;
6+
import cpw.mods.fml.relauncher.SideOnly;
7+
import net.minecraft.client.Minecraft;
8+
9+
import java.util.Set;
10+
11+
@SideOnly(Side.CLIENT)
12+
@StableAPI(since = "0.9.0")
13+
public interface SimpleGuiFactory extends IModGuiFactory {
14+
@Override
15+
default void initialize(Minecraft minecraftInstance) {
16+
17+
}
18+
19+
@Override
20+
default Set<RuntimeOptionCategoryElement> runtimeGuiCategories() {
21+
return null;
22+
}
23+
24+
@Override
25+
default RuntimeOptionGuiHandler getHandlerFor(RuntimeOptionCategoryElement element) {
26+
return null;
27+
}
28+
}

src/main/java/com/falsepattern/lib/internal/FalsePatternLib.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
name = Tags.MODNAME,
4646
version = Tags.VERSION,
4747
acceptedMinecraftVersions = "[1.7.10]",
48+
guiFactory = Tags.GROUPNAME + ".internal.LibraryGuiFactory",
4849
acceptableRemoteVersions = "*")
4950
public class FalsePatternLib {
5051
public static final String UPDATE_URL = "https://falsepattern.com/mc/versions.json";
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package com.falsepattern.lib.internal;
2+
3+
import com.falsepattern.lib.config.ConfigException;
4+
import com.falsepattern.lib.config.SimpleGuiConfig;
5+
import cpw.mods.fml.relauncher.Side;
6+
import cpw.mods.fml.relauncher.SideOnly;
7+
import net.minecraft.client.gui.GuiScreen;
8+
9+
@SideOnly(Side.CLIENT)
10+
public class LibraryGuiConfig extends SimpleGuiConfig {
11+
public LibraryGuiConfig(GuiScreen parent) throws ConfigException {
12+
super(parent, LibraryConfig.class, Tags.MODID, Tags.MODNAME);
13+
}
14+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package com.falsepattern.lib.internal;
2+
3+
import com.falsepattern.lib.config.SimpleGuiFactory;
4+
import cpw.mods.fml.relauncher.Side;
5+
import cpw.mods.fml.relauncher.SideOnly;
6+
import net.minecraft.client.gui.GuiScreen;
7+
8+
@SideOnly(Side.CLIENT)
9+
public class LibraryGuiFactory implements SimpleGuiFactory {
10+
@Override
11+
public Class<? extends GuiScreen> mainConfigGuiClass() {
12+
return LibraryGuiConfig.class;
13+
}
14+
}

src/main/resources/assets/falsepatternlib/lang/en_US.lang

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ config.falsepatternlib.updatecheck=Enable update checks
22
config.falsepatternlib.updatecheck.tooltip=Used to control whether FalsePatternLib should check for outdated mods.
33
config.falsepatternlib.disableinternet=FalsePatternLib Offline Mode
44
config.falsepatternlib.disableinternet.tooltip=Used to control whether FalsePatternLib should be allowed to use the internet. If this is enabled, update checks and library downloads will be completely blocked.
5+
falsepatternlib.gui.config.description=Hover over a setting for more information.
56
falsepatternlib.chat.updatesavailable=§4Outdated mods detected by %s! §r
67
falsepatternlib.chat.modname=§b§l[%s]§r
78
falsepatternlib.chat.currentversion= Current Version: §6%s§r

0 commit comments

Comments
 (0)