Example usage for com.badlogic.gdx.graphics Color BLACK

List of usage examples for com.badlogic.gdx.graphics Color BLACK

Introduction

In this page you can find the example usage for com.badlogic.gdx.graphics Color BLACK.

Prototype

Color BLACK

To view the source code for com.badlogic.gdx.graphics Color BLACK.

Click Source Link

Usage

From source file:org.ah.gcc.rover.AndroidGCCRoverController.java

License:Open Source License

@Override
public void create() {
    // platformSpecific.init();

    font = new BitmapFont(Gdx.files.internal("fonts/din-alternate-bold-64.fnt"), true);
    glyphLayout = new GlyphLayout();

    font.setColor(Color.BLACK);
    batch = new SpriteBatch();
    img = new Texture("badlogic.jpg");

    camera = new OrthographicCamera(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());

    cellSize = Gdx.graphics.getWidth() / 20;

    shapeRenderer = new ShapeRenderer();

    leftjoystick = new JoyStick((int) cellSize * 8, (int) cellSize * 4, (int) cellSize * 4);
    rightjoystick = new JoyStick((int) cellSize * 8, (int) cellSize * 16, (int) cellSize * 4);

    leftExpo = new ExpoGraph((int) cellSize * 5, (int) cellSize * 2, (int) cellSize * 2, (int) cellSize * 2);
    rightExpo = new ExpoGraph((int) cellSize * 13, (int) cellSize * 2, (int) cellSize * 2, (int) cellSize * 2);

    leftExpo.setPercentage(0.75f);/*from w w  w  .j  av  a  2s.co  m*/
    rightExpo.setPercentage(0.90f);

    roverSelectButton = new Button((int) cellSize * 6, 0, (int) cellSize * 8, (int) (cellSize * 1.5),
            new Button.ButtonCallback() {
                @Override
                public void invoke(boolean state) {
                    if (state) {
                        newSelectedRover = selectedRover + 1;
                        if (newSelectedRover >= ROVERS.length) {
                            newSelectedRover = 0;
                        }
                    }
                }
            });

    pov = new POV((int) cellSize * 9, (int) cellSize * 4, (int) cellSize * 2);

    button1 = new RoundButton((int) cellSize * 6, (int) cellSize * 11, (int) cellSize / 2);

    switchLT = new SquareButton((int) cellSize * 0, (int) (cellSize * 0), (int) cellSize * 4,
            (int) cellSize * 2);
    switchLT.setState(false);
    switchLB = new Switch((int) cellSize * 0, (int) (cellSize * 2), (int) cellSize * 2, Orientation.HORIZONTAL);
    switchLB.setState(false);

    switchRT = new SquareButton((int) cellSize * 16, (int) (cellSize * 0), (int) cellSize * 4,
            (int) cellSize * 2);
    switchRT.setState(false);
    switchRB = new Switch((int) cellSize * 16, (int) (cellSize * 2), (int) cellSize * 2,
            Orientation.HORIZONTAL);
    switchRB.setState(false);

    inputMultiplexer = new InputMultiplexer();
    inputMultiplexer.addProcessor(this);
    inputMultiplexer.addProcessor(new GestureDetector(this));
    Gdx.input.setInputProcessor(inputMultiplexer);
    screenController = new ScreenController();
    screenController.setLeftJotstick(leftjoystick);
    screenController.setRightJotstick(rightjoystick);

    screenController.setButton(switchLB, ControllerState.ButtonType.ORBIT_BUTTON);
    roverDriver = new RoverDriver(roverControl, screenController);

    logoDrawer = new LogoDrawer(batch, camera);

}

From source file:org.ah.gcc.rover.AndroidGCCRoverController.java

License:Open Source License

