ConfigGui

基本信息

客户端配置界面 —— main/config/ConfigGui.java 与 ConfigGuiFactory.java。

自检机制

ConfigGuiFactory.CLASS_NAME 是字符串字面量, @Mod(guiFactory = ...) 也必须写同一个字符串。 构造时 checkClassName() 比较两者,不一致就抛 IllegalStateException("ConfigGuiFactory.CLASS_NAME needs to be updated!")。 这是编译期注解与运行时反射解耦后的必要校验。

public static final String CLASS_NAME =
    "com.github.dcysteine.neicustomdiagram.main.config.ConfigGuiFactory";

初始化顺序

NeiCustomDiagram.onInitialization() 里第一件事就是 ConfigGuiFactory.checkClassName(),早于 Config.initialize()。

配置分组

界面按 ConfigOptions.Category 分节(options / diagram_groups / diagram_specific),并对 diagram_groups 段追加一段自动生成的说明 (列出每个已注册组及其可见性),见 ConfigOptions:251。

相关条目

源码

  • src/main/java/com/github/dcysteine/neicustomdiagram/main/config/ConfigGui.java
  • src/main/java/com/github/dcysteine/neicustomdiagram/main/config/ConfigGuiFactory.java