Skip to content

Commit e718018

Browse files
committed
merge WrappedButton and BaseWrappedButton to MenuButton
1 parent b98b024 commit e718018

16 files changed

Lines changed: 60 additions & 83 deletions

src/main/java/me/hsgamer/bettergui/api/button/BaseWrappedButton.java renamed to src/main/java/me/hsgamer/bettergui/api/button/MenuButton.java

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import io.github.projectunified.craftux.common.Button;
55
import io.github.projectunified.craftux.common.Element;
66
import me.hsgamer.bettergui.api.menu.Menu;
7+
import me.hsgamer.bettergui.api.menu.MenuElement;
78
import me.hsgamer.bettergui.builder.ButtonBuilder;
89
import org.jetbrains.annotations.NotNull;
910

@@ -13,18 +14,18 @@
1314
/**
1415
* The base class of wrapped button
1516
*/
16-
public abstract class BaseWrappedButton<B extends Button> implements WrappedButton {
17+
public abstract class MenuButton implements Button, MenuElement, Element {
1718
protected final Menu menu;
1819
protected final String name;
1920
protected final Map<String, Object> options;
20-
protected B button;
21+
protected Button button;
2122

2223
/**
2324
* Create a new wrapped button
2425
*
2526
* @param input the input
2627
*/
27-
protected BaseWrappedButton(ButtonBuilder.Input input) {
28+
protected MenuButton(ButtonBuilder.Input input) {
2829
this.menu = input.menu;
2930
this.name = input.name;
3031
this.options = input.options;
@@ -37,7 +38,16 @@ protected BaseWrappedButton(ButtonBuilder.Input input) {
3738
*
3839
* @return the button
3940
*/
40-
protected abstract B createButton(Map<String, Object> section);
41+
protected abstract Button createButton(Map<String, Object> section);
42+
43+
/**
44+
* Refresh the button for the unique id
45+
*
46+
* @param uuid the unique id
47+
*/
48+
public void refresh(UUID uuid) {
49+
// EMPTY
50+
}
4151

4252
/**
4353
* Get the options of the button
@@ -48,7 +58,6 @@ public Map<String, Object> getOptions() {
4858
return options;
4959
}
5060

51-
@Override
5261
public String getName() {
5362
return name;
5463
}

src/main/java/me/hsgamer/bettergui/api/button/WrappedButton.java

Lines changed: 0 additions & 28 deletions
This file was deleted.

src/main/java/me/hsgamer/bettergui/builder/ButtonBuilder.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import io.github.projectunified.minelib.plugin.base.Loadable;
44
import me.hsgamer.bettergui.BetterGUI;
5-
import me.hsgamer.bettergui.api.button.WrappedButton;
5+
import me.hsgamer.bettergui.api.button.MenuButton;
66
import me.hsgamer.bettergui.api.menu.Menu;
77
import me.hsgamer.bettergui.button.*;
88
import me.hsgamer.bettergui.config.MainConfig;
@@ -18,7 +18,7 @@
1818
/**
1919
* The button builder
2020
*/
21-
public final class ButtonBuilder extends FunctionalMassBuilder<ButtonBuilder.Input, WrappedButton> implements Loadable {
21+
public final class ButtonBuilder extends FunctionalMassBuilder<ButtonBuilder.Input, MenuButton> implements Loadable {
2222
public ButtonBuilder() {
2323
}
2424

@@ -58,7 +58,7 @@ protected String getType(Input input) {
5858
*
5959
* @return the child buttons
6060
*/
61-
public List<WrappedButton> getChildButtons(WrappedButton parentButton, Map<String, Object> section) {
61+
public List<MenuButton> getChildButtons(MenuButton parentButton, Map<String, Object> section) {
6262
return section.entrySet()
6363
.stream()
6464
.filter(entry -> entry.getValue() instanceof Map)

src/main/java/me/hsgamer/bettergui/button/ActionButton.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import io.github.projectunified.craftux.common.Button;
44
import me.hsgamer.bettergui.BetterGUI;
55
import me.hsgamer.bettergui.action.ClickActionHandler;
6-
import me.hsgamer.bettergui.api.button.BaseWrappedButton;
6+
import me.hsgamer.bettergui.api.button.MenuButton;
77
import me.hsgamer.bettergui.builder.ButtonBuilder;
88
import me.hsgamer.bettergui.config.MainConfig;
99
import me.hsgamer.bettergui.util.SchedulerUtil;
@@ -19,15 +19,15 @@
1919
import java.util.function.Consumer;
2020
import java.util.function.Function;
2121

22-
public abstract class ActionButton<B extends Button> extends BaseWrappedButton<B> {
22+
public abstract class ActionButton extends MenuButton {
2323
protected ActionButton(ButtonBuilder.Input input) {
2424
super(input);
2525
}
2626

27-
protected abstract Function<Consumer<InventoryClickEvent>, B> getButtonFunction(Map<String, Object> section);
27+
protected abstract Function<Consumer<InventoryClickEvent>, Button> getButtonFunction(Map<String, Object> section);
2828

2929
@Override
30-
protected B createButton(Map<String, Object> section) {
30+
protected Button createButton(Map<String, Object> section) {
3131
Map<String, Object> keys = MapUtils.createLowercaseStringObjectMap(section);
3232
ClickActionHandler clickActionHandler = new ClickActionHandler(
3333
menu,

src/main/java/me/hsgamer/bettergui/button/EmptyButton.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
package me.hsgamer.bettergui.button;
22

33
import io.github.projectunified.craftux.common.Button;
4-
import me.hsgamer.bettergui.api.button.BaseWrappedButton;
4+
import me.hsgamer.bettergui.api.button.MenuButton;
55
import me.hsgamer.bettergui.builder.ButtonBuilder;
66

77
import java.util.Map;
88

9-
public class EmptyButton extends BaseWrappedButton<Button> {
9+
public class EmptyButton extends MenuButton {
1010
public EmptyButton(ButtonBuilder.Input input) {
1111
super(input);
1212
}

src/main/java/me/hsgamer/bettergui/button/LegacyMenuButton.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22

33
import io.github.projectunified.craftux.button.PredicateButton;
44
import io.github.projectunified.craftux.common.Button;
5-
import me.hsgamer.bettergui.api.button.BaseWrappedButton;
6-
import me.hsgamer.bettergui.api.button.WrappedButton;
5+
import me.hsgamer.bettergui.api.button.MenuButton;
76
import me.hsgamer.bettergui.builder.ButtonBuilder;
87
import me.hsgamer.hscore.common.MapUtils;
98

@@ -12,7 +11,7 @@
1211
import java.util.UUID;
1312
import java.util.concurrent.ConcurrentSkipListSet;
1413

15-
public class LegacyMenuButton extends BaseWrappedButton<WrappedPredicateButton.PredicateClickButton> {
14+
public class LegacyMenuButton extends MenuButton {
1615
private final Set<UUID> checked = new ConcurrentSkipListSet<>();
1716

1817
public LegacyMenuButton(ButtonBuilder.Input input) {
@@ -34,9 +33,9 @@ public void refresh(UUID uuid) {
3433
if (this.button == null) {
3534
return;
3635
}
37-
Button tempButton = this.button.getPredicateButton().getButton();
38-
if (tempButton instanceof WrappedButton) {
39-
((WrappedButton) tempButton).refresh(uuid);
36+
Button tempButton = ((WrappedPredicateButton.PredicateClickButton) this.button).getPredicateButton().getButton();
37+
if (tempButton instanceof MenuButton) {
38+
((MenuButton) tempButton).refresh(uuid);
4039
}
4140
}
4241
}

src/main/java/me/hsgamer/bettergui/button/TemplateButton.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
package me.hsgamer.bettergui.button;
22

3-
import io.github.projectunified.craftux.common.Button;
43
import me.hsgamer.bettergui.BetterGUI;
5-
import me.hsgamer.bettergui.api.button.BaseWrappedButton;
4+
import me.hsgamer.bettergui.api.button.MenuButton;
65
import me.hsgamer.bettergui.builder.ButtonBuilder;
76
import me.hsgamer.bettergui.config.TemplateConfig;
87

98
import java.util.Map;
109

11-
public class TemplateButton extends BaseWrappedButton<Button> {
10+
public class TemplateButton extends MenuButton {
1211
private Map<String, Object> finalOptions;
1312

1413
/**
@@ -22,7 +21,7 @@ public TemplateButton(ButtonBuilder.Input input) {
2221
}
2322

2423
@Override
25-
protected Button createButton(Map<String, Object> section) {
24+
protected MenuButton createButton(Map<String, Object> section) {
2625
finalOptions = BetterGUI.getInstance().get(TemplateConfig.class).getValues(section, "type");
2726
return BetterGUI.getInstance().get(ButtonBuilder.class).build(new ButtonBuilder.Input(getMenu(), getName(), finalOptions)).orElse(null);
2827
}

src/main/java/me/hsgamer/bettergui/button/WrappedAirButton.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
import java.util.function.Consumer;
1111
import java.util.function.Function;
1212

13-
public class WrappedAirButton extends ActionButton<Button> {
13+
public class WrappedAirButton extends ActionButton {
1414
public WrappedAirButton(ButtonBuilder.Input input) {
1515
super(input);
1616
}

src/main/java/me/hsgamer/bettergui/button/WrappedAnimatedButton.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22

33
import io.github.projectunified.craftux.button.AnimatedButton;
44
import me.hsgamer.bettergui.BetterGUI;
5-
import me.hsgamer.bettergui.api.button.BaseWrappedButton;
6-
import me.hsgamer.bettergui.api.button.WrappedButton;
5+
import me.hsgamer.bettergui.api.button.MenuButton;
76
import me.hsgamer.bettergui.builder.ButtonBuilder;
87
import me.hsgamer.bettergui.util.TickUtil;
98
import me.hsgamer.hscore.common.CollectionUtils;
@@ -13,7 +12,7 @@
1312
import java.math.BigDecimal;
1413
import java.util.*;
1514

16-
public class WrappedAnimatedButton extends BaseWrappedButton<AnimatedButton> {
15+
public class WrappedAnimatedButton extends MenuButton {
1716
public WrappedAnimatedButton(ButtonBuilder.Input input) {
1817
super(input);
1918
}
@@ -36,7 +35,7 @@ protected AnimatedButton createButton(Map<String, Object> section) {
3635
.map(Boolean::parseBoolean)
3736
.orElse(false);
3837

39-
List<WrappedButton> frames = Optional.ofNullable(keys.get("child"))
38+
List<MenuButton> frames = Optional.ofNullable(keys.get("child"))
4039
.flatMap(MapUtils::castOptionalStringObjectMap)
4140
.map(o -> BetterGUI.getInstance().get(ButtonBuilder.class).getChildButtons(this, o))
4241
.orElse(Collections.emptyList());
@@ -54,7 +53,7 @@ protected AnimatedButton createButton(Map<String, Object> section) {
5453
@Override
5554
public void refresh(UUID uuid) {
5655
if (this.button != null) {
57-
this.button.getButtons().stream().filter(WrappedButton.class::isInstance).forEach(button -> ((WrappedButton) button).refresh(uuid));
56+
((AnimatedButton) this.button).getButtons().stream().filter(MenuButton.class::isInstance).forEach(button -> ((MenuButton) button).refresh(uuid));
5857
}
5958
}
6059
}

src/main/java/me/hsgamer/bettergui/button/WrappedDummyButton.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import io.github.projectunified.craftitem.spigot.core.SpigotItem;
55
import io.github.projectunified.craftux.common.Button;
66
import me.hsgamer.bettergui.BetterGUI;
7-
import me.hsgamer.bettergui.api.button.BaseWrappedButton;
7+
import me.hsgamer.bettergui.api.button.MenuButton;
88
import me.hsgamer.bettergui.builder.ButtonBuilder;
99
import me.hsgamer.bettergui.builder.ItemModifierBuilder;
1010
import me.hsgamer.bettergui.util.StringReplacerApplier;
@@ -13,7 +13,7 @@
1313
import java.util.Map;
1414
import java.util.function.UnaryOperator;
1515

16-
public class WrappedDummyButton extends BaseWrappedButton<Button> {
16+
public class WrappedDummyButton extends MenuButton {
1717
public WrappedDummyButton(ButtonBuilder.Input input) {
1818
super(input);
1919
}

0 commit comments

Comments
 (0)