/// <summary>
        /// Creates a new workspace for adjusting RGB color values.
        /// </summary>
        public RgbLimiterWorkspaceViewModel()
        {
            R = new ColorChannelLimiterWorkspaceViewModel();
            G = new ColorChannelLimiterWorkspaceViewModel();
            B = new ColorChannelLimiterWorkspaceViewModel();

            R.Offset = G.Offset = B.Offset = 10;
        }
        ////////////////////////////////////////
        #region Constructor

        /// <summary>
        /// Creates a new workspace for adjusting RGB color values.
        /// </summary>
        public RgbLimiterWorkspaceViewModel()
        {
            R = new ColorChannelLimiterWorkspaceViewModel();
            G = new ColorChannelLimiterWorkspaceViewModel();
            B = new ColorChannelLimiterWorkspaceViewModel();

            R.Offset = G.Offset = B.Offset = 10;
        }
        /// <summary>
        /// Creates a new Color Ramp with adjustable maxima for each color channel.
        /// </summary>
        /// <param name="isDynamic">Indicates whether or not gradients on the ramp change with the offset.</param>
        /// <param name="rampHues">An array containing the colors for each gradient stop on the color ramp.</param>
        public AdjustableChannelColorRampWorkspaceViewModel(bool isDynamic, Color[] rampHues)
            : base(isDynamic, rampHues)
        {
            R = new ColorChannelLimiterWorkspaceViewModel();
            R.PropertyChanged += ChannelLimit_PropertyChanged;
            G = new ColorChannelLimiterWorkspaceViewModel();
            G.PropertyChanged += ChannelLimit_PropertyChanged;
            B = new ColorChannelLimiterWorkspaceViewModel();
            B.PropertyChanged += ChannelLimit_PropertyChanged;

            Offset = 5;
        }
        /// <summary>
        /// Creates a new Color Ramp with adjustable maxima for each color channel.
        /// </summary>
        /// <param name="isDynamic">Indicates whether or not gradients on the ramp change with the offset.</param>
        /// <param name="rampHues">An array containing the colors for each gradient stop on the color ramp.</param>
        public AdjustableChannelColorRampWorkspaceViewModel(bool isDynamic, Color[] rampHues)
            : base(isDynamic, rampHues)
        {
            R = new ColorChannelLimiterWorkspaceViewModel();
            R.PropertyChanged += ChannelLimit_PropertyChanged;
            G = new ColorChannelLimiterWorkspaceViewModel();
            G.PropertyChanged += ChannelLimit_PropertyChanged;
            B = new ColorChannelLimiterWorkspaceViewModel();
            B.PropertyChanged += ChannelLimit_PropertyChanged;

            Offset = 5;
        }