forked from Clones/Controlify
🧹 Refactor gui package
This commit is contained in:
@ -4,8 +4,8 @@ import com.mojang.blaze3d.Blaze3D;
|
||||
import com.mojang.logging.LogUtils;
|
||||
import dev.isxander.controlify.api.ControlifyApi;
|
||||
import dev.isxander.controlify.api.entrypoint.ControlifyEntrypoint;
|
||||
import dev.isxander.controlify.config.gui.ControllerBindHandler;
|
||||
import dev.isxander.controlify.config.gui.ControllerCarouselScreen;
|
||||
import dev.isxander.controlify.gui.controllers.ControllerBindHandler;
|
||||
import dev.isxander.controlify.gui.screen.ControllerCarouselScreen;
|
||||
import dev.isxander.controlify.controller.Controller;
|
||||
import dev.isxander.controlify.controller.ControllerState;
|
||||
import dev.isxander.controlify.controller.sdl2.SDL2NativesManager;
|
||||
|
@ -6,8 +6,8 @@ import dev.isxander.controlify.Controlify;
|
||||
import dev.isxander.controlify.api.bind.BindRenderer;
|
||||
import dev.isxander.controlify.api.bind.ControllerBinding;
|
||||
import dev.isxander.controlify.api.bind.ControllerBindingBuilder;
|
||||
import dev.isxander.controlify.config.gui.GamepadBindController;
|
||||
import dev.isxander.controlify.config.gui.JoystickBindController;
|
||||
import dev.isxander.controlify.gui.controllers.GamepadBindController;
|
||||
import dev.isxander.controlify.gui.controllers.JoystickBindController;
|
||||
import dev.isxander.controlify.controller.Controller;
|
||||
import dev.isxander.controlify.controller.ControllerState;
|
||||
import dev.isxander.controlify.controller.gamepad.GamepadController;
|
||||
|
@ -1,7 +1,8 @@
|
||||
package dev.isxander.controlify.config.gui;
|
||||
package dev.isxander.controlify.config;
|
||||
|
||||
import com.terraformersmc.modmenu.api.ConfigScreenFactory;
|
||||
import com.terraformersmc.modmenu.api.ModMenuApi;
|
||||
import dev.isxander.controlify.gui.screen.ControllerCarouselScreen;
|
||||
|
||||
public class ModMenuIntegration implements ModMenuApi {
|
||||
@Override
|
@ -1,6 +1,5 @@
|
||||
package dev.isxander.controlify.config.gui;
|
||||
package dev.isxander.controlify.gui.controllers;
|
||||
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import dev.isxander.controlify.api.event.ControlifyEvents;
|
||||
import dev.isxander.controlify.bindings.EmptyBind;
|
||||
import dev.isxander.controlify.bindings.IBind;
|
@ -1,4 +1,4 @@
|
||||
package dev.isxander.controlify.config.gui;
|
||||
package dev.isxander.controlify.gui.controllers;
|
||||
|
||||
import dev.isxander.controlify.api.event.ControlifyEvents;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package dev.isxander.controlify.config.gui;
|
||||
package dev.isxander.controlify.gui.controllers;
|
||||
|
||||
import dev.isxander.controlify.bindings.GamepadBind;
|
||||
import dev.isxander.controlify.bindings.GamepadBinds;
|
@ -1,4 +1,4 @@
|
||||
package dev.isxander.controlify.config.gui;
|
||||
package dev.isxander.controlify.gui.controllers;
|
||||
|
||||
import dev.isxander.controlify.bindings.*;
|
||||
import dev.isxander.controlify.controller.joystick.JoystickController;
|
@ -12,7 +12,6 @@ import net.minecraft.network.chat.CommonComponents;
|
||||
import net.minecraft.network.chat.Component;
|
||||
|
||||
public class BetaNoticeScreen extends Screen {
|
||||
private MultiLineTextWidget textWidget;
|
||||
|
||||
public BetaNoticeScreen() {
|
||||
super(Component.translatable("controlify.beta.title"));
|
||||
@ -20,7 +19,7 @@ public class BetaNoticeScreen extends Screen {
|
||||
|
||||
@Override
|
||||
protected void init() {
|
||||
textWidget = new AccessibilityOnboardingTextWidget(
|
||||
MultiLineTextWidget textWidget = new AccessibilityOnboardingTextWidget(
|
||||
font,
|
||||
Component.translatable("controlify.beta.message",
|
||||
Component.translatable("controlify.beta.message.link")
|
||||
|
@ -1,12 +1,10 @@
|
||||
package dev.isxander.controlify.config.gui;
|
||||
package dev.isxander.controlify.gui.screen;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.mojang.blaze3d.platform.InputConstants;
|
||||
import dev.isxander.controlify.Controlify;
|
||||
import dev.isxander.controlify.ControllerManager;
|
||||
import dev.isxander.controlify.controller.Controller;
|
||||
import dev.isxander.controlify.controller.sdl2.SDL2NativesManager;
|
||||
import dev.isxander.controlify.gui.screen.SDLOnboardingScreen;
|
||||
import dev.isxander.controlify.utils.Animator;
|
||||
import net.minecraft.ChatFormatting;
|
||||
import net.minecraft.client.gui.ComponentPath;
|
||||
@ -77,7 +75,7 @@ public class ControllerCarouselScreen extends Screen {
|
||||
|
||||
GridLayout grid = new GridLayout().columnSpacing(10);
|
||||
GridLayout.RowHelper rowHelper = grid.createRowHelper(2);
|
||||
rowHelper.addChild(Button.builder(Component.translatable("controlify.gui.global_settings.title"), btn -> minecraft.setScreen(GlobalSettingsGui.createGlobalSettingsScreen(this))).build());
|
||||
rowHelper.addChild(Button.builder(Component.translatable("controlify.gui.global_settings.title"), btn -> minecraft.setScreen(GlobalSettingsScreenFactory.createGlobalSettingsScreen(this))).build());
|
||||
rowHelper.addChild(Button.builder(CommonComponents.GUI_DONE, btn -> this.onClose()).build());
|
||||
grid.visitWidgets(widget -> {
|
||||
widget.setTabOrderGroup(1);
|
||||
@ -194,7 +192,7 @@ public class ControllerCarouselScreen extends Screen {
|
||||
this.controller = controller;
|
||||
this.hasNickname = this.controller.config().customName != null;
|
||||
|
||||
this.settingsButton = Button.builder(Component.translatable("controlify.gui.carousel.entry.settings"), btn -> minecraft.setScreen(ControllerConfigGui.generateConfigScreen(ControllerCarouselScreen.this, controller))).width(getWidth() / 2 - 4).build();
|
||||
this.settingsButton = Button.builder(Component.translatable("controlify.gui.carousel.entry.settings"), btn -> minecraft.setScreen(ControllerConfigScreenFactory.generateConfigScreen(ControllerCarouselScreen.this, controller))).width((getWidth() - 2) / 2 - 2).build();
|
||||
this.useControllerButton = Button.builder(Component.translatable("controlify.gui.carousel.entry.use"), btn -> Controlify.instance().setCurrentController(controller)).width(settingsButton.getWidth()).build();
|
||||
this.children = ImmutableList.of(settingsButton, useControllerButton);
|
||||
|
@ -1,4 +1,4 @@
|
||||
package dev.isxander.controlify.config.gui;
|
||||
package dev.isxander.controlify.gui.screen;
|
||||
|
||||
import dev.isxander.controlify.Controlify;
|
||||
import dev.isxander.controlify.api.bind.ControllerBinding;
|
||||
@ -9,7 +9,7 @@ import dev.isxander.controlify.controller.ControllerConfig;
|
||||
import dev.isxander.controlify.controller.gamepad.GamepadController;
|
||||
import dev.isxander.controlify.controller.joystick.SingleJoystickController;
|
||||
import dev.isxander.controlify.controller.joystick.mapping.JoystickMapping;
|
||||
import dev.isxander.controlify.gui.screen.ControllerDeadzoneCalibrationScreen;
|
||||
import dev.isxander.controlify.gui.controllers.AbstractBindController;
|
||||
import dev.isxander.controlify.rumble.BasicRumbleEffect;
|
||||
import dev.isxander.controlify.rumble.RumbleSource;
|
||||
import dev.isxander.controlify.rumble.RumbleState;
|
||||
@ -31,7 +31,7 @@ import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.IntStream;
|
||||
|
||||
public class ControllerConfigGui {
|
||||
public class ControllerConfigScreenFactory {
|
||||
private static final Function<Float, Component> percentFormatter = v -> Component.literal(String.format("%.0f%%", v*100));
|
||||
private static final Function<Float, Component> percentOrOffFormatter = v -> v == 0 ? CommonComponents.OPTION_OFF : percentFormatter.apply(v);
|
||||
|
@ -1,7 +1,5 @@
|
||||
package dev.isxander.controlify.gui.screen;
|
||||
|
||||
import com.mojang.blaze3d.systems.RenderSystem;
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import dev.isxander.controlify.Controlify;
|
||||
import dev.isxander.controlify.controller.Controller;
|
||||
import net.minecraft.ChatFormatting;
|
||||
|
@ -1,4 +1,4 @@
|
||||
package dev.isxander.controlify.config.gui;
|
||||
package dev.isxander.controlify.gui.screen;
|
||||
|
||||
import dev.isxander.controlify.Controlify;
|
||||
import dev.isxander.controlify.config.GlobalSettings;
|
||||
@ -13,7 +13,7 @@ import net.minecraft.client.gui.screens.Screen;
|
||||
import net.minecraft.network.chat.Component;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
|
||||
public class GlobalSettingsGui {
|
||||
public class GlobalSettingsScreenFactory {
|
||||
public static Screen createGlobalSettingsScreen(Screen parent) {
|
||||
var globalSettings = Controlify.instance().config().globalSettings();
|
||||
return YetAnotherConfigLib.createBuilder()
|
@ -1,7 +1,7 @@
|
||||
package dev.isxander.controlify.mixins.feature.settingsbutton;
|
||||
|
||||
import com.llamalad7.mixinextras.sugar.Local;
|
||||
import dev.isxander.controlify.config.gui.ControllerCarouselScreen;
|
||||
import dev.isxander.controlify.gui.screen.ControllerCarouselScreen;
|
||||
import net.minecraft.client.Options;
|
||||
import net.minecraft.client.gui.components.Button;
|
||||
import net.minecraft.client.gui.screens.OptionsSubScreen;
|
||||
|
@ -19,7 +19,7 @@
|
||||
"com.llamalad7.mixinextras.MixinExtrasBootstrap::init"
|
||||
],
|
||||
"modmenu": [
|
||||
"dev.isxander.controlify.config.gui.ModMenuIntegration"
|
||||
"dev.isxander.controlify.config.ModMenuIntegration"
|
||||
],
|
||||
"client": [
|
||||
"dev.isxander.controlify.ControlifyEntrypoint"
|
||||
|
Reference in New Issue
Block a user