List of usage examples for com.badlogic.gdx.scenes.scene2d.ui HorizontalGroup HorizontalGroup
public HorizontalGroup()
From source file:com.agateau.ui.UiBuilder.java
License:Apache License
protected HorizontalGroup createHorizontalGroup(XmlReader.Element element) { HorizontalGroup group = new HorizontalGroup(); group.space(element.getFloatAttribute("spacing", 0)); return group; }
From source file:com.bladecoder.engine.ui.DebugScreen.java
License:Apache License
@Override public void show() { float size = DPIUtils.getPrefButtonSize(); float margin = DPIUtils.getMarginSize(); stage = new Stage(new ScreenViewport()); table = new Table(ui.getSkin()); table.setFillParent(true);/* ww w. j a v a 2s. co m*/ table.left().top(); table.pad(margin); table.addListener(new InputListener() { @Override public boolean keyUp(InputEvent event, int keycode) { if (keycode == Input.Keys.ESCAPE || keycode == Input.Keys.BACK) ui.setCurrentScreen(Screens.SCENE_SCREEN); return true; } }); stage.setKeyboardFocus(table); Button back = new Button(ui.getSkin(), "back"); back.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { ui.setCurrentScreen(Screens.SCENE_SCREEN); } }); Label title = new Label("DEBUG SCREEN", ui.getSkin(), "title"); Table header = new Table(); header.padBottom(margin); Container<Button> cont = new Container<Button>(back); cont.size(size); header.add(cont); header.add(title).fillX().expandX().left(); table.add(header).colspan(3).fillX().expandX().left(); // ------------- SPEED speedText = new TextField(Float.toString(((SceneScreen) ui.getScreen(Screens.SCENE_SCREEN)).getSpeed()), ui.getSkin()); TextButton speedButton = new TextButton("Set Speed", ui.getSkin()); speedButton.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { SceneScreen scnScr = (SceneScreen) ui.getScreen(Screens.SCENE_SCREEN); scnScr.setSpeed(Float.parseFloat(speedText.getText())); } }); speedButton.pad(2, 3, 2, 3); HorizontalGroup sGroup = new HorizontalGroup(); sGroup.space(10); sGroup.addActor(speedText); sGroup.addActor(speedButton); table.row().pad(5).align(Align.left); table.add(new Label("Game Speed: ", ui.getSkin(), "debug")); table.add(sGroup); // ------------- RECORDING final Recorder r = ui.getRecorder(); TextButton play = new TextButton(r.isPlaying() ? "Stop" : "Play", ui.getSkin()); rec = new TextButton(r.isRecording() ? "Stop Rec" : "Rec", ui.getSkin()); play.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { final Recorder r = ui.getRecorder(); if (!r.isPlaying()) { r.setFilename(recordings.getSelected()); r.load(); r.setPlaying(true); ui.setCurrentScreen(Screens.SCENE_SCREEN); } else { r.setPlaying(false); ui.setCurrentScreen(Screens.SCENE_SCREEN); } } }); rec.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { final Recorder r = ui.getRecorder(); if (r.isPlaying()) { r.setPlaying(false); } if (!r.isRecording()) r.setFilename(recFilename.getText()); r.setRecording(!r.isRecording()); rec.setText(r.isRecording() ? "Stop Rec" : "Rec"); if (r.isRecording()) ui.setCurrentScreen(Screens.SCENE_SCREEN); } }); recordings = new SelectBox<String>(ui.getSkin()); String[] testFiles = EngineAssetManager.getInstance().listAssetFiles("/tests"); ArrayList<String> al = new ArrayList<String>(); for (String file : testFiles) if (file.endsWith(Recorder.RECORD_EXT)) al.add(file.substring(0, file.indexOf(Recorder.RECORD_EXT))); FileHandle[] testFiles2 = EngineAssetManager.getInstance().getUserFolder().list(); for (FileHandle file : testFiles2) if (file.name().endsWith(Recorder.RECORD_EXT)) al.add(file.name().substring(0, file.name().indexOf(Recorder.RECORD_EXT))); recordings.setItems(al.toArray(new String[al.size()])); play.pad(2, 3, 2, 3); rec.pad(2, 3, 2, 3); recFilename = new TextField(r.getFileName(), ui.getSkin()); HorizontalGroup rGroup = new HorizontalGroup(); rGroup.space(10); rGroup.addActor(recordings); rGroup.addActor(play); rGroup.addActor(new Label("Rec. Filename", ui.getSkin(), "debug")); rGroup.addActor(recFilename); rGroup.addActor(rec); table.row().pad(5).align(Align.left); table.add(new Label("Game Recording: ", ui.getSkin(), "debug")); table.add(rGroup); // ------------- SCENES TextButton go = new TextButton("Go", ui.getSkin()); go.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { World.getInstance().resume(); World.getInstance().setCutMode(false); World.getInstance().setCurrentScene(scenes.getSelected()); ui.setCurrentScreen(Screens.SCENE_SCREEN); } }); go.pad(2, 3, 2, 3); scenes = new SelectBox<String>(ui.getSkin()); scenes.setItems(World.getInstance().getScenes().keySet() .toArray(new String[World.getInstance().getScenes().size()])); HorizontalGroup scGroup = new HorizontalGroup(); scGroup.space(10); scGroup.addActor(scenes); scGroup.addActor(go); table.row().pad(5).align(Align.left); table.add(new Label("Go to Scene: ", ui.getSkin(), "debug")); table.add(scGroup); // ------------- TESTERBOT final TesterBot bot = ui.getTesterBot(); TextButton runBot = new TextButton(bot.isEnabled() ? "Stop" : "Run", ui.getSkin()); runBot.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { final TesterBot bot = ui.getTesterBot(); bot.setMaxWaitInverval(Float.parseFloat(testerTimeConf.getText())); bot.setInSceneTime(Float.parseFloat(inSceneTimeConf.getText())); bot.setExcludeList(testerExcludeList.getText()); bot.setEnabled(!bot.isEnabled()); ui.setCurrentScreen(Screens.SCENE_SCREEN); } }); runBot.pad(2, 3, 2, 3); testerTimeConf = new TextField(Float.toString(bot.getMaxWaitInverval()), ui.getSkin()); inSceneTimeConf = new TextField(Float.toString(bot.getInSceneTime()), ui.getSkin()); testerExcludeList = new TextField(bot.getExcludeList(), ui.getSkin()); TextButton testerLeaveConf = new TextButton("Leave", ui.getSkin(), "toggle"); testerLeaveConf.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { final TesterBot bot = ui.getTesterBot(); bot.setRunLeaveVerbs(!bot.isRunLeaveVerbs()); } }); testerLeaveConf.setChecked(bot.isRunLeaveVerbs()); TextButton testerGotoConf = new TextButton("Goto", ui.getSkin(), "toggle"); testerGotoConf.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { final TesterBot bot = ui.getTesterBot(); bot.setRunGoto(!bot.isRunGoto()); } }); testerGotoConf.setChecked(bot.isRunGoto()); TextButton testerPassText = new TextButton("Pass Texts", ui.getSkin(), "toggle"); testerPassText.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { final TesterBot bot = ui.getTesterBot(); bot.setPassTexts(!bot.isPassTexts()); } }); testerPassText.setChecked(bot.isPassTexts()); TextButton testerWaitWhenWalking = new TextButton("Wait When Walking", ui.getSkin(), "toggle"); testerWaitWhenWalking.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { final TesterBot bot = ui.getTesterBot(); bot.setWaitWhenWalking(!bot.isWaitWhenWalking()); } }); testerWaitWhenWalking.setChecked(bot.isWaitWhenWalking()); HorizontalGroup botGroup = new HorizontalGroup(); botGroup.space(10); botGroup.addActor(testerLeaveConf); botGroup.addActor(testerGotoConf); botGroup.addActor(testerPassText); botGroup.addActor(testerWaitWhenWalking); HorizontalGroup botGroup2 = new HorizontalGroup(); botGroup2.space(10); botGroup2.addActor(new Label("Excl. List: ", ui.getSkin(), "debug")); botGroup2.addActor(testerExcludeList); botGroup2.addActor(new Label("Interval: ", ui.getSkin(), "debug")); botGroup2.addActor(testerTimeConf); botGroup2.addActor(new Label("Scn Time: ", ui.getSkin(), "debug")); botGroup2.addActor(inSceneTimeConf); botGroup2.addActor(runBot); table.row().pad(5).align(Align.left); table.add(new Label("Tester Bot: ", ui.getSkin(), "debug")); table.add(botGroup); table.row().pad(5).align(Align.left); table.add(); table.add(botGroup2); // ------------- VERSION LABEL NOT IN TABLE String versionString = Config.getProperty(Config.TITLE_PROP, "title unspecified") + " v" + Config.getProperty(Config.VERSION_PROP, "unspecified") + "\n" + "Blade Engine: v" + Config.getProperty("bladeEngineVersion", "unspecified") + "\n" + "libGdx: v" + Config.getProperty("gdxVersion", "unspecified") + "\n" + "RoboVM: v" + Config.getProperty("roboVMVersion", "unspecified") + "\n"; // + "Gdx.app.getVersion: " + Gdx.app.getVersion(); Label version = new Label(versionString, ui.getSkin(), "debug"); version.setColor(Color.LIGHT_GRAY); Table versionStack = new Table(); versionStack.defaults().pad(DPIUtils.getSpacing()); versionStack.pad(0); versionStack.add(version); versionStack.bottom().left(); versionStack.setFillParent(true); versionStack.pack(); table.row(); table.add(versionStack).colspan(3).left(); table.pack(); ScrollPane scrollPane = new ScrollPane(table); scrollPane.setFillParent(true); stage.addActor(scrollPane); pointer = new Pointer(ui.getSkin()); stage.addActor(pointer); Gdx.input.setInputProcessor(stage); }
From source file:com.bladecoder.engineeditor.ui.components.HeaderPanel.java
License:Apache License
@SuppressWarnings("unchecked") public HeaderPanel(Skin skin, String title) { titleLbl = new Label(title, skin); north = new HorizontalGroup(); collapseImg = new Image(); collapseImg.setScaling(Scaling.none); if (collapsable) { north.addActor(collapseImg);// w ww . j a v a 2 s . com collapseImg.setDrawable(new TextureRegionDrawable(Ctx.assetManager.getIcon("ic_open"))); } top().left(); north.addActor(titleLbl); north.align(Align.left); north.fill(); add(north).expandX().fillX(); row(); Image image = new Image(skin.getDrawable("white_pixel")); image.setColor(skin.getColor("separator-color")); add(image).height(2).padBottom(4f).expandX().fill(); row().top().left(); contentCell = add().expand().fill(); if (collapsable) { titleLbl.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { toggleCollapse(); invalidateHierarchy(); } }); collapseImg.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { toggleCollapse(); invalidateHierarchy(); } }); } // setDebug(true); }
From source file:com.bladecoder.engineeditor.ui.components.ScopePanel.java
License:Apache License
public ScopePanel(Skin skin) { super(skin);//from w ww . j a v a 2s . c om this.skin = skin; buttonGroup = new ButtonGroup<TextButton>(); hPanel = new HorizontalGroup(); buttonGroup.setMaxCheckCount(1); buttonGroup.setMinCheckCount(1); buttonGroup.setUncheckLast(true); hPanel.addActor(new Label("Scope: ", skin)); addButton(WORLD_SCOPE); addButton(SCENE_SCOPE); addButton(ACTOR_SCOPE); add(hPanel).expandX().fillX().center(); buttonGroup.getButtons().get(2).setChecked(true); }
From source file:com.bladecoder.engineeditor.ui.components.TabPanel.java
License:Apache License
public TabPanel(Skin skin) { super(skin);/* w w w .j ava 2s .c o m*/ this.skin = skin; buttonGroup = new ButtonGroup<Button>(); header = new HorizontalGroup(); body = new Container<Actor>(); tabs = new ArrayList<Tab>(); buttonGroup.setMaxCheckCount(1); buttonGroup.setMinCheckCount(1); buttonGroup.setUncheckLast(true); add(header).expandX().fillX().left(); row(); add(body).expand().fill(); body.fill(); }
From source file:com.bladecoder.engineeditor.ui.SceneList.java
License:Apache License
public SceneList(Skin skin) { super(skin, true); HorizontalGroup chapterPanel = new HorizontalGroup(); chapters = new SelectBox<String>(skin); chapters.setFillParent(true);// w w w . ja v a 2 s. c om chapterPanel.addActor(new Label("CHAPTER ", skin, "big")); chapterPanel.addActor(chapters); clearChildren(); add(chapterPanel).expandX().fillX(); row(); add(toolbar).expandX().fillX(); row().fill(); add(container).expandY().fill(); initBtn = new ImageButton(skin); toolbar.addToolBarButton(initBtn, "ic_check", "Set init scene", "Set init scene"); initBtn.setDisabled(true); list.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { int pos = list.getSelectedIndex(); if (pos == -1) { Ctx.project.setSelectedScene(null); } else { Scene s = list.getItems().get(pos); Ctx.project.setSelectedScene(s); } toolbar.disableEdit(pos == -1); initBtn.setDisabled(pos == -1); } }); list.setCellRenderer(listCellRenderer); initBtn.addListener(new ChangeListener() { @Override public void changed(ChangeEvent event, Actor actor) { setDefault(); } }); chapters.addListener(chapterListener); Ctx.project.addPropertyChangeListener(new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent evt) { EditorLogger .debug(evt.getPropertyName() + " NEW:" + evt.getNewValue() + " OLD:" + evt.getOldValue()); if (evt.getPropertyName().equals(Project.CHAPTER_PROPERTY)) { addChapters(); } else if (evt.getPropertyName().equals(Project.NOTIFY_ELEMENT_DELETED)) { if (evt.getNewValue() instanceof World) { addChapters(); } else if (evt.getNewValue() instanceof Scene) { addElements(World.getInstance(), Arrays.asList(World.getInstance().getScenes().values().toArray(new Scene[0]))); } } else if (evt.getPropertyName().equals(Project.NOTIFY_PROJECT_LOADED)) { toolbar.disableCreate(Ctx.project.getProjectDir() == null); disposeBgCache = true; addChapters(); } else if (evt.getPropertyName().equals(Project.NOTIFY_ELEMENT_CREATED)) { if (evt.getNewValue() instanceof Scene && !(evt.getSource() instanceof EditSceneDialog)) { addElements(World.getInstance(), Arrays.asList(World.getInstance().getScenes().values().toArray(new Scene[0]))); } } } }); }
From source file:com.gdx.extension.ui.grid.GridSelection.java
License:Apache License
/** * Add a row to the {@link GridSelection grid}. * The {@link GridSelection grid} must be in horizontal mode. * //from w ww .j av a 2s.c o m * @return the added row * @throws OptimizationException if try to add row in vertical mode */ public HorizontalGroup addRow() { if (isVertical) throw new OptimizationException("GridSelection is set to vertical, so you cannot add rows."); HorizontalGroup _group = new HorizontalGroup(); rows.add(_group); super.add(_group).left().row(); itemCount++; return _group; }
From source file:com.gdx.extension.ui.menu.ToolBar.java
License:Apache License
public ToolBar(Skin skin, String styleName) { super(skin);/*from w ww . j a v a2 s .c o m*/ bar = new HorizontalGroup(); add(bar); setStyle(skin.get(styleName, ToolBarStyle.class)); }
From source file:com.gdx.extension.ui.slide.SlideShow.java
License:Apache License
public SlideShow(boolean isVertical, Skin skin, String styleName) { super(skin);/*from w ww.j av a2s .c o m*/ setStyle(skin.get(styleName, SlideShowStyle.class)); this.isVertical = isVertical; content = (isVertical) ? new VerticalGroup() : new HorizontalGroup(); ScrollPaneStyle _scrollStyle = new ScrollPaneStyle(); contentScroll = new ScrollPane(content, _scrollStyle); contentScroll.setScrollingDisabled(isVertical, !isVertical); contentScroll.setOverscroll(false, false); setBackground(style.background); previousScrollButton = new ImageButton(getStyle().previousScroll); previousScrollButtonCell = add(previousScrollButton); if (isVertical) previousScrollButtonCell.row(); Cell<ScrollPane> _contentCell = add(contentScroll); if (isVertical) _contentCell.row(); nextScrollButton = new ImageButton(getStyle().nextScroll); nextScrollButtonCell = add(nextScrollButton); previousScrollButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { if (SlideShow.this.isVertical) contentScroll.setScrollPercentY(contentScroll.getScrollPercentY() - 0.1f); else contentScroll.setScrollPercentX(contentScroll.getScrollPercentX() - 0.1f); } }); nextScrollButton.addListener(new ClickListener() { @Override public void clicked(InputEvent event, float x, float y) { if (SlideShow.this.isVertical) contentScroll.setScrollPercentY(contentScroll.getScrollPercentY() + 0.1f); else contentScroll.setScrollPercentX(contentScroll.getScrollPercentX() + 0.1f); } }); }
From source file:com.gdx.extension.ui.tab.TabPane.java
License:Apache License
/** * Create a {@link TabPane} with the specified style. * /*from w w w. ja v a2 s. co m*/ * @param isHorizontal set tabs * @param skin the skin to use for style * @param styleName the name of the style to use */ public TabPane(TabPosition tabPos, Skin skin, String styleName) { super(skin); tabs = new Array<Tab>(); setStyle(skin.get(styleName, TabPaneStyle.class)); buttonGroup = new ButtonGroup(); if (tabPos == TabPosition.TOP || tabPos == TabPosition.BOTTOM) { tabGroup = new HorizontalGroup(); } else { tabGroup = new VerticalGroup().fill(); } container = new Container<TabContainer>(); container.fill(); this.left().top(); if (tabPos == TabPosition.TOP) { addTabs(tabPos); this.row(); addBody(); } else if (tabPos == TabPosition.BOTTOM) { addBody(); this.row(); addTabs(tabPos); } else if (tabPos == TabPosition.LEFT) { addTabs(tabPos); addBody(); } else if (tabPos == TabPosition.RIGHT) { addBody(); addTabs(tabPos); } }