Package at.bestsolution.efxclipse.testcases.fxgraph.shape

Source Code of at.bestsolution.efxclipse.testcases.fxgraph.shape.DeriveColorBinding

package at.bestsolution.efxclipse.testcases.fxgraph.shape;

import javafx.beans.binding.ObjectBinding;
import javafx.beans.value.ObservableDoubleValue;
import javafx.beans.value.ObservableValue;
import javafx.scene.paint.Color;

public class DeriveColorBinding extends ObjectBinding<Color> {
 
  private ObservableValue<Color> sourceColor;
  private ObservableDoubleValue hueShift;
  private ObservableDoubleValue saturationFactor;
  private ObservableDoubleValue brightnessFactor;
  private ObservableDoubleValue opacityFactor;
 
  public DeriveColorBinding(
      ObservableValue<Color> sourceColor,
      ObservableDoubleValue hueShift,
      ObservableDoubleValue saturationFactor,
      ObservableDoubleValue brightnessFactor,
      ObservableDoubleValue opacityFactor
      ) {
    this.sourceColor = sourceColor;
    this.hueShift = hueShift;
    this.saturationFactor = saturationFactor;
    this.brightnessFactor = brightnessFactor;
    this.opacityFactor = opacityFactor;
    bind(sourceColor, hueShift, saturationFactor, brightnessFactor, opacityFactor);
  }
 
  @Override
  protected Color computeValue() {
    Color c = sourceColor.getValue().deriveColor(
        hueShift.getValue().doubleValue(),
        saturationFactor.getValue().doubleValue(),
        brightnessFactor.getValue().doubleValue(), opacityFactor.getValue().doubleValue());
    return c;
  }
 
  public static DeriveColorBinding create(
      ObservableValue<Color> sourceColor,
      ObservableDoubleValue hueShift,
      ObservableDoubleValue saturationFactor,
      ObservableDoubleValue brightnessFactor,
      ObservableDoubleValue opacityFactor) {
    return new DeriveColorBinding(sourceColor,hueShift,saturationFactor,brightnessFactor,opacityFactor);
  }
 
 

}
TOP

Related Classes of at.bestsolution.efxclipse.testcases.fxgraph.shape.DeriveColorBinding

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.