@Override
public void render() {

    roverDriver.processJoysticks();//from ww  w  . j a  v  a2 s  .  com

    alpha++;
    if (logos) {
        logoDrawer.draw();
        logos = logoDrawer.done();
    } else {
        testConnection();

        messageCounter--;
        if (messageCounter < 0) {
            messageCounter = 5;
        }

        camera.setToOrtho(true);

        Gdx.gl.glClearColor(1, 1, 1, 1);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

        batch.setProjectionMatrix(camera.combined);
        shapeRenderer.setProjectionMatrix(camera.combined);
        shapeRenderer.setAutoShapeType(true);

        String connectedStr = ROVERS[selectedRover].getName();

        shapeRenderer.begin();
        shapeRenderer.setColor(0.9f, 0.9f, 0.9f, 1f);
        //            for (int x = 0; x < Gdx.graphics.getWidth(); x = (int) (x + cellSize)) {
        //                shapeRenderer.line(x, 0, x, Gdx.graphics.getHeight());
        //            }
        //            for (int y = 0; y < Gdx.graphics.getHeight() ; y = (int) (y + cellSize)) {
        //                shapeRenderer.line(0, Gdx.graphics.getHeight() - y, Gdx.graphics.getWidth(), Gdx.graphics.getHeight() - y);
        //            }

        shapeRenderer.setColor(Color.BLACK);

        leftjoystick.draw(shapeRenderer);
        rightjoystick.draw(shapeRenderer);
        leftExpo.draw(shapeRenderer);
        rightExpo.draw(shapeRenderer);

        button1.draw(shapeRenderer);
        switchLB.draw(shapeRenderer);
        switchLT.draw(shapeRenderer);
        pov.draw(shapeRenderer);
        switchRB.draw(shapeRenderer);
        switchRT.draw(shapeRenderer);

        roverSelectButton.draw(shapeRenderer);

        shapeRenderer.end();
        batch.begin();
        glyphLayout.setText(font, connectedStr);
        if (roverControl.isConnected()) {
            font.setColor(Color.GREEN);
        } else {
            font.setColor(Color.RED);
        }
        font.draw(batch, connectedStr, (Gdx.graphics.getWidth() - glyphLayout.width) / 2, 0);
        font.setColor(Color.BLACK);
        font.draw(batch, String.format("S: " + roverSpeed), Gdx.graphics.getWidth() - 200, 0);
        font.draw(batch, String.format("D: " + roverTurningDistance), 0, 0);
        batch.end();

    }
}

From source file:org.ah.gcc.rover.desktop.DesktopGCCRoverController.java

License:Open Source License

