Package com.scriptographer.ai

Source Code of com.scriptographer.ai.GradientStopList

/*
* Scriptographer
*
* This file is part of Scriptographer, a Scripting Plugin for Adobe Illustrator
* http://scriptographer.org/
*
* Copyright (c) 2002-2010, Juerg Lehni
* http://scratchdisk.com/
*
* All rights reserved. See LICENSE file for details.
*
* File created on Oct 18, 2006.
*/

package com.scriptographer.ai;

import com.scriptographer.ScriptographerException;
import com.scriptographer.list.AbstractStructList;

/**
* @author lehni
*
* @jshide
*/
public class GradientStopList extends AbstractStructList<Gradient, GradientStop> {

  protected GradientStopList(Gradient gradient) {
    super(gradient);
  }
 
  public Gradient getGradient() {
    return reference;
  }

  public Class<GradientStop> getComponentType() {
    return GradientStop.class;
  }

  protected int nativeGetSize() {
    return nativeGetSize(reference.handle);
  }

  protected int nativeRemove(int fromIndex, int toIndex) {
    return nativeRemove(reference.handle, reference.document.handle,
        fromIndex, toIndex);
  }

  protected GradientStop createEntry(int index) {
    return new GradientStop(reference, index);
  }

  public void remove(int fromIndex, int toIndex) {
    if (fromIndex < toIndex && size + fromIndex - toIndex < 2)
      throw new ScriptographerException(
          "There need to be at least two gradient stops");

    super.remove(fromIndex, toIndex);
  }

  private static native int nativeGetSize(int handle);

  private static native int nativeRemove(int handle, int docHandle,
      int fromIndex, int toIndex);

  protected static native boolean nativeGet(int handle, int index,
      GradientStop stop);

  protected static native boolean nativeSet(int handle, int docHandle,
      int index, double midPoint, double rampPoint, float[] color);

  protected static native boolean nativeInsert(int handle, int docHandle,
      int index, double midPoint, double rampPoint, float[] color);
}
TOP

Related Classes of com.scriptographer.ai.GradientStopList

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.