isNeutral property

bool get isNeutral

Whether any of this changes the picture at all.

For a caller or a test to say what "off" means in one place rather than fifteen. Every field that moves a pixel is asked, including the grade gfx-27n added and the dither gfx-24n did: a look with only a lift in it used to report itself neutral. vignetteRoundness alone is not asked, because it shapes a vignette and does nothing while vignette is zero.

Implementation

bool get isNeutral =>
    contrast == 1.0 &&
    saturation == 1.0 &&
    temperature == 0.0 &&
    vignette == 0.0 &&
    grain == 0.0 &&
    chromaticAberration == 0.0 &&
    dither == 0.0 &&
    whiteBalance == 0.0 &&
    tint == 0.0 &&
    _isNeutralTriple(lift, 0.0) &&
    _isNeutralTriple(gamma, 1.0) &&
    _isNeutralTriple(gain, 1.0) &&
    !gradesThroughLut;