@Override
public void create() {
    // platformSpecific.init();

    String fontName = "fonts/din-alternate-bold-64.fnt";
    if (Gdx.graphics.getWidth() <= 320) {
        fontName = "fonts/din-alternate-bold-15.fnt";
    }//from  w  ww .j  av  a2  s  . c o  m

    font = new BitmapFont(Gdx.files.internal(fontName), true);
    glyphLayout = new GlyphLayout();

    font.setColor(Color.BLACK);
    batch = new SpriteBatch();
    img = new Texture("badlogic.jpg");

    camera = new OrthographicCamera(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());

    cellSize = Gdx.graphics.getWidth() / 20;

    shapeRenderer = new ShapeRenderer();

    leftjoystick = new JoyStick((int) cellSize * 8, (int) cellSize * 4, (int) cellSize * 4);
    rightjoystick = new JoyStick((int) cellSize * 8, (int) cellSize * 16, (int) cellSize * 4);

    leftExpo = new ExpoGraph((int) cellSize * 5, (int) cellSize * 2, (int) cellSize * 2, (int) cellSize * 2);
    rightExpo = new ExpoGraph((int) cellSize * 13, (int) cellSize * 2, (int) cellSize * 2, (int) cellSize * 2);

    leftExpo.setPercentage(0.75f);
    rightExpo.setPercentage(0.90f);

    roverSelectButton = new Button((int) cellSize * 6, 0, (int) cellSize * 8, (int) (cellSize * 1.5),
            new Button.ButtonCallback() {
                @Override
                public void invoke(boolean state) {
                    if (state) {
                        int selectedRover = roverDriver.getSelectedRover().getValue() + 1;
                        if (selectedRover >= RoverHandler.ROVERS.length) {
                            selectedRover = 0;
                        }
                        roverDriver.getSelectedRover().setValue(selectedRover);
                    }
                }
            });

    pov = new POV((int) cellSize * 9, (int) cellSize * 4, (int) cellSize * 2);

    button1 = new RoundButton((int) cellSize * 6, (int) cellSize * 11, (int) cellSize / 2);

    switchLT = new SquareButton((int) cellSize * 0, (int) (cellSize * 0), (int) cellSize * 4,
            (int) cellSize * 2);
    switchLT.setState(false);
    switchLB = new Switch((int) cellSize * 0, (int) (cellSize * 2), (int) cellSize * 2, Orientation.HORIZONTAL);
    switchLB.setState(false);

    switchRT = new SquareButton((int) cellSize * 16, (int) (cellSize * 0), (int) cellSize * 4,
            (int) cellSize * 2);
    switchRT.setState(false);
    switchRB = new Switch((int) cellSize * 16, (int) (cellSize * 2), (int) cellSize * 2,
            Orientation.HORIZONTAL);
    switchRB.setState(false);

    inputMultiplexer = new InputMultiplexer();
    inputMultiplexer.addProcessor(this);
    inputMultiplexer.addProcessor(new GestureDetector(this));
    Gdx.input.setInputProcessor(inputMultiplexer);

    screenController = new ScreenController();
    realController = platformSpecific.getRealController();

    screenController.setLeftJotstick(leftjoystick);
    screenController.setRightJotstick(rightjoystick);
    screenController.setHat(pov);
    screenController.setButton(switchLB, ControllerState.ButtonType.ORBIT_BUTTON);
    screenController.setButton(switchRB, ControllerState.ButtonType.LOCK_AXIS_BUTTON);
    screenController.setButton(switchLT, ControllerState.ButtonType.BOOST_BUTTON);
    screenController.setButton(switchRT, ControllerState.ButtonType.KICK_BUTTON);
    screenController.setButton(roverSelectButton, ControllerState.ButtonType.SELECT_BUTTON);

    if (realController != null) {
        comboController = new ComboController(screenController, realController);
        roverDriver = new RoverDriver(roverHandler, comboController);
    } else {
        roverDriver = new RoverDriver(roverHandler, screenController);
    }

    roverDriver.getLeftJoystick().addListener(new JoystickComponentListener() {
        @Override
        public void changed(JoystickState state) {
            leftjoystick.setValues(state.getX(), state.getY());
        }
    });

    roverDriver.getRightJoystick().addListener(new JoystickComponentListener() {
        @Override
        public void changed(JoystickState state) {
            rightjoystick.setValues(state.getX(), state.getY());
        }
    });

    roverDriver.getRoverSpeedValue().addListener(new PropertyChangeListener() {
        @Override
        public void propertyChange(PropertyChangeEvent evt) {
            roverSpeed = evt.getNewValue().toString();
        }
    });

    roverDriver.getReadDistanceValue().addListener(new PropertyChangeListener() {
        @Override
        public void propertyChange(PropertyChangeEvent evt) {
            roverTurningDistance = evt.getNewValue().toString();
        }
    });

    logoDrawer = new LogoDrawer(batch, camera);

    Pixmap pixmap = new Pixmap(32, 32, Format.RGBA8888);
    //Cursor customCursor = Gdx.graphics.newCursor(pixmap, 0, 0);
    //Gdx.graphics.setCursor(customCursor);
}

From source file:org.ah.gcc.rover.desktop.DesktopGCCRoverController.java

License:Open Source License

@Override
public void render() {
    alpha++;/*from  w  ww  .ja v  a2s .  co  m*/
    if (logos) {
        logoDrawer.draw();
        logos = !logoDrawer.done();
    } else {
        messageCounter--;
        if (messageCounter < 0) {
            messageCounter = 5;
        }

        camera.setToOrtho(true);

        Gdx.gl.glClearColor(1, 1, 1, 1);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

        batch.setProjectionMatrix(camera.combined);
        shapeRenderer.setProjectionMatrix(camera.combined);
        shapeRenderer.setAutoShapeType(true);

        String connectedStr = RoverHandler.ROVERS[roverDriver.getSelectedRover().getValue()].getName();

        shapeRenderer.begin();
        if (grid) {
            shapeRenderer.setColor(0.9f, 0.9f, 0.9f, 1f);
            for (int x = 0; x < Gdx.graphics.getWidth(); x = (int) (x + cellSize)) {
                shapeRenderer.line(x, 0, x, Gdx.graphics.getHeight());
            }
            for (int y = 0; y < Gdx.graphics.getHeight(); y = (int) (y + cellSize)) {
                shapeRenderer.line(0, y, Gdx.graphics.getWidth(), y);
            }
        }
        shapeRenderer.setColor(Color.BLACK);

        leftjoystick.draw(shapeRenderer);
        rightjoystick.draw(shapeRenderer);
        leftExpo.draw(shapeRenderer);
        rightExpo.draw(shapeRenderer);

        button1.draw(shapeRenderer);
        switchLB.draw(shapeRenderer);
        switchLT.draw(shapeRenderer);
        pov.draw(shapeRenderer);
        switchRB.draw(shapeRenderer);
        switchRT.draw(shapeRenderer);

        roverSelectButton.draw(shapeRenderer);

        shapeRenderer.end();
        batch.begin();
        glyphLayout.setText(font, connectedStr);
        if (roverHandler.isConnected()) {
            font.setColor(Color.GREEN);
        } else {
            font.setColor(Color.RED);
        }
        font.draw(batch, connectedStr, (Gdx.graphics.getWidth() - glyphLayout.width) / 2, 0);
        font.setColor(Color.BLACK);
        font.draw(batch, String.format("S: " + roverSpeed), Gdx.graphics.getWidth() - 200, 0);
        font.draw(batch, String.format("D: " + roverTurningDistance), 0, 0);
        batch.end();

        if (alpha % 10 == 0) {
            roverDriver.processJoysticks();
        }
    }
}

