Package com.googlecode.jumpnevolve.graphics.gui

Source Code of com.googlecode.jumpnevolve.graphics.gui.MainGUI

package com.googlecode.jumpnevolve.graphics.gui;

import org.newdawn.slick.Graphics;

import com.googlecode.jumpnevolve.graphics.gui.container.InterfaceContainer;
import com.googlecode.jumpnevolve.math.Rectangle;
import com.googlecode.jumpnevolve.math.Vector;

/**
* Die Hauptklasse für das User-Interface.
* <p>
* Es wird ein MainContainer gesetzt, in diesen können andere
* {@link InterfacePart} eingefügt werden.
* <p>
* poll() und draw() werden für das MainGUI aufgerufen und an die anderen
* Objekte weitergegeben.
* <p>
* draw(): es wird unabhängig von vorherigen Translationen/Sklierungen etc.
* gearbeitet, sodass das Interface immer gleich aussieht.
*
* @author Erik Wagner
*
*/
public class MainGUI extends InterfaceContainer {

  private InterfaceContainer mainContainer;

  /**
   * @param parent
   */
  public MainGUI(Interfaceable parent) {
    super();
    this.setParentInterfaceable(parent);
  }

  public void setMainContainer(InterfaceContainer con) {
    this.remove(mainContainer);
    this.add(con, Vector.ZERO);
    this.mainContainer = con;
  }

  public InterfaceContainer getMainContainer() {
    return this.mainContainer;
  }

  @Override
  public Rectangle getWantedSize() {
    return new Rectangle(Vector.ZERO, this.parentInterfaceable.getWidth(),
        this.parentInterfaceable.getHeight());
  }

  @Override
  public void draw(Graphics g) {
    g.pushTransform();
    g.resetTransform();
    super.draw(g);
    g.popTransform();
  }
}
TOP

Related Classes of com.googlecode.jumpnevolve.graphics.gui.MainGUI

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.