Skip to content

Commit 5b1e54d

Browse files
Yeah
1 parent b5d74d9 commit 5b1e54d

File tree

1 file changed

+34
-20
lines changed

1 file changed

+34
-20
lines changed

src/main/java/me/flame/menus/menu/SeparatedPagedMenu.java

Lines changed: 34 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,11 @@
22

33
import me.flame.menus.items.MenuItem;
44
import me.flame.menus.modifiers.Modifier;
5+
56
import org.bukkit.Bukkit;
67
import org.bukkit.entity.Player;
78
import org.bukkit.event.inventory.InventoryClickEvent;
9+
import org.bukkit.inventory.Inventory;
810
import org.bukkit.inventory.ItemStack;
911
import org.jetbrains.annotations.Contract;
1012
import org.jetbrains.annotations.NotNull;
@@ -76,7 +78,7 @@ private SeparatedPagedMenu(@NotNull UUID uuid, final int pageRows, final int pag
7678
super(pageRows, title, EnumSet.noneOf(Modifier.class));
7779
this.uuid = uuid;
7880
this.player = Objects.requireNonNull(Bukkit.getPlayer(uuid));
79-
this.mainInventory = PaginatedMenu.create(title, pageRows, pageCount, EnumSet.noneOf(Modifier.class));
81+
this.mainInventory = PaginatedMenu.create(title, type, pageCount, EnumSet.noneOf(Modifier.class));
8082

8183
this.pageRows = pageRows;
8284
this.pageSize = pageRows * 9;
@@ -90,11 +92,19 @@ private SeparatedPagedMenu(@NotNull UUID uuid, MenuType type, final int pageCoun
9092
super(type, title, EnumSet.noneOf(Modifier.class));
9193
this.uuid = uuid;
9294
this.player = Objects.requireNonNull(Bukkit.getPlayer(uuid));
93-
this.mainInventory = PaginatedMenu.create(title, pageRows, pageCount, EnumSet.noneOf(Modifier.class));
95+
this.mainInventory = PaginatedMenu.create(title, type, pageCount, EnumSet.noneOf(Modifier.class));
9496

9597
this.pages = pageCount;
9698
}
9799

100+
public <T extends Decorator> T getPageDecorator(Class<T> pageClass) {
101+
return mainInventory.getPageDecorator(pageClass);
102+
}
103+
104+
public PageDecoration getPageDecorator() {
105+
return mainInventory.getPageDecorator();
106+
}
107+
98108
/**
99109
* Updates the page {@link MenuItem} on the slot in the page
100110
* Can get the slot from {@link InventoryClickEvent#getSlot()}
@@ -134,37 +144,35 @@ public void updateItem(@NotNull Slot slot, @NotNull final MenuItem item) {
134144
}
135145

136146
@Override
137-
public SeparatedPagedMenu removeItems(@NotNull final MenuItem... item) {
138-
mainInventory.removeItems(item);
139-
return this;
140-
}
141-
142-
@Override
143-
public SeparatedPagedMenu removeItems(@NotNull final ItemStack... item) {
144-
mainInventory.removeItems(item);
147+
public SeparatedPagedMenu removeItem(@NotNull final MenuItem... item) {
148+
mainInventory.removeItem(item);
145149
return this;
146150
}
147151

152+
/**
153+
* @param itemStacks the items to remove
154+
* @return the object for chaining
155+
*/
148156
@Override
149-
public SeparatedPagedMenu removeItem(@NotNull final ItemStack item) {
150-
mainInventory.removeItem(item);
157+
public SeparatedPagedMenu removeItem(@NotNull List<MenuItem> itemStacks) {
158+
mainInventory.removeItem(itemStacks.toArray(new MenuItem[0]));
151159
return this;
152160
}
153161

154162
@Override
155-
public SeparatedPagedMenu removeItem(@NotNull final MenuItem item) {
163+
public SeparatedPagedMenu removeItem(@NotNull final ItemStack... item) {
156164
mainInventory.removeItem(item);
157165
return this;
158166
}
159167

160168
@Override
161-
public SeparatedPagedMenu addItem(MenuItem... items) {
169+
public SeparatedPagedMenu addItem(MenuItem... items) {
162170
mainInventory.addItem(items);
163171
return this;
164172
}
165173

166174
@Override
167-
public SeparatedPagedMenu addItem(ItemStack... items) {
175+
public SeparatedPagedMenu addItem(ItemStack... items) {
168176
mainInventory.addItem(items);
169177
return this;
170178
}
@@ -176,19 +184,19 @@ public SeparatedPagedMenu setItem(int slot, MenuItem item) {
176184
}
177185

178186
@Override
179-
public SeparatedPagedMenu setItem(@NotNull Slot slot, MenuItem item) {
187+
public SeparatedPagedMenu setItem(@NotNull Slot slot, MenuItem item) {
180188
mainInventory.setItem(slot, item);
181189
return this;
182190
}
183191

184192
@Override
185-
public SeparatedPagedMenu setItem(int slot, ItemStack item) {
193+
public SeparatedPagedMenu setItem(int slot, ItemStack item) {
186194
mainInventory.setItem(slot, item);
187195
return this;
188196
}
189197

190198
@Override
191-
public SeparatedPagedMenu setItem(@NotNull Slot slot, ItemStack item) {
199+
public SeparatedPagedMenu setItem(@NotNull Slot slot, ItemStack item) {
192200
mainInventory.setItem(slot, item);
193201
return this;
194202
}
@@ -269,8 +277,14 @@ public int getPagesSize() {
269277
}
270278

271279
@Override
272-
protected void recreateItems() {
273-
mainInventory.recreateItems();
280+
protected void recreateItems(Inventory inventory) {
281+
mainInventory.recreateItems(inventory);
282+
}
283+
284+
@Override
285+
public SeparatedPagedMenu update() {
286+
mainInventory.recreateItems(inventory);
287+
return this;
274288
}
275289

276290
/**

0 commit comments

Comments
 (0)