public EditInfo getEditInfo(int n) {
        if (n == 0) {
            return new EditInfo(waveform == WF_DC ? "Voltage"
                    : "Max Voltage", maxVoltage, -20, 20);
        }
        if (n == 1) {
            EditInfo ei = new EditInfo("Waveform", waveform, -1, -1);
            ei.choice = new Choice();
            ei.choice.add("D/C");
            ei.choice.add("A/C");
            ei.choice.add("Square Wave");
            ei.choice.add("Triangle");
            ei.choice.add("Sawtooth");
            ei.choice.add("Pulse");
            ei.choice.select(waveform);
            return ei;
        }
        if (waveform == WF_DC) {
            return null;
        }
        if (n == 2) {
            return new EditInfo("Frequency (Hz)", frequency, 4, 500);
        }
        if (n == 3) {
            return new EditInfo("DC Offset (V)", bias, -20, 20);
        }
        if (n == 4) {
            return new EditInfo("Phase Offset (degrees)", phaseShift * 180 / pi,
                    -180, 180).setDimensionless();
        }
        if (n == 5 && waveform == WF_SQUARE) {
            return new EditInfo("Duty Cycle", dutyCycle * 100, 0, 100).
                    setDimensionless();
        }
        return null;
    }