22 lines
636 B
Java
22 lines
636 B
Java
package io.gitlab.jfronny.libjf.config.api.v2.ui;
|
|
|
|
import io.gitlab.jfronny.libjf.config.api.v2.ConfigInstance;
|
|
import io.gitlab.jfronny.libjf.config.impl.ui.ConfigScreenFactoryDiscovery;
|
|
import net.minecraft.client.gui.screen.Screen;
|
|
|
|
public interface ConfigScreenFactory<S extends Screen, B extends ConfigScreenFactory.Built<S>> {
|
|
static ConfigScreenFactory<?, ?> getInstance() {
|
|
return ConfigScreenFactoryDiscovery.getConfigured2();
|
|
}
|
|
|
|
B create(ConfigInstance config, Screen parent);
|
|
|
|
int getPriority();
|
|
|
|
interface Built<S extends Screen> {
|
|
S get();
|
|
|
|
void onSave(Runnable action);
|
|
}
|
|
}
|