private boolean fields_valid() {
        this.field_validation_errors = new String();

        // fix
        if ( this.fix.getText().length() == 0 || (this.fix.getText().length() > 5) ) {
            field_validation_errors += "Invalid fix name!\n";
        }

        // track
        if ( ! this.track.getText().equals("") ) {
            try {
                int hld_track = Integer.parseInt(this.track.getText());
                if ((hld_track < 0) || (hld_track > 360)) {
                    field_validation_errors += "Track out of range (0-360)!\n";
                }
            } catch (NumberFormatException nf) {
                field_validation_errors += "Track contains non-numeric characters!\n";
            }
        }

        // leg duration
        // nothing to check...

        // standard
        // nothig to check...

//        // radial
//        if ( ! this.radial.getText().equals("") ) {
//            try {
//                int radial = Integer.parseInt(this.radial.getText());
//                if ((radial < 0) || (radial > 360)) {
//                    field_validation_errors +="Radial outside of map_range (0-360)!\n";
//                }
//            } catch (NumberFormatException nf) {
//                field_validation_errors += "Radial contains non-numeric characters!\n";
//            }
//        }
//
//        // distance
//        if ( ! this.distance.getText().equals("") ) {
//            try {
//                Float distance = Float.parseFloat(this.distance.getText());
//                if ((distance < 0.0f) || (distance > 99.9f)) {
//                    field_validation_errors +="Distance outside of map_range (0-99.9)!\n";
//                }
//            } catch (NumberFormatException nf) {
//                field_validation_errors += "Distance contains non-numeric characters!\n";
//            }
//        }

        if ( ! field_validation_errors.equals("") ) {
            field_validation_errors = field_validation_errors.trim();
            return false;
        } else {
            return true;
        }
    }