List of usage examples for com.badlogic.gdx.scenes.scene2d.ui Button Button
public Button(Drawable up)
From source file:ca.hiphiparray.amazingmaze.FishMiniGame.java
License:Open Source License
/** * Constructor for FishMiniGame./* w w w. jav a 2 s . c o m*/ * * @param game the {@link AmazingMazeGame} instance that is managing this screen. * @param player the {@link Player} instance that completed the last level. */ public FishMiniGame(final AmazingMazeGame game, Player player) { this.game = game; this.player = player; fishNumber = new int[5]; fishNumber[0] = this.player.blueCollected; fishNumber[1] = this.player.purpleCollected; fishNumber[2] = this.player.greenCollected; fishNumber[3] = this.player.redCollected; fishNumber[4] = this.player.orangeCollected; answer = 0; for (int i = 0; i < fishNumber.length; i++) { answer += fishNumber[i] * fishValue[i]; } stage = new Stage(new ScreenViewport(), this.game.batch); menuTable = new Table(); fishTable = new Table(); canvas = new Canvas( new Pixmap(Gdx.graphics.getWidth(), Gdx.graphics.getHeight() + shift, Pixmap.Format.RGB565)); menuTable.setFillParent(true); menuTable.top(); fishTable.bottom(); fishTable.setFillParent(true); fishImage = new Image[5]; TextureAtlas atlas = this.game.assets.manager.get(Assets.GAME_ATLAS_LOCATION, TextureAtlas.class); fishImage[0] = new Image(atlas.findRegion(Assets.FISH + Assets.BLUE_MODIFIER)); fishImage[0].setScale(4f); fishImage[1] = new Image(atlas.findRegion(Assets.FISH + Assets.PURPLE_MODIFIER)); fishImage[1].setScale(4f); fishImage[2] = new Image(atlas.findRegion(Assets.FISH + Assets.GREEN_MODIFIER)); fishImage[2].setScale(4f); fishImage[3] = new Image(atlas.findRegion(Assets.FISH + Assets.RED_MODIFIER)); fishImage[3].setScale(4f); fishImage[4] = new Image(atlas.findRegion(Assets.FISH + Assets.ORANGE_MODIFIER)); fishImage[4].setScale(4f); pencilButton = new Button(new TextureRegionDrawable( new TextureRegion(this.game.assets.manager.get(Assets.PENCIL_BUTTON, Texture.class)))); pencilButton.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { if (pencilButton.isPressed()) { canvas.setColor(drawColor); } } }); eraserButton = new Button(new TextureRegionDrawable( new TextureRegion(this.game.assets.manager.get(Assets.ERASER_BUTTON, Texture.class)))); eraserButton.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { if (eraserButton.isPressed()) { canvas.setColor(clearColor); } } }); helpButton = new Button(new TextureRegionDrawable( new TextureRegion(this.game.assets.manager.get(Assets.HELP_BUTTON, Texture.class)))); helpButton.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { if (helpButton.isPressed()) { Label.LabelStyle labelStyle = new Label.LabelStyle( game.assets.getFont(Assets.MONO_REGULAR, Assets.SMALL_FONT_SIZE), Color.WHITE); final Dialog dialog = new Dialog("Help", game.assets.skin); final TextButton okButton = new TextButton("OK", game.assets.skin); dialog.getButtonTable().bottom(); Label label = new Label("Find the total value of fish that you retrieved!\n" + "Each colour corresponds to the colour of Canadian money.\n" + "The numbers correspond to each number of fish you got.\n\n" + "In case you forgot: blue is 5, purple is 10, green is 20, red is 50, and orange is 100.", labelStyle); label.setScale(.5f); label.setWrap(true); label.setAlignment(Align.center); dialog.add(label).width(500).pad(50); dialog.add(okButton).bottom(); okButton.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { if (okButton.isPressed()) { dialog.hide(); canvas.setColor(drawColor); } } }); dialog.key(Keys.ENTER, true); dialog.show(stage); } } }); checkButton = new Button(new TextureRegionDrawable( new TextureRegion(this.game.assets.manager.get(Assets.CHECK_BUTTON, Texture.class)))); checkButton.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { dialog(); } }); clearButton = new Button(new TextureRegionDrawable( new TextureRegion(this.game.assets.manager.get(Assets.CLEAR_BUTTON, Texture.class)))); clearButton.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { if (clearButton.isPressed()) { canvas.clear(); canvas.setColor(drawColor); } } }); answerField = new TextField("", game.assets.skin); answerField.setTextFieldListener(new TextFieldListener() { @Override public void keyTyped(TextField textField, char key) { if (key == (char) 13) { stage.unfocus(answerField); dialog(); } } }); stage.addActor(menuTable); stage.addActor(canvas); stage.addActor(fishTable); menuTable.clear(); fishTable.clear(); helpButton.right(); menuTable.background(new TextureRegionDrawable( new TextureRegion(this.game.assets.manager.get(Assets.MINI_BACKGROUND, Texture.class)))); menuTable.add(pencilButton).pad(10).size(64); menuTable.add(eraserButton).pad(10).size(64); menuTable.add(clearButton).pad(10).size(64); menuTable.add(helpButton).pad(10).size(64); menuTable.row(); Label.LabelStyle labelStyle = new Label.LabelStyle( game.assets.getFont(Assets.SANS_REGULAR, Assets.REGULAR_FONT_SIZE), Color.WHITE); for (int i = 0; i < 5; i++) { fishTable.add(fishImage[i]).bottom().left().padLeft(10); } fishTable.add(answerField).minWidth(150).padLeft(150); fishTable.add(checkButton).pad(10).size(64); fishTable.row(); for (int i = 0; i < 5; i++) { fishTable.add(new Label(fishNumber[i] + "", labelStyle)).pad(30).center(); } fishTable.row(); setupPauseMenu(); input = new InputMultiplexer(stage, this); input.addProcessor(pauseMenu); }
From source file:com.andgate.ikou.view.MainMenuScreen.java
License:Open Source License
public void buildStage() { stage.clear();/* ww w. ja va2s .c om*/ stage.getViewport().setWorldSize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight()); stage.getViewport().update(Gdx.graphics.getWidth(), Gdx.graphics.getHeight(), true); final LabelStyle titleLabelStyle = new LabelStyle(game.logoFont, Color.CYAN); final ShaderLabel titleLabel = new ShaderLabel(Constants.GAME_NAME, titleLabelStyle, game.fontShader); final LabelStyle buttonLabelStyle = new LabelStyle(game.menuOptionFont, Color.WHITE); final ButtonStyle buttonStyle = new ButtonStyle(game.skin.getDrawable("default-round"), game.skin.getDrawable("default-round-down"), game.skin.getDrawable("default-round")); final ShaderLabel playButtonLabel = new ShaderLabel(PLAY_BUTTON_TEXT, buttonLabelStyle, game.fontShader); final Button playButton = new Button(buttonStyle); playButton.add(playButtonLabel); playButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { //game.buttonPressedSound.play(); game.setScreen(new LevelSelectScreen(game)); MainMenuScreen.this.dispose(); } }); final ShaderLabel buildButtonLabel = new ShaderLabel(BUILD_BUTTON_TEXT, buttonLabelStyle, game.fontShader); final Button buildButton = new Button(buttonStyle); buildButton.add(buildButtonLabel); buildButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { //game.buttonPressedSound.play(); game.setScreen(new LevelBuilderScreen(game)); MainMenuScreen.this.dispose(); } }); Table table = new Table(); table.add(titleLabel).center().top().spaceBottom(25.0f).row(); table.add(playButton).fill().spaceBottom(20.0f).center().bottom().row(); table.add(buildButton).fill().spaceBottom(20.0f).center().bottom().row(); table.setFillParent(true); stage.addActor(table); }
From source file:com.binarytenshi.nopassing.state.MenuGameScreen.java
public MenuGameScreen() { stage = new Stage(); background = new Image(new Texture(FileHelper.getFile(Path.Menu, "back.png"))); Texture playTexture = new Texture(FileHelper.getFile(Path.Menu, "play.png")); Texture quitTexture = new Texture(FileHelper.getFile(Path.Menu, "quit.png")); ButtonStyle style = new ButtonStyle(); style.up = new TextureRegionDrawable(new TextureRegion(playTexture, 1024, 256)); Button playButton = new Button(style); playButton.setBounds(25, 50, 128, 32); playButton.addListener(new ClickListener() { @Override//from w ww . j av a 2 s . c o m public void clicked(InputEvent event, float x, float y) { NoPassing.instance.setScreen(GameScreen.Game.getScreen()); } }); style = new ButtonStyle(); style.up = new TextureRegionDrawable(new TextureRegion(quitTexture, 1024, 256)); Button quitButton = new Button(style); quitButton.setBounds(CameraHandler.getCamera().viewportWidth - 25 - 128, 50, 128, 32); quitButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { Gdx.app.exit(); } }); stage.addActor(background); stage.addActor(playButton); stage.addActor(quitButton); }
From source file:com.bladecoder.engine.ui.InventoryUI.java
License:Apache License
public InventoryUI(SceneScreen scr, ScenePointer pointer) { style = scr.getUI().getSkin().get(InventoryUIStyle.class); sceneScreen = scr;//from w w w .j av a2 s . c om this.pointer = pointer; inventoryPos = InventoryPos.valueOf(Config.getProperty(Config.INVENTORY_POS_PROP, "DOWN").toUpperCase()); autosize = Config.getProperty(Config.INVENTORY_AUTOSIZE_PROP, true); addListener(new InputListener() { @Override public void touchUp(InputEvent event, float x, float y, int pointer, int button) { if (draggedActor != null) { stopDragging(button); } else { InteractiveActor actor = getItemAt(x, y); if (actor != null) { sceneScreen.actorClick(actor, button); } else { hide(); } } } @Override public boolean mouseMoved(InputEvent event, float x, float y) { return true; } @Override public void touchDragged(InputEvent event, float x, float y, int pointer) { if (draggedActor == null) startDragging(x, y); } @Override public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) { return true; } @Override public void exit(InputEvent event, float x, float y, int pointer, com.badlogic.gdx.scenes.scene2d.Actor toActor) { // EngineLogger.debug("EXIT EVENT: " + toActor); if (!(toActor instanceof PieMenu) && !(toActor instanceof InventoryUI) && draggedActor != null) hide(); } }); if (style.menuButtonStyle != null) { menuButton = new Button(style.menuButtonStyle); addActor(menuButton); menuButton.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, com.badlogic.gdx.scenes.scene2d.Actor actor) { sceneScreen.getUI().setCurrentScreen(UI.Screens.MENU_SCREEN); } }); float iconSize = DPIUtils.getPrefButtonSize(); menuButton.setSize(iconSize, iconSize); } }
From source file:com.bladecoder.engine.ui.LoadSaveScreen.java
License:Apache License
/** * Creates a button to represent one slot * * @param slot/* ww w.j a va 2s . c o m*/ * @return The button to use for one slot */ private Button getSlotButton(String slot) { final Skin skin = ui.getSkin(); final Button button = new Button(new ButtonStyle()); final ButtonStyle style = button.getStyle(); style.up = style.down = skin.getDrawable("black"); String textLabel = I18N.getString("ui.newSlot"); button.setSize(slotWidth, slotHeight); if (slotExists(slot)) { button.add(getScreenshot(slot)).maxSize(slotWidth * .95f, slotHeight * .95f); try { long l = Long.parseLong(slot); Date d = new Date(l); textLabel = (new SimpleDateFormat()).format(d); } catch (Exception e) { textLabel = slot; } button.addListener(loadClickListener); } else { Image fg = new Image(skin.getDrawable("plus")); button.add(fg).maxSize(slotHeight / 2, slotHeight / 2); button.addListener(saveClickListener); } button.row(); Label label = new Label(textLabel, skin); label.setAlignment(Align.center); button.add(label).fillX(); button.setName(slot); return button; }
From source file:com.blastedstudios.gdxworld.util.ui.Scene2DUtils.java
License:Apache License
/** creates a {@link Button} according to the given {@link ButtonStyle} instance that may be {@link ButtonStyle}, {@link TextButtonStyle}, {@link ImageButtonStyle} or {@link ImageTextButtonStyle} */ public static Button newButton(ButtonStyle style, String textIfAny) { if (style instanceof ImageTextButtonStyle) return new ImageTextButton(textIfAny, (ImageTextButtonStyle) style); if (style instanceof TextButtonStyle) return new TextButton(textIfAny, (TextButtonStyle) style); if (style instanceof ImageButtonStyle) return new ImageButton((ImageButtonStyle) style); return new Button(style); }
From source file:com.forerunnergames.peril.client.ui.widgets.AbstractWidgetFactory.java
License:Open Source License
@Override public Button createButton(final Button.ButtonStyle style) { Arguments.checkIsNotNull(style, "style"); return new Button(style); }
From source file:com.forerunnergames.peril.client.ui.widgets.personicons.players.AbstractNullPlayerIconWidgetFactory.java
License:Open Source License
@Override public Button createPlayerIconButton(final PlayerColor color) { return new Button(createPlayerIconStyle(color)); }
From source file:com.jumpbuttonstudios.vikingdodge.ui.popup.GameOverPopup.java
License:Apache License
@Override public void create() { setScreenPositions(vikingDodge.getUi().getWidth() / 2 - (background.getWidth() / 2), vikingDodge.getUi().getHeight() * 1.25f, vikingDodge.getUi().getWidth() / 2 - (background.getWidth() / 2), vikingDodge.getUi().getHeight() / 2 - (background.getHeight() / 2.5f)); mainmenu = new Button(Assets.skin.get("mainmenuGoButton", ButtonStyle.class)); playagain = new Button(Assets.skin.get("playagainButton", ButtonStyle.class)); highscores = new Button(Assets.skin.get("highscores", ButtonStyle.class)); facebook = new Button(Assets.skin.get("facebookButton", ButtonStyle.class)); twitter = new Button(Assets.skin.get("twitterButton", ButtonStyle.class)); scoreCounterLabel = new ScoreCounterLabel(vikingDodge.getEntityHandler().getPlayer(), Assets.skin.get("largeLabel", LabelStyle.class)); scoreCounterLabel.setPosition(background.getWidth() / 2 - (scoreCounterLabel.getTextBounds().width / 2), background.getHeight() - scoreCounterLabel.getHeight() * 2f); playagain.setPosition(background.getWidth() / 2 - (playagain.getWidth() / 2), 0 + (playagain.getHeight() / 4)); mainmenu.setPosition(background.getWidth() / 2 - (mainmenu.getWidth() / 2) - 160, 0 + (mainmenu.getHeight() / 10)); highscores.setPosition(background.getWidth() / 2 - (highscores.getWidth() / 2) + 160, 0 + (mainmenu.getHeight() / 10)); twitter.setSize(twitter.getWidth() / 2, twitter.getHeight() / 2); twitter.setPosition(background.getWidth() / 2 - (twitter.getWidth() / 2) + 60, playagain.getTop()); facebook.setSize(facebook.getWidth() / 2, facebook.getHeight() / 2); facebook.setPosition(background.getWidth() / 2 - (facebook.getWidth() / 2) - 60, playagain.getTop()); }
From source file:com.jumpbuttonstudios.vikingdodge.ui.popup.HighscoresPopup.java
License:Apache License
public Table createTabButtons() { Table table = new Table(); Button[] buttons = new Button[3]; for (int x = 0; x < 3; x++) { buttons[x] = new Button(Assets.skin.get("emptyButton", ButtonStyle.class)); buttons[x].setName("button" + x); }// w ww . j a va 2 s.c om buttons[0].addListener(new ActorGestureListener() { @Override public void tap(InputEvent event, float x, float y, int count, int button) { back.setPosition(background.getWidth() - (background.getWidth() / 3) + (back.getWidth() / 2), backButtonPos.y); bringPanelToFront(personal); } }); buttons[1].addListener(new ActorGestureListener() { @Override public void tap(InputEvent event, float x, float y, int count, int button) { back.setPosition(backButtonPos.x, backButtonPos.y); bringPanelToFront(global); } }); buttons[2].addListener(new ActorGestureListener() { @Override public void tap(InputEvent event, float x, float y, int count, int button) { back.setPosition(backButtonPos.x, backButtonPos.y); bringPanelToFront(friends); } }); for (Button button : buttons) { table.add(button); } table.setPosition(575, 625); return table; }