Patch title: Release 92 bulk changes
Abstract:
File: /graphic/color/adjust.pli
Key:
    Removed line
    Added line
   
module "/pliant/language/compiler.pli"
module "/pliant/math/functions.pli"
module "spectrum.pli"
module "color.pli"
module "database.pli"



module "/pliant/math/functions.pli"
module "spectrum.pli"
module "color.pli"
module "database.pli"



function color_do_adjust filter options
  arg_rw ColorSpectrum32 filter ; arg Str options
  if options:len=0
    return
  var Float dull := options option "dull" Float
  if dull=defined and dull<0
    filter := (cast dull ColorSpectrum32)+(1-dull)*filter
  var Float exposure := options option "exposure" Float
  var Float dark := options option "dark" Float
  var Float light := options option "light" Float
  if exposure=defined or dark=defined or light=defined
    filter := exposure filter 0.25
    if exposure=defined
      filter := exposure filter exposure
    if dark=defined
      filter := filter ^ (1+dark)
    if light=defined
      filter := (cast 1 ColorSpectrum32) - ( (cast 1 ColorSpectrum32)+(-1)*filter ) ^ (1+light)
    filter := unexposure filter 0.25
  if dull=defined and dull>0
    filter := (cast dull ColorSpectrum32)+(1-dull)*filter
  var Float saturation := options option "saturation" Float
  if saturation=defined
    var Float Y := filter_XYZn:filter Y
    filter := (1+saturation)*filter-saturation*(cast Y ColorSpectrum32)


function color_adjust filter options
  arg_rw ColorSpectrum32 filter ; arg Str options
  if options:len<>0
    color_do_adjust filter options
    var Str extra := options option "extra" Str
    if extra<>""
      color_do_adjust filter extra
    var Str invert := options option "invert" Str
    if invert<>""
      var ColorSpectrum32 ref := filter
      color_do_adjust ref invert
      filter := 2*filter+(-1)*ref


export color_adjust
export color_adjust