anchor.diff:      }
   
       @Override
  -    public void bind(Nifty nifty, Screen screen, Element elmnt, Properties prprts, Attributes atrbts) {
  -        progressBarElement = elmnt.findElementByName("progressbar");
  -    }
  -
  -    @Override
  -    public void init(Properties prprts, Attributes atrbts) {
  -    }
  -
       public void onFocus(boolean getFocus) {
       }
  +
  +    @Override
  +    public void bind(Nifty nifty, Screen screen, Element elmnt,
  +            Parameters prmtrs) {
  +        progressBarElement = elmnt.findElementById("progressbar");
  +    }
  +
  +    @Override
  +    public void init(Parameters prmtrs) {
  +    }
  +
   }
   
   ----
   
  -Note:
  -
  -*  Try and add all controls near the end, as their update loops may begin executing
  +NOTE: Try and add all controls near the end, as their update loops may begin executing.
   
   
   === Using multithreading
   
   For more info on multithreading: <<jme3/advanced/multithreading#,The jME3 Threading Model>>
   
  -Make sure to change the XML file to point the controller to TestLoadingScreen*1*
  +Make sure to change the XML file to point the controller to TestLoadingScreen*1*.
   
   [source,java]
   ----
   
   package jme3test;
   
  +import com.jme3.app.SimpleApplication;
  +import com.jme3.material.Material;
   import com.jme3.niftygui.NiftyJmeDisplay;
  +import static com.jme3.niftygui.NiftyJmeDisplay.newNiftyJmeDisplay;
  +import com.jme3.renderer.Camera;
  +import com.jme3.terrain.geomipmap.TerrainLodControl;
  +import com.jme3.terrain.geomipmap.TerrainQuad;
  +import com.jme3.terrain.heightmap.AbstractHeightMap;
  +import com.jme3.terrain.heightmap.ImageBasedHeightMap;
  +import com.jme3.texture.Texture;
  +import com.jme3.texture.Texture.WrapMode;
   import de.lessvoid.nifty.Nifty;
  +import de.lessvoid.nifty.controls.Controller;
  +import de.lessvoid.nifty.controls.Parameters;
   import de.lessvoid.nifty.elements.Element;
  +import de.lessvoid.nifty.elements.render.TextRenderer;
   import de.lessvoid.nifty.input.NiftyInputEvent;
   import de.lessvoid.nifty.screen.Screen;
   import de.lessvoid.nifty.screen.ScreenController;
   import de.lessvoid.nifty.tools.SizeValue;
  -import com.jme3.app.SimpleApplication;
  -import com.jme3.material.Material;
  -import com.jme3.renderer.Camera;
  -import com.jme3.terrain.geomipmap.TerrainLodControl;
  -import com.jme3.terrain.heightmap.AbstractHeightMap;
  -import com.jme3.terrain.geomipmap.TerrainQuad;
  -import com.jme3.terrain.heightmap.ImageBasedHeightMap;
  -import com.jme3.texture.Texture;
  -import com.jme3.texture.Texture.WrapMode;
  -import de.lessvoid.nifty.controls.Controller;
  -import de.lessvoid.nifty.elements.render.TextRenderer;
  -import de.lessvoid.xml.xpp3.Attributes;
   import java.util.ArrayList;
   import java.util.List;
  -import java.util.Properties;
   import java.util.concurrent.Callable;
   import java.util.concurrent.Future;
   import java.util.concurrent.ScheduledThreadPoolExecutor;
  -import jme3tools.converters.ImageToAwt;
  -
  -public class TestLoadingScreen1 extends SimpleApplication implements ScreenController, Controller {
  +
  +public class TestLoadingScreen1 extends SimpleApplication implements
  +        ScreenController, Controller {
   
       private NiftyJmeDisplay niftyDisplay;
       private Nifty nifty;
  
positive.code:             setProgress(0.6f, "Creating terrain");
  
              AbstractHeightMap heightmap = null;
              Texture heightMapImage = assetManager.loadTexture("Textures/Terrain/splat/mountains512.png");
              heightmap = new ImageBasedHeightMap(heightMapImage.getImage());
  
              heightmap.load();
              terrain = new TerrainQuad("my terrain", 65, 513, heightmap.getHeightMap());
              setProgress(0.8f, "Positioning terrain");
  
              terrain.setMaterial(mat_terrain);
  
negative.code:     }
  
      @Override
      public void onFocus(boolean getFocus) {
      }
  
      @Override
      public void stop() {
          super.stop();
          //the pool executor needs to be shut down so the application properly
          //exits.
          exec.shutdown();
      }
  
      @Override
      public void bind(Nifty nifty, Screen screen, Element elmnt,
              Parameters prmtrs) {
          progressBarElement = elmnt.findElementById("progressbar");
      }
  
      @Override
      public void init(Parameters prmtrs) {
      }
  
  }
  
  ----
  