Creating a read-only map application

The following application is provided in the directory <installdir> /jviews-maps810/samples/loadmap/index.html as part of the JViews Maps demonstration software. This is a simple case where the application loads a previously saved, read-only map in .ivl format, and displays it in the Map Builder main window. A map of this type can be built using the Map Builder or the JViews Maps API:
  1. Import the required packages and classes:
    import ilog.views.IlvManagerView;
    import ilog.views.maps.IlvCoordinateSystemProperty;
    import ilog.views.maps.beans.IlvJMouseCoordinateViewer;
    import ilog.views.maps.beans.IlvMapLegend;
    import ilog.views.maps.srs.coordsys.IlvGeographicCoordinateSystem;
    import ilog.views.swing.IlvJManagerViewControlBar;
    import ilog.views.swing.IlvJScrollManagerView;
    import java.awt.BorderLayout;
    import java.awt.Dimension;
    import java.io.File;
    import javax.swing.JFrame;
    
  2. Create the basic building blocks of the MapĀ Builder: create a frame containing the map beans, set it to exit when the Close button is pressed, set up the beans, and arrange the main window layout:
    public class LoadMapDemo extends JFrame {
       IlvManagerView view=new IlvManagerView();
       IlvJScrollManagerView viewScroll=new IlvJScrollManagerView(view);
       IlvJManagerViewControlBar viewToolbar = new IlvJManagerViewControlBar(); 
       IlvJMouseCoordinateViewer locator=new IlvJMouseCoordinateViewer();
       IlvMapLegend legend=new IlvMapLegend();
    public LoadMapDemo() {
       super();
       setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       viewToolbar.setView(view);
       locator.setView(view);
       legend.setView(view);
       view.setSize(new Dimension(900, 450));
       view.setKeepingAspectRatio(true);
       viewScroll.setPreferredSize(view.getSize());
       view.getManager().setNamedProperty(new
          IlvCoordinateSystemProperty(IlvGeographicCoordinateSystem.WGS84));
       getContentPane().add(viewToolbar,BorderLayout.NORTH);
       getContentPane().add(viewScroll,BorderLayout.CENTER);
       getContentPane().add(locator,BorderLayout.SOUTH);    
       getContentPane().add(legend,BorderLayout.LINE_START);
       loadFile("data/county.ivl"); //$NON-NLS-1$
    }
    
  3. Load the file into the manager of the view:
    public void loadFile(String filename){
       try {
          IlvMapInputStream mapInput = new IlvMapInputStream(filename);
          mapInput.read(view.getManager());
          view.fitTransformerToContent();
          pack();
       }  catch(Exception ex){
          ex.printStackTrace();
       }
    }
    
  4. Write the main method:
    static public void main(String args[]) {
      javax.swing.SwingUtilities.invokeLater(
        new Runnable() {
          public void run() {
            final JFrame frame = new LoadMapDemo();
            frame.pack();
            frame.setVisible(true);
        }
      );
    }