<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">package usda.weru.erosion;

import de.schlichtherle.truezip.file.TFile;
import java.awt.event.KeyEvent;

class OutputDisplay extends usda.weru.erosion.gui.OutputDisplay_n implements java.awt.KeyEventPostProcessor {
    private static final long serialVersionUID = 1L;

    public Surface surf;

    public static void main(String args[]) {

        OutputDisplay ed = new OutputDisplay(new TFile(args[0]), ".sgrd");
        ed.setVisible(true);
    }
    int dataType = 1;

    OutputDisplay() {
        super();
    }
    private boolean loadFlg = true;

    OutputDisplay(TFile inpf, String fileExt) {

        super();
        surf = new Surface();
        TFile datf = new TFile(inpf.getParent(), inpf.getName().replace(DataStore.InputExt, fileExt));
        if (!datf.exists()) {
            javax.swing.JOptionPane.showMessageDialog(this, "File " + datf.getName() + " not found\n" + "Turn on grid summary results and click run again", "File not found",
                    javax.swing.JOptionPane.ERROR_MESSAGE);
            return;
        }
        try {
            surf.loadData(this, new TFile(inpf.getParent(), inpf.getName().replace(DataStore.InputExt, fileExt)));
            surf.init();
            JP_chart.add(surf.getChart());
            JP_table.add(surf.getTable());
            surf.changeData();
            surf.makeDrawField();
        } catch (java.io.FileNotFoundException ex) {
//            Logger.getLogger(OutputDisplay.class.getName()).log(Level.SEVERE, null, ex);
        }
        loadFlg = false;
        setTitle("Soil Erosion Viewer " + inpf.getName().replace(DataStore.InputExt, fileExt));
//        setVisible(true);
        java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventPostProcessor(this);
    }

    @Override
    protected void JCB_periodItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_JCB_periodItemStateChanged
        if (loadFlg) {
            return;
        }
        surf.changeData();
    }//GEN-LAST:event_JCB_periodItemStateChanged

    @Override
    protected void JCB_typeItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_JCB_typeItemStateChanged
        if (loadFlg) {
            return;
        }
        surf.changeData();
    }//GEN-LAST:event_JCB_typeItemStateChanged

    @Override
    protected void JB_rotateRightActionPerformed(java.awt.event.ActionEvent evt) {
        surf.rotateRight();
    }

    @Override
    protected void JB_rotateLeftActionPerformed(java.awt.event.ActionEvent evt) {
        surf.rotateLeft();
    }

    @Override
    public boolean postProcessKeyEvent(java.awt.event.KeyEvent e) {
        if (!isFocused()) {
            return false;
        }
        if (e.getID() != KeyEvent.KEY_PRESSED) {
            return false;
        }
        switch (e.getKeyCode()) {
            case java.awt.event.KeyEvent.VK_LEFT:
                int sdx = JCB_period.getSelectedIndex();
                if (sdx &gt; 0) {
                    JCB_period.setSelectedIndex(sdx - 1);
                }
                return true;
            case java.awt.event.KeyEvent.VK_RIGHT:
                sdx = JCB_period.getSelectedIndex();
                int mdx = JCB_period.getItemCount();
                try {
                    if (sdx + 1 &lt; mdx) {
                        JCB_period.setSelectedIndex(sdx + 1);
                    }
                } catch (java.lang.IllegalArgumentException iae) {
                    //System.out.println("OO_pPKE -- iae " + sdx + " " + mdx);
                }
                return true;
            case java.awt.event.KeyEvent.VK_UP:
                sdx = JCB_type.getSelectedIndex();
                if (sdx &gt; 0) {
                    JCB_type.setSelectedIndex(sdx - 1);
                }
                return true;
            case java.awt.event.KeyEvent.VK_DOWN:
                sdx = JCB_type.getSelectedIndex();
                mdx = JCB_type.getItemCount();
                try {
                    if (sdx + 1 &lt; mdx) {
                        JCB_type.setSelectedIndex(sdx + 1);
                    }
                } catch (java.lang.IllegalArgumentException iae2) {
                    //System.out.println("OO_pPKE -- iae " + sdx + " " + mdx);
                }
                return true;
        }
        return false;
    }
}
</pre></body></html>