From source file:org.ah.gcc.rover.RoverController.java

License:Open Source License

@Override
public void create() {
    // platformSpecific.init();

    font = new BitmapFont(Gdx.files.internal("fonts/din-alternate-bold-64.fnt"), true);
    glyphLayout = new GlyphLayout();

    font.setColor(Color.BLACK);
    batch = new SpriteBatch();
    img = new Texture("badlogic.jpg");

    gccimg = new Texture("GCCLogo.png");
    creativesphereimg = new Texture("creative-sphere.png");
    bobimg = new Texture("bobclub.png");

    camera = new OrthographicCamera(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());

    cellSize = Gdx.graphics.getWidth() / 20;

    shapeRenderer = new ShapeRenderer();

    leftjoystick = new JoyStick((int) cellSize * 8, (int) cellSize * 4, (int) cellSize * 4);
    rightjoystick = new JoyStick((int) cellSize * 8, (int) cellSize * 16, (int) cellSize * 4);

    leftExpo = new ExpoGraph((int) cellSize * 8, (int) cellSize * 2, (int) cellSize * 2, (int) cellSize * 2);
    rightExpo = new ExpoGraph((int) cellSize * 10, (int) cellSize * 2, (int) cellSize * 2, (int) cellSize * 2);

    leftExpo.setPercentage(0.75f);//  ww w  . java 2s.  c  om
    rightExpo.setPercentage(0.90f);

    roverSelectButton = new Button((int) cellSize * 6, 0, (int) cellSize * 8, (int) (cellSize * 1.5),
            new Button.ButtonCallback() {
                @Override
                public void invoke(boolean state) {
                    if (state) {
                        newSelectedRover = selectedRover + 1;
                        if (newSelectedRover >= ROVERS.length) {
                            newSelectedRover = 0;
                        }
                    }
                }
            });

    button1 = new RoundButton((int) cellSize * 6, (int) cellSize * 11, (int) cellSize / 2);

    switchLT = new Switch((int) cellSize * 0, (int) (cellSize * 1), (int) cellSize * 4, Orientation.HORIZONTAL);
    switchLT.setState(true);
    switchLB = new Switch((int) cellSize * 0, (int) (cellSize * 3), (int) cellSize * 4, Orientation.HORIZONTAL);
    switchLB.setState(true);
    switch2 = new Switch((int) cellSize * 13, (int) cellSize, (int) cellSize * 2, Orientation.VERTICAL);

    inputMultiplexer = new InputMultiplexer();
    inputMultiplexer.addProcessor(this);
    inputMultiplexer.addProcessor(new GestureDetector(this));
    Gdx.input.setInputProcessor(inputMultiplexer);

    screenController = new ScreenController();
    screenController.setLeftJotstick(leftjoystick);
    screenController.setRightJotstick(rightjoystick);
}

From source file:org.ah.gcc.rover.RoverController.java

License:Open Source License

