Example usage for com.badlogic.gdx.scenes.scene2d.ui HorizontalGroup HorizontalGroup

List of usage examples for com.badlogic.gdx.scenes.scene2d.ui HorizontalGroup HorizontalGroup

Introduction

In this page you can find the example usage for com.badlogic.gdx.scenes.scene2d.ui HorizontalGroup HorizontalGroup.

Prototype

public HorizontalGroup() 

Source Link

Usage

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);
    }
}