import java.net.JarURLConnection;
import java.net.URL;
import java.net.URLConnection;
import java.util.jar.JarFile;

import net.sf.jirr.*;

public class ApplicationManager 
{
  static protected ApplicationManager instance = null;
  
  static public ApplicationManager getInstance()
  {
    if (instance == null)
      instance = new ApplicationManager();
    return instance;
  }
  
  protected ApplicationManager()
  {
    
  }
  
  public void startApplicationManager()
  {
    try
    {
      // display a label GUI element
      EngineManager.getInstance().getGuiEnvironment().addStaticText(
          "Hello World",
          new recti(10,10,500,25)
          true);
      
      // load a mesh
      IAnimatedMesh mesh = EngineManager.getInstance().getSceneManager().getMesh("sydney.md2");
      // add it to the scene
      IAnimatedMeshSceneNode node = EngineManager.getInstance().getSceneManager().addAnimatedMeshSceneNode(mesh);
      
      if (node != null)
      {
        // disable lighting (which displays the model with full brightness)
        node.setMaterialFlag(E_MATERIAL_FLAG.EMF_LIGHTING, false);
        // set the animation sequence
        node.setMD2Animation (EMD2_ANIMATION_TYPE.EMAT_STAND);
        // add the texture to the model
        node.setMaterialTexture(0L, EngineManager.getInstance().getVideoDriver().getTexture("sydney.bmp"));
      }
    }
    catch (Exception ex)
    {
      // display a label GUI element
      EngineManager.getInstance().getGuiEnvironment().addStaticText(
          ex.toString(),
          new recti(10,60,500,85)
          true);
    }
  }
  
  public void shutdown()
  {
    
  }
}