/// <summary>
        /// Creates a new object that is a copy of the current instance.
        /// </summary>
        /// <returns>A new object that is a copy of this instance.</returns>
        public EditCurveKeyCollection Clone()
        {
            EditCurveKeyCollection newKeys = new EditCurveKeyCollection();

            newKeys.keys = new List <EditCurveKey>(keys);
            return(newKeys);
        }
        public EditCurve(string name, System.Drawing.Color curveColor, CommandHistory commandHistory)
        {
            originalCurve = new Curve();
            this.color    = curveColor;
            keys          = new EditCurveKeyCollection(this);

            state.Name     = name;
            state.PreLoop  = OriginalCurve.PreLoop;
            state.PostLoop = OriginalCurve.PostLoop;

            this.commandHistory = commandHistory;
        }