es.eucm.ead.engine.LoadingIndicatorDemo.java Source code

Java tutorial

Introduction

Here is the source code for es.eucm.ead.engine.LoadingIndicatorDemo.java

Source

/**
 * eAdventure is a research project of the
 *    e-UCM research group.
 *
 *    Copyright 2005-2014 e-UCM research group.
 *
 *    You can access a list of all the contributors to eAdventure at:
 *          http://e-adventure.e-ucm.es/contributors
 *
 *    e-UCM is a research group of the Department of Software Engineering
 *          and Artificial Intelligence at the Complutense University of Madrid
 *          (School of Computer Science).
 *
 *          CL Profesor Jose Garcia Santesmases 9,
 *          28040 Madrid (Madrid), Spain.
 *
 *          For more info please visit:  <http://e-adventure.e-ucm.es> or
 *          <http://www.e-ucm.es>
 *
 * ****************************************************************************
 *
 *  This file is part of eAdventure
 *
 *      eAdventure is free software: you can redistribute it and/or modify
 *      it under the terms of the GNU Lesser General Public License as published by
 *      the Free Software Foundation, either version 3 of the License, or
 *      (at your option) any later version.
 *
 *      eAdventure is distributed in the hope that it will be useful,
 *      but WITHOUT ANY WARRANTY; without even the implied warranty of
 *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *      GNU Lesser General Public License for more details.
 *
 *      You should have received a copy of the GNU Lesser General Public License
 *      along with eAdventure.  If not, see <http://www.gnu.org/licenses/>.
 */
package es.eucm.ead.engine;

import com.badlogic.gdx.Application;
import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.backends.lwjgl.LwjglApplication;
import com.badlogic.gdx.backends.lwjgl.LwjglApplicationConfiguration;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.scenes.scene2d.Actor;
import com.badlogic.gdx.scenes.scene2d.Stage;
import com.badlogic.gdx.scenes.scene2d.ui.WidgetGroup;
import com.badlogic.gdx.utils.viewport.ScreenViewport;
import es.eucm.ead.engine.systems.effects.transitions.LoadingIndicator;

/**
 * Showcases
 * {@link es.eucm.ead.engine.systems.effects.transitions.LoadingIndicator}
 * 
 * Created by jtorrente on 3/02/15.
 */
public class LoadingIndicatorDemo implements ApplicationListener {

    protected Stage stage;

    protected Actor actor;

    @Override
    public void create() {
        Gdx.app.setLogLevel(Application.LOG_DEBUG);
        Gdx.gl.glClearColor(0f, 0f, 0f, 0f);
        stage = new Stage(new ScreenViewport());
        WidgetGroup modalContainer = new WidgetGroup();
        modalContainer.setFillParent(true);

        WidgetGroup viewContainer = new WidgetGroup();
        viewContainer.setFillParent(true);

        stage.getRoot().addActor(viewContainer);
        stage.getRoot().addActor(modalContainer);
        Gdx.input.setInputProcessor(stage);
        actor = new LoadingIndicator();
        if (actor instanceof WidgetGroup) {
            ((WidgetGroup) actor).setFillParent(true);
        }
        viewContainer.addActor(actor);
    }

    @Override
    public void resize(int width, int height) {
        stage.getViewport().update(width, height, true);
    }

    @Override
    public void render() {
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
        stage.act();
        stage.draw();
    }

    @Override
    public void pause() {
    }

    @Override
    public void resume() {
    }

    @Override
    public void dispose() {
        stage.dispose();
    }

    public static void main(String[] args) {
        LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();
        config.width = 640;
        config.height = 360;
        new LwjglApplication(new LoadingIndicatorDemo(), config);
    }

}