Example usage for com.badlogic.gdx.scenes.scene2d.ui SelectBox getList

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

Introduction

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

Prototype

public List<T> getList() 

Source Link

Document

Returns the list shown when the select box is open.

Usage

From source file:com.bladecoder.engineeditor.ui.EditAnimationDialog.java

License:Apache License

private void fillAnimations() {
    @SuppressWarnings("unchecked")
    SelectBox<String> cb = (SelectBox<String>) id.getField();
    cb.clearItems();//from   www . ja  v a  2 s . co m

    // When creating, give option to add all elements
    if (e == null)
        cb.getItems().add("<ADD ALL>");

    String ids[] = spriteWidget.getAnimations();
    for (String s : ids)
        cb.getItems().add(s);

    cb.getList().setItems(cb.getItems());
    if (cb.getItems().size > 0)
        cb.setSelectedIndex(0);

    cb.invalidateHierarchy();

    setAnimation();
}

From source file:com.bladecoder.engineeditor.ui.EditAnimationDialog.java

License:Apache License

private void addSources() {
    @SuppressWarnings("unchecked")
    SelectBox<String> cb = (SelectBox<String>) source.getField();
    String[] src = getSources();/*from w ww . j  a  va 2  s  .  co m*/
    cb.getItems().clear();

    for (String s : src)
        cb.getItems().add(s);

    cb.getList().setItems(cb.getItems());
    if (cb.getItems().size > 0)
        cb.setSelectedIndex(0);
    cb.invalidateHierarchy();
}

From source file:com.bladecoder.engineeditor.ui.EditSceneDialog.java

License:Apache License

private void fillBGRegions(InputPanel atlasInput, InputPanel regionInput) {
    @SuppressWarnings("unchecked")
    SelectBox<String> cb = (SelectBox<String>) regionInput.getField();

    // cb.clearItems();
    cb.getItems().clear();/*from   www .  j  a  v a2s. c o m*/

    if (atlas != null) {
        atlas.dispose();
        atlas = null;
    }

    if (backgroundAtlas.getText().isEmpty()) {
        setInfoWidget(new Label(INFO, getSkin()));
        return;
    }

    atlas = new TextureAtlas(Gdx.files.absolute(Ctx.project.getProjectPath() + Project.ATLASES_PATH + "/"
            + Ctx.project.getResDir() + "/" + atlasInput.getText() + ".atlas"));

    Array<AtlasRegion> regions = atlas.getRegions();

    for (AtlasRegion r : regions)
        if (cb.getItems().indexOf(r.name, false) == -1)
            cb.getItems().add(r.name);

    cb.getList().setItems(cb.getItems());
    if (cb.getItems().size > 0)
        cb.setSelectedIndex(0);

    cb.invalidateHierarchy();

    showBgImage(regionInput.getText());
}

From source file:org.anism.lotw.LOTW.java

License:Open Source License

