HorizontalScrollingFixConfigScreen.java
· 1.9 KiB · Java
Raw
package org.dussud.horizontal_scrolling_fix.client;
import net.minecraft.client.OptionInstance;
import net.minecraft.client.gui.screens.Screen;
import net.uku3lig.ukulib.config.option.CyclingOption;
import net.uku3lig.ukulib.config.option.WidgetCreator;
import net.uku3lig.ukulib.config.screen.AbstractConfigScreen;
import org.dussud.horizontal_scrolling_fix.HorizontalScrollingFix;
import org.dussud.horizontal_scrolling_fix.HorizontalScrollingFixConfig;
import java.util.List;
public class HorizontalScrollingFixConfigScreen extends AbstractConfigScreen<HorizontalScrollingFixConfig> {
protected HorizontalScrollingFixConfigScreen(Screen parent) {
super("horizontal-scrolling-fix.config.title", parent, HorizontalScrollingFix.manager);
}
@Override
protected WidgetCreator[] getWidgets(HorizontalScrollingFixConfig config) {
CyclingOption<Boolean> horizontalScrollingEnabled = CyclingOption.ofBoolean(
"horizontal-scrolling-fix.option.horizontalScrollingEnabled",
config.isHorizontalScrollingEnabled(),
value -> {
config.enableHorizontalScrolling(value);
rebuildWidgets();
}
);
CyclingOption<Boolean> horizontalScrollingDirectionReversed = new CyclingOption<Boolean>(
"horizontal-scrolling-fix.option.horizontalScrollingDirectionReversed",
List.of(Boolean.TRUE, Boolean.FALSE),
config.isHorizontalScrollingDirectionReversed(),
config::reverseHorizontalScrollingDirection,
CyclingOption.BOOL_TO_TEXT,
OptionInstance.noTooltip(),
config.isHorizontalScrollingEnabled()
);
return new WidgetCreator[]{
horizontalScrollingEnabled.wide(),
horizontalScrollingDirectionReversed.wide()
};
}
}
| 1 | package org.dussud.horizontal_scrolling_fix.client; |
| 2 | |
| 3 | import net.minecraft.client.OptionInstance; |
| 4 | import net.minecraft.client.gui.screens.Screen; |
| 5 | import net.uku3lig.ukulib.config.option.CyclingOption; |
| 6 | import net.uku3lig.ukulib.config.option.WidgetCreator; |
| 7 | import net.uku3lig.ukulib.config.screen.AbstractConfigScreen; |
| 8 | import org.dussud.horizontal_scrolling_fix.HorizontalScrollingFix; |
| 9 | import org.dussud.horizontal_scrolling_fix.HorizontalScrollingFixConfig; |
| 10 | |
| 11 | import java.util.List; |
| 12 | |
| 13 | public class HorizontalScrollingFixConfigScreen extends AbstractConfigScreen<HorizontalScrollingFixConfig> { |
| 14 | protected HorizontalScrollingFixConfigScreen(Screen parent) { |
| 15 | super("horizontal-scrolling-fix.config.title", parent, HorizontalScrollingFix.manager); |
| 16 | } |
| 17 | |
| 18 | @Override |
| 19 | protected WidgetCreator[] getWidgets(HorizontalScrollingFixConfig config) { |
| 20 | CyclingOption<Boolean> horizontalScrollingEnabled = CyclingOption.ofBoolean( |
| 21 | "horizontal-scrolling-fix.option.horizontalScrollingEnabled", |
| 22 | config.isHorizontalScrollingEnabled(), |
| 23 | value -> { |
| 24 | config.enableHorizontalScrolling(value); |
| 25 | rebuildWidgets(); |
| 26 | } |
| 27 | ); |
| 28 | CyclingOption<Boolean> horizontalScrollingDirectionReversed = new CyclingOption<Boolean>( |
| 29 | "horizontal-scrolling-fix.option.horizontalScrollingDirectionReversed", |
| 30 | List.of(Boolean.TRUE, Boolean.FALSE), |
| 31 | config.isHorizontalScrollingDirectionReversed(), |
| 32 | config::reverseHorizontalScrollingDirection, |
| 33 | CyclingOption.BOOL_TO_TEXT, |
| 34 | OptionInstance.noTooltip(), |
| 35 | config.isHorizontalScrollingEnabled() |
| 36 | ); |
| 37 | |
| 38 | return new WidgetCreator[]{ |
| 39 | horizontalScrollingEnabled.wide(), |
| 40 | horizontalScrollingDirectionReversed.wide() |
| 41 | }; |
| 42 | } |
| 43 | } |
| 44 |