@Override
public void render() {

    alpha++;/*  ww  w .  j a  v a2s  .  c om*/
    if (logos) {
        camera.setToOrtho(false);

        Gdx.gl.glClearColor(1, 1, 1, 1);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

        batch.setProjectionMatrix(camera.combined);
        batch.begin();

        if (alpha < 30) {
            float scale = calculateScale(gccimg);
            int y = (int) ((Gdx.graphics.getHeight() - (gccimg.getHeight() * scale)) / 2);
            int x = (int) ((Gdx.graphics.getWidth() - (gccimg.getWidth() * scale)) / 2);
            batch.draw(gccimg, x, y, gccimg.getWidth() * scale, gccimg.getHeight() * scale);
        } else if (alpha < 60) {
            float scale = Gdx.graphics.getHeight() / creativesphereimg.getHeight();
            int y = (int) ((Gdx.graphics.getHeight() - (creativesphereimg.getHeight() * scale)) / 2);
            int x = (int) ((Gdx.graphics.getWidth() - (creativesphereimg.getWidth() * scale)) / 2);
            batch.draw(creativesphereimg, x, y, creativesphereimg.getWidth() * scale,
                    creativesphereimg.getHeight() * scale);
        } else if (alpha < 90) {
            float scale = Gdx.graphics.getHeight() / bobimg.getHeight();
            int y = (int) ((Gdx.graphics.getHeight() - (bobimg.getHeight() * scale)) / 2);
            int x = (int) ((Gdx.graphics.getWidth() - (bobimg.getWidth() * scale)) / 2);
            batch.draw(bobimg, x, y, bobimg.getWidth() * scale, bobimg.getHeight() * scale);
        } else if (alpha > 120) {
            logos = false;
        }

        batch.end();
    } else {
        testConnection();

        messageCounter--;
        if (messageCounter < 0) {
            messageCounter = 5;
            processJoysticks();
        }

        camera.setToOrtho(true);

        Gdx.gl.glClearColor(1, 1, 1, 1);
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

        batch.setProjectionMatrix(camera.combined);
        shapeRenderer.setProjectionMatrix(camera.combined);
        shapeRenderer.setAutoShapeType(true);

        String connectedStr = ROVERS[selectedRover].getName();

        shapeRenderer.begin();
        shapeRenderer.setColor(0.9f, 0.9f, 0.9f, 1f);
        for (int x = 0; x < Gdx.graphics.getWidth(); x = (int) (x + cellSize)) {
            shapeRenderer.line(x, 0, x, Gdx.graphics.getHeight());
        }
        for (int y = Gdx.graphics.getHeight(); y > 0; y = (int) (y - cellSize)) {
            shapeRenderer.line(0, y, Gdx.graphics.getWidth(), y);
        }

        shapeRenderer.setColor(Color.BLACK);

        leftjoystick.draw(shapeRenderer);
        rightjoystick.draw(shapeRenderer);
        leftExpo.draw(shapeRenderer);
        rightExpo.draw(shapeRenderer);

        button1.draw(shapeRenderer);
        switchLB.draw(shapeRenderer);
        switchLT.draw(shapeRenderer);
        switch2.draw(shapeRenderer);
        roverSelectButton.draw(shapeRenderer);

        shapeRenderer.end();
        batch.begin();
        glyphLayout.setText(font, connectedStr);
        if (roverControl.isConnected()) {
            font.setColor(Color.GREEN);
        } else {
            font.setColor(Color.RED);
        }
        font.draw(batch, connectedStr, (Gdx.graphics.getWidth() - glyphLayout.width) / 2, 0);
        font.setColor(Color.BLACK);
        font.draw(batch, String.format("S: " + roverSpeed), Gdx.graphics.getWidth() - 200, 0);
        font.draw(batch, String.format("D: " + roverTurningDistance), 0, 0);
        batch.end();

    }
}

From source file:org.ah.gcc.rover.ui.POV.java

License:Open Source License

@Override
public void draw(ShapeRenderer shapeRenderer) {
    shapeRenderer.set(ShapeType.Line);
    shapeRenderer.setColor(Color.BLACK);
    if (wherePressed == 0) {
        shapeRenderer.set(ShapeType.Filled);
    } else {/*from  w  w  w  .  j a v a 2 s  .c  o m*/
        shapeRenderer.set(ShapeType.Line);
    }
    shapeRenderer.rect(x, y, size, size);

    //left
    if (wherePressed == 1) {
        shapeRenderer.set(ShapeType.Filled);
    } else {
        shapeRenderer.set(ShapeType.Line);
    }
    shapeRenderer.rect(x - size, y, size, size);

    //right
    if (wherePressed == 2) {
        shapeRenderer.set(ShapeType.Filled);
    } else {
        shapeRenderer.set(ShapeType.Line);
    }
    shapeRenderer.rect(x + size, y, size, size);

    //up
    if (wherePressed == 3) {
        shapeRenderer.set(ShapeType.Filled);
    } else {
        shapeRenderer.set(ShapeType.Line);
    }
    shapeRenderer.rect(x, y + size, size, size);

    //down
    if (wherePressed == 4) {
        shapeRenderer.set(ShapeType.Filled);
    } else {
        shapeRenderer.set(ShapeType.Line);
    }
    shapeRenderer.rect(x, y - size, size, size);
}