public void initEverything() {
    Color fullAnti = new Color(G.getAntiColor());
    fullAnti.a = 1;/*from  ww w . ja va  2  s  .c om*/

    Texture upTexture = new Texture(Gdx.files.internal("images/grey_button_up.png"));
    Texture downTexture = new Texture(Gdx.files.internal("images/grey_button_down.png"));
    NinePatch buttonPatchUp = new NinePatch(upTexture, 11, 11, 11, 11);
    NinePatch buttonPatchDown = new NinePatch(downTexture, 11, 11, 11, 11);

    NinePatchDrawable npdUp = new NinePatchDrawable(buttonPatchUp);
    NinePatchDrawable npdDown = new NinePatchDrawable(buttonPatchDown);
    textButtonStyle = new TextButton.TextButtonStyle(npdUp, npdDown, npdUp, G.roboto16);
    textButtonStyle.fontColor = new Color(G.getAntiColor());
    textButtonStyle.fontColor.a = 1;
    buttonStyle = new ButtonStyle(npdUp, npdDown, npdUp);

    labelStyle = new Label.LabelStyle(G.roboto24, G.getAntiColor());
    labelStyleSmall = new Label.LabelStyle(G.roboto16, G.getAntiColor());
    resumeButton = addIconButton(game, G.playIcon, new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            if (!G.pausing) {
                G.pause();
            }
        }
    }, buttonWidth / dpi / 2 + 4 * dpi, -48, buttonWidth / dpi, 88);
    resumeButton.setColor(G.colors.green);
    exitButton = addIconButton(game, G.backIcon, new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            if (!G.pausing) {
                G.gameOver();
            }
        }
    }, -buttonWidth / dpi / 2 - 4 * dpi, -48, buttonWidth / dpi, 88);
    exitButton.setColor(G.colors.red);
    togglePauseButtons();

    //intro.addActor(logo);
    //putLogo(settings);
    putLogo(instructions);
    //putLogo(statistics);

    /*
    // intro screen:
    addButton(intro, game, "Start Game", 0, 0, 200f, 40f);
    addButton(intro, settings, "Settings", 0, -70, 100f, 40f);
    addButton(intro, instructions, "How to Play", 0, -120, 100f, 40f);
    */

    // settings screen:

    ImageTextButton.ImageTextButtonStyle lbs = new ImageTextButton.ImageTextButtonStyle(textButtonStyle);
    TextureRegionDrawable gamepadDrawable = new TextureRegionDrawable(new TextureRegion(G.controllerIcon));
    lbs.imageChecked = gamepadDrawable;
    lbs.imageCheckedOver = gamepadDrawable;
    lbs.imageDisabled = gamepadDrawable;
    lbs.imageDown = gamepadDrawable;
    lbs.imageOver = gamepadDrawable;
    lbs.imageUp = gamepadDrawable;

    logButton = new ImageTextButton("Sign In", lbs);
    if (actionResolver.getSignedInGPGS()) {
        logButton.setText("Sign Out");
    }
    logButton.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            if (actionResolver.getSignedInGPGS()) {
                actionResolver.logoutGPGS();
            } else {
                actionResolver.loginGPGS();
            }
            G.toggleAutologin();
        }
    });
    logButton.setWidth(184 * dpi);
    logButton.setHeight(88 * dpi);
    logButton.setColor(G.colors.grey);
    logButton.getImage().setColor(fullAnti);
    //settings.addActor(logButton);

    TextureRegionDrawable cbOn = new TextureRegionDrawable(new TextureRegion(G.dashIcon));
    TextureRegionDrawable cbOff = new TextureRegionDrawable(new TextureRegion(G.circleIcon));
    CheckBoxStyle cbs = new CheckBoxStyle(cbOff, cbOn, G.roboto16, fullAnti);
    cbs.checked = npdUp;
    cbs.checkedOver = npdUp;
    cbs.down = npdDown;
    cbs.over = npdUp;
    cbs.up = npdUp;

    // colorblind settings:
    CheckBox colorButton = new CheckBox("", cbs);
    colorButton.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            G.toggleColorblind();
        }
    });
    colorButton.setWidth(88 * dpi);
    colorButton.setHeight(88 * dpi);
    /*
    colorButton.setPosition(G.width/2 - 188 * dpi,
    G.height/2 + 100*dpi);
    */
    Table colorTable = makeSettingsTable("Display");
    colorButton.setColor(Math.random() > 0.5 ? G.colors.green : G.colors.red);
    colorButton.getImage().setColor(fullAnti);
    colorButton.setChecked(G.settings.colorblind);
    ListStyle listStyle = new ListStyle(G.roboto16, G.getAntiColor(), G.getAntiColor(), npdDown);
    listStyle.background = npdUp;
    SelectBoxStyle sbs = new SelectBoxStyle(G.roboto16, new Color(0x00000000), npdUp,
            new ScrollPane.ScrollPaneStyle(), listStyle);
    final SelectBox<Season> seasonPicker = new SelectBox(sbs);
    seasonPicker.setItems((Season[]) G.settings.getUnlockedSeasons());
    if (G.settings.unlock) {
        seasonPicker.setSelected(G.settings.unlockSeason);
    } else {
        seasonPicker.setSelected(G.settings.getSeason());
    }
    seasonPicker.setColor(G.colors.grey);
    seasonPicker.getList().setColor(G.colors.grey);
    Stack seasonStack = new Stack();
    final Container seasonImage = new Container(new Image(seasonPicker.getSelected().getIcon()));
    seasonImage.setSize(32, 32);
    seasonImage.setTouchable(Touchable.disabled);
    seasonImage.getActor().setColor(G.getAntiColor());
    seasonStack.add(seasonPicker);
    seasonStack.add(seasonImage);
    seasonPicker.addListener(new ChangeListener() {
        @Override
        public void changed(ChangeEvent e, Actor a) {
            Season s = seasonPicker.getSelected();
            if (s.getName().toUpperCase().equals("UNLOCK")) {
                G.glider.score = 0;
                G.settings.unlock = true;
                G.settings.setSeason(G.settings.getSeasons()[0]);
                G.updateBgColor();
                G.lotw.resetEverything();
            } else {
                G.settings.unlock = false;
                G.changeSeason(s);
            }
        }
    });
    putSettingsButton(colorTable, seasonStack, "Season.");
    CheckBox ninjaButton = new CheckBox("", cbs);
    ninjaButton.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            G.toggleNinja();
        }
    });
    ninjaButton.setColor(G.colors.grey);
    ninjaButton.getImage().setColor(fullAnti);
    ninjaButton.setChecked(G.settings.ninjaMode);
    putSettingsButton(colorTable, colorButton, "Add markings to distinguish red and green orbs.");
    putSettingsButton(colorTable, ninjaButton, "Ninja mode.");

    // advanced settings:
    CheckBox bottomButton = new CheckBox("", cbs);
    bottomButton.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            G.toggleBottomOut();
        }
    });
    bottomButton.setChecked(G.settings.bottomOut);
    bottomButton.setColor(G.colors.grey);
    bottomButton.getImage().setColor(fullAnti);
    Table bottomTable = makeSettingsTable("Advanced");
    putSettingsButton(bottomTable, bottomButton,
            "The glider respawns if it falls too far. Experienced players may wish to turn this off.");
    ImageButton statsButton = addIconButton(null, G.image("icons/stats.png"), new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            seeStats();
        }
    }, 96, -48, 88, 88);
    statsButton.setColor(G.colors.grey);
    putSettingsButton(bottomTable, statsButton, "View aggregate and record statistics.");
    ImageButton aboutButton = addIconButton(null, G.infoIcon, new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            setStage(about);
        }
    }, 0, 0, 0, 0);
    aboutButton.setColor(G.colors.grey);
    putSettingsButton(bottomTable, aboutButton, "About.");

    // online settings:
    ImageButton leaderButton = addIconButton(null, G.leaderIcon, new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            actionResolver.getLeaderboardGPGS(G.constants.scoreBoard);
        }
    }, 48, -G.height / 2 / dpi + 48, 88, 88);
    leaderButton.setColor(G.colors.gold);
    ImageButton achieveButton = addIconButton(null, G.achieveIcon, new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            actionResolver.getAchievementsGPGS();
        }
    }, -48, -G.height / 2 / dpi + 48, 88, 88);
    achieveButton.setColor(G.colors.blue);
    Table loginTable = makeSettingsTable("Online");
    putSettingsButton(loginTable, achieveButton, "View achievements.");
    putSettingsButton(loginTable, leaderButton, "Access leaderboards.");
    loginTable.add(logButton).width(182 * dpi).pad(4 * dpi).colspan(2).center();

    // control settings:
    Table controlTable = makeSettingsTable("Controls");
    CheckBox twoTouchControls = new CheckBox("", cbs);
    twoTouchControls.setColor(G.colors.grey);
    twoTouchControls.getImage().setColor(fullAnti);
    twoTouchControls.setChecked(G.settings.twoTouch());
    twoTouchControls.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            G.settings.setControl("TWO_TOUCH");
        }
    });
    CheckBox tiltControls = new CheckBox("", cbs);
    tiltControls.setColor(G.colors.grey);
    tiltControls.getImage().setColor(fullAnti);
    tiltControls.setChecked(G.settings.tilt());
    tiltControls.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            G.settings.setControl("TILT");
        }
    });
    CheckBox dragControls = new CheckBox("", cbs);
    dragControls.setColor(G.colors.grey);
    dragControls.getImage().setColor(fullAnti);
    dragControls.setChecked(G.settings.oneTouch());
    dragControls.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            G.settings.setControl("ONE_TOUCH");
        }
    });
    ButtonGroup controlGroup = new ButtonGroup(twoTouchControls, tiltControls, dragControls);
    controlGroup.setMaxCheckCount(1);
    controlGroup.setMinCheckCount(1);
    controlGroup.setUncheckLast(true);
    putSettingsButton(controlTable, twoTouchControls, "Touch on the left or right.");
    putSettingsButton(controlTable, tiltControls, "Tilt your device.");
    putSettingsButton(controlTable, dragControls, "Touch and drag.");

    // mode settings:
    Table modeTable = makeSettingsTable("Mode");
    CheckBox hellMode = new CheckBox("", cbs);
    hellMode.setColor(G.colors.red);
    hellMode.getImage().setColor(fullAnti);
    hellMode.setChecked(G.settings.hell());
    hellMode.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            G.settings.setMode(-1);
        }
    });
    CheckBox normalMode = new CheckBox("", cbs);
    normalMode.setColor(G.colors.grey);
    normalMode.getImage().setColor(fullAnti);
    normalMode.setChecked(G.settings.normal());
    normalMode.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            G.settings.setMode(0);
        }
    });
    ButtonGroup modeGroup = new ButtonGroup(hellMode, normalMode);
    modeGroup.setMaxCheckCount(1);
    modeGroup.setMinCheckCount(1);
    modeGroup.setUncheckLast(true);
    putSettingsButton(modeTable, normalMode, "Normal mode: catch orbs for points.");
    putSettingsButton(modeTable, hellMode, "Hell mode: dodge red orbs.");

    putActionBar(settings);
    putActionBar(colorSettings);
    putActionBar(controlSettings);
    putActionBar(modeSettings);
    putActionBar(loginSettings);
    putActionBar(bottomSettings);

    putSettingsMenu(settings);
    putSettingsMenu(colorSettings);
    colorSettings.addActor(colorTable);
    putSettingsMenu(controlSettings);
    controlSettings.addActor(controlTable);
    putSettingsMenu(loginSettings);
    loginSettings.addActor(loginTable);
    putSettingsMenu(modeSettings);
    modeSettings.addActor(modeTable);
    putSettingsMenu(bottomSettings);
    bottomSettings.addActor(bottomTable);

    Table aboutTable = new Table();
    aboutTable.setSize(G.width, G.height - 88 * dpi);
    aboutTable.setPosition(0, 88 * dpi);
    aboutTable.add(new Label("About", labelStyle));
    aboutTable.row();
    Label aboutTextLabel = new Label(
            "Leaf on the Wind copyright 2014 Ethan Goldberg, all rights reserved.\n\nIcons made by Google and licensed under CC BY 4.0.\n\n\nThank you for playing!",
            labelStyleSmall);
    aboutTextLabel.setWrap(true);
    aboutTextLabel.setAlignment(Align.center, Align.center);
    aboutTable.add(aboutTextLabel).width(G.width / 2);
    ImageButton aboutBackButton = addIconButton(about, G.backIcon, new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            setStage(bottomSettings);
        }
    }, 0, -G.height / 2 / dpi + 48, buttonWidth / dpi, 88);
    aboutBackButton.setColor(G.colors.red);
    about.addActor(aboutTable);
    about.addActor(aboutBackButton);

    // instructions:

    //delay
    float d = 0f;
    addLabel(instructions, "This is your glider.", 0, G.height / 2 / dpi - 96, 8, tr)
            .addAction(Actions.delay(d, Actions.fadeIn(fadeDur)));
    // wait two seconds:
    d += 2.5;
    addLabel(instructions, "Touch the screen", 0, G.height / 2 / dpi - 136, 8, tr)
            .addAction(Actions.delay(d, Actions.fadeIn(fadeDur)));
    d += 1;
    addLabel(instructions, "on the left,", -G.width / 4 / dpi, G.height / 2 / dpi - 166, 8, tr)
            .addAction(Actions.delay(d, Actions.fadeIn(fadeDur)));
    d += 1.5;
    addLabel(instructions, "or the right.", G.width / 4 / dpi, G.height / 2 / dpi - 166, 8, tr)
            .addAction(Actions.delay(d, Actions.fadeIn(fadeDur)));

    d += 3;
    int pickUpOffset = G.size * 2;
    addLabel(instructions, "Catch these,", -G.width / 4 / dpi, -G.height / 6 / dpi, G.size * 2 / dpi, tr)
            .addAction(Actions.delay(d, Actions.fadeIn(fadeDur)));
    Goody i;
    d += 1.5;

    Color r = new Color(G.colors.goodyRed);
    r.a = 0;
    Color gr = new Color(G.colors.goodyGreen);
    gr.a = 0;
    Color go = new Color(G.colors.goodyGold);
    go.a = 0;
    Color b = new Color(G.colors.goodyBlue);
    b.a = 0;

    i = addDumbGoody(instructions, b, -G.width / 4 / dpi - (G.size * 2) / dpi,
            -G.height / 6 / dpi + pickUpOffset);
    i.addAction(Actions.delay(d, Actions.alpha(1)));
    //bounce(i, 0, 8, 0.33f, 8);
    bounce(i, 0, 8, 0.33f, 4);
    d += .5;
    i = addDumbGoody(instructions, gr, -G.width / 4 / dpi, -G.height / 6 / dpi + pickUpOffset);
    i.addAction(Actions.delay(d, Actions.alpha(1)));
    //bounce(i, 0.25f, 8, 0.33f, 8);
    bounce(i, 0.25f, 8, 0.33f, 4);
    d += .5;
    i = addDumbGoody(instructions, go, -G.width / 4 / dpi + (G.size * 2) / dpi,
            -G.height / 6 / dpi + pickUpOffset);
    i.addAction(Actions.delay(d, Actions.alpha(1)));
    //bounce(i, 0.5f, 8, 0.33f, 8);
    bounce(i, 0.5f, 8, 0.33f, 4);

    d += 1.5;
    addLabel(instructions, "not these.", G.width / 4 / dpi, -G.height / 6 / dpi, G.size * 2 / dpi, tr)
            .addAction(Actions.delay(d, Actions.fadeIn(fadeDur)));
    d += 2;
    i = addDumbBaddy(instructions, r, G.width / 4 / dpi, -G.height / 6 / dpi + pickUpOffset);
    i.addAction(Actions.delay(d, Actions.alpha(1)));
    //bounce(i, 0.75f, 8, 0.33f, 8);
    bounce(i, 0.75f, 8, 0.33f, 4);

    d += 2;

    addIconButton(instructions, G.playIcon, new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            setStage(game);
        }
    }, G.width / 2 / dpi - buttonWidth / dpi / 2 - 4, -G.height / 2 / dpi + 48, buttonWidth / dpi, 88)
            .setColor(G.colors.green);
    addIconButton(instructions, G.image("icons/settings.png"), new ClickListener() {
        @Override
        public void clicked(InputEvent e, float x, float y) {
            setStage(settings);
        }
    }, -G.width / 2 / dpi + buttonWidth / 2 / dpi + 4, -G.height / 2 / dpi + 48, buttonWidth / dpi, 88)
            .setColor(G.colors.grey);

    d += 2;

    Color c = new Color(G.getAntiColor());
    c.a = 0;
    addImage(instructions, G.playWrite, c, G.width / 2 / dpi - 3 * buttonWidth / 2 / dpi - 8,
            -G.height / 2 / dpi + 48, buttonWidth / 2 / dpi, 48)
                    .addAction(Actions.delay(d, Actions
                            .forever(Actions.sequence(Actions.fadeOut(fadeDur), Actions.fadeIn(fadeDur)))));

    /*
    TextButton b1 = addButton(instructions, game, "Start", 
    0, -G.height/2/dpi + 88f, 192, 40f);
    TextButton b2 = addButton(instructions, settings, "Settings", 
    0, -G.height/2/dpi + 40f, 192, 40f);
    b1.addAction(Actions.alpha(.5f));
    b2.addAction(Actions.alpha(.25f));
    b1.addAction(Actions.delay(d, Actions.fadeIn(fadeDur)));
    b2.addAction(Actions.delay(d, Actions.fadeIn(fadeDur)));
    */
}