public static void open( Plugin plugin, SpoutPlayer splayer) { // method used to open the GUI for a player GenericTexture face = new GenericTexture(); int width = splayer.getCurrentScreen().getWidth(); int height = splayer.getCurrentScreen().getHeight(); face.setUrl( "http://landoflegend.net/forums/images/CoderGreen/site_logo.png"); // this must be a png // image face.setWidth(splayer.getCurrentScreen().getWidth() / 8) .setHeight( splayer.getCurrentScreen().getHeight() / 8); // you can manipulate the size of most widgets // face.setAnchor(WidgetAnchor.CENTER_CENTER); // the enum type WidgetAnchor provides a // convenience method for placing widgets face.setX(width / 2 - face.getWidth() / 2); face.setY(height - face.getHeight() - 5); // GenericButton button = new GenericButton("The Drogans?!"); // button.setWidth(80); // button.setHeight(20); // button.setX(width/4); // button.setY(height/2); // button.setAnchor(WidgetAnchor.CENTER_LEFT); GenericListWidget scrollTry = new GenericListWidget(); ListWidgetItem item = new ListWidgetItem("Drogans", "Drogans"); scrollTry.addItem(item); scrollTry.setX(width / 4); scrollTry.setY(height / 2); GenericLabel label = new GenericLabel("Clans - First try"); // label.setAnchor(WidgetAnchor.CENTER_RIGHT); label.setWidth(80); label.setHeight(40); label.setScale(1); label.setX(width / 2 - label.getWidth() / 2); label.setY(20); GenericPopup popup = new GenericPopup(); // create the popup (A popup will "free the mouse") popup.attachWidget(plugin, face); // attach any widgets we want to the popup popup.attachWidget(plugin, scrollTry); popup.attachWidget(plugin, label); // button.set splayer.closeActiveWindow(); splayer.getMainScreen().attachPopupScreen(popup); // attach the popup to the players screen }
public void onCustomEvent(Event event) { if (event instanceof ButtonClickEvent) { Button button = ((ButtonClickEvent) event).getButton(); UUID uuid = button.getId(); SpoutPlayer sPlayer = ((ButtonClickEvent) event).getPlayer(); ItemStack itemInHand = sPlayer.getInventory().getItemInHand(); int id = sPlayer.getEntityId(); if (BITBook.BITButtons.get(uuid) == "saveBookButton") { BITBook.popupScreen.get(id).close(); BITBook.cleanupPopupScreen(sPlayer); BITBook.BITButtons.remove(uuid); int i = BITBook.currentPageNo.get(id); BITBook.bodytextGUI2.get(id)[i] = BITBook.bodytextGUI.get(id).getText(); BITBook.saveBook(sPlayer, BITBook.currentBookId.get(id)); itemInHand.setDurability(BITBook.currentBookId.get(id)); sPlayer.closeActiveWindow(); BITBook.hasOpenedBook.put(id, false); } else if (BITBook.BITButtons.get(uuid) == "cancelBookButton" || BITBook.BITButtons.get(uuid) == "returnBookButton") { BITBook.popupScreen.get(id).close(); BITBook.cleanupPopupScreen(sPlayer); BITBook.BITButtons.remove(uuid); BITBook.bitBooks.remove(BITBook.currentBookId.get(id)); BITBook.currentBookId.put(id, (short) 1000); sPlayer.closeActiveWindow(); BITBook.hasOpenedBook.put(id, false); } else if ((BITBook.BITButtons.get(uuid) == "nextPageButton")) { if (validateFields(sPlayer)) { BITBook.showNextPage(sPlayer); } } else if ((BITBook.BITButtons.get(uuid) == "previousPageButton")) { if (validateFields(sPlayer)) { BITBook.showPreviousPage(sPlayer); } } else if ((BITBook.BITButtons.get(uuid) == "masterCopyButton")) { if (validateFields(sPlayer)) { if (BITBook.masterCopyGUI.get(id)) { BITBook.masterCopyGUI.put(id, false); } else { BITBook.masterCopyGUI.put(id, true); } BITBook.masterCopyButtonGUI.get(id).setText("Master:" + BITBook.masterCopyGUI.get(id)); BITBook.masterCopyButtonGUI.get(id).setDirty(true); } } else if ((BITBook.BITButtons.get(uuid) == "forceBookToPlayerInventoryButton")) { if (validateFields(sPlayer)) { if (BITBook.forceBookToPlayerInventoryGUI.get(id)) { BITBook.forceBookToPlayerInventoryGUI.put(id, false); } else { BITBook.forceBookToPlayerInventoryGUI.put(id, true); } BITBook.forceBookToPlayerInventoryButtonGUI .get(id) .setText("Force:" + BITBook.forceBookToPlayerInventoryGUI.get(id)); BITBook.forceBookToPlayerInventoryButtonGUI.get(id).setDirty(true); } } else if ((BITBook.BITButtons.get(uuid) == "canBeMovedFromInventoryButton")) { if (validateFields(sPlayer)) { if (BITBook.canBeMovedFromInventoryGUI.get(id)) { BITBook.canBeMovedFromInventoryGUI.put(id, false); } else { BITBook.canBeMovedFromInventoryGUI.put(id, true); } BITBook.canBeMovedFromInventoryButtonGUI .get(id) .setText("Moved:" + BITBook.canBeMovedFromInventoryGUI.get(id)); BITBook.canBeMovedFromInventoryButtonGUI.get(id).setDirty(true); } } else if ((BITBook.BITButtons.get(uuid) == "copyTheBookWhenMovedButton")) { if (validateFields(sPlayer)) { if (BITBook.copyTheBookWhenMovedGUI.get(id)) { BITBook.copyTheBookWhenMovedGUI.put(id, false); } else { BITBook.copyTheBookWhenMovedGUI.put(id, true); } BITBook.copyTheBookWhenMovedButtonGUI .get(id) .setText("Copy:" + BITBook.copyTheBookWhenMovedGUI.get(id)); BITBook.copyTheBookWhenMovedButtonGUI.get(id).setDirty(true); } } // ************************************ // This only happens if I have forgot to handle a button // ************************************ else { if (BITConfig.DEBUG_GUI) sPlayer.sendMessage( "BITBookSpoutListener: Unknow button:" + BITBook.BITButtons.get(uuid)); } } }