From source file:org.ah.gcc.rover.ui.SquareButton.java

License:Open Source License

public void draw(ShapeRenderer shapeRenderer) {

    if (pressed) {
        shapeRenderer.setColor(Color.DARK_GRAY);
    } else {//w  w  w.j  av  a  2s. c o  m
        shapeRenderer.setColor(Color.GRAY);
    }

    shapeRenderer.set(ShapeType.Filled);
    shapeRenderer.rect(x, y, width, height);
    shapeRenderer.set(ShapeType.Line);
    shapeRenderer.setColor(Color.BLACK);
    shapeRenderer.rect(x, y, width, height);

}

From source file:org.ah.gcc.rover.ui.Switch.java

License:Open Source License

public void draw(ShapeRenderer shapeRenderer) {
    shapeRenderer.set(ShapeType.Filled);
    if (orientation == Orientation.HORIZONTAL) {
        if (on) {
            shapeRenderer.set(ShapeType.Filled);
            shapeRenderer.setColor(Color.GREEN);
            shapeRenderer.rect(x, y, width / 2, width / 2);

            shapeRenderer.set(ShapeType.Filled);

            shapeRenderer.setColor(Color.DARK_GRAY);
            shapeRenderer.rect(x + width / 2, y, width / 2, width / 2);
        } else {//from   ww w.  j  a  v a2s. com
            shapeRenderer.set(ShapeType.Filled);
            shapeRenderer.setColor(Color.DARK_GRAY);
            shapeRenderer.rect(x, y, width / 2, width / 2);

            shapeRenderer.set(ShapeType.Filled);
            shapeRenderer.setColor(Color.RED);
            shapeRenderer.rect(x + width / 2, y, width / 2, width / 2);
        }
        shapeRenderer.set(ShapeType.Line);
        shapeRenderer.setColor(Color.BLACK);
        shapeRenderer.rect(x, y, width, width / 2);

    } else if (orientation == Orientation.VERTICAL) {
        if (on) {
            shapeRenderer.setColor(Color.GREEN);
            shapeRenderer.rect(x, y, width, width / 2);
            shapeRenderer.rect(x, y, width / 2, width / 2);

            shapeRenderer.setColor(Color.DARK_GRAY);
            shapeRenderer.rect(x, y + width / 2, width, width / 2);
        } else {
            shapeRenderer.setColor(Color.DARK_GRAY);
            shapeRenderer.rect(x, y, width, width / 2);
            shapeRenderer.rect(x, y, width / 2, width / 2);

            shapeRenderer.setColor(Color.RED);
            shapeRenderer.rect(x, y + width / 2, width, width / 2);
        }
        shapeRenderer.set(ShapeType.Line);
        shapeRenderer.setColor(Color.BLACK);
        shapeRenderer.rect(x, y, width / 2, width);
    }

}

From source file:org.ams.core.SceneUtil.java

License:Open Source License

public static void confirm(final Stage stage, Skin skin, String text, String okText, String cancelText,
        final ConfirmCallback callback) {

    final Dialog dialog = new Dialog("", skin);
    dialog.setBackground(new TextureRegionDrawable(skin.getRegion("gray")));
    dialog.setModal(true);/* w  w  w  . jav  a  2 s.c o m*/

    Table mainTable = new Table();

    // text
    Label label = new Label(text, skin);
    label.setColor(Color.BLACK);
    mainTable.add(label).row();

    // buttons
    Table buttonTable = new Table();

    TextButton okButton = new TextButton(okText, skin);
    buttonTable.add(okButton);
    okButton.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent event, float x, float y) {
            stage.getActors().removeValue(dialog, true);
            if (callback != null)
                callback.confirm(true);
        }
    });

    TextButton cancelButton = new TextButton(cancelText, skin);
    buttonTable.add(cancelButton);
    cancelButton.addListener(new ClickListener() {
        @Override
        public void clicked(InputEvent event, float x, float y) {
            stage.getActors().removeValue(dialog, true);
            if (callback != null)
                callback.confirm(false);
        }
    });

    mainTable.add(buttonTable);

    fillAndCenter(stage, dialog);
    dialog.add(mainTable).width(stage.getWidth()).height(stage.getHeight());

    stage.addActor(dialog);
}