/// <summary>
        /// Try to apply the symbol size group style. Returns true if successfull applied.
        /// </summary>
        /// <param name="externalGroups"></param>
        /// <param name="localGroups"></param>
        /// <param name="setter"></param>
        /// <returns></returns>
        public static bool ApplyStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            Action <ILineConnectionStyle, bool> setter)
        {
            LineConnection2DGroupStyle grpStyle = null;
            IPlotGroupStyleCollection  grpColl  = null;

            if (externalGroups.ContainsType(typeof(LineConnection2DGroupStyle)))
            {
                grpColl = externalGroups;
            }
            else if (localGroups != null && localGroups.ContainsType(typeof(LineConnection2DGroupStyle)))
            {
                grpColl = localGroups;
            }

            if (null != grpColl)
            {
                grpStyle = (LineConnection2DGroupStyle)grpColl.GetPlotGroupStyle(typeof(LineConnection2DGroupStyle));
                grpColl.OnBeforeApplication(typeof(LineConnection2DGroupStyle));
                setter(grpStyle.LineConnectionStyle, grpStyle._connectCircular);
                return(true);
            }
            else
            {
                return(false);
            }
        }
        public static void PrepareStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            Func <bool> getter)
        {
            if (!externalGroups.ContainsType(typeof(IgnoreMissingDataPointsGroupStyle)) &&
                null != localGroups &&
                !localGroups.ContainsType(typeof(IgnoreMissingDataPointsGroupStyle)))
            {
                localGroups.Add(new IgnoreMissingDataPointsGroupStyle());
            }

            IgnoreMissingDataPointsGroupStyle grpStyle = null;

            if (externalGroups.ContainsType(typeof(IgnoreMissingDataPointsGroupStyle)))
            {
                grpStyle = (IgnoreMissingDataPointsGroupStyle)externalGroups.GetPlotGroupStyle(typeof(IgnoreMissingDataPointsGroupStyle));
            }
            else if (localGroups != null)
            {
                grpStyle = (IgnoreMissingDataPointsGroupStyle)localGroups.GetPlotGroupStyle(typeof(IgnoreMissingDataPointsGroupStyle));
            }

            if (grpStyle != null && getter != null && !grpStyle.IsInitialized)
            {
                grpStyle.Initialize(getter());
            }
        }
        /// <summary>
        /// Try to apply the symbol size group style. Returns true if successfull applied.
        /// </summary>
        /// <param name="externalGroups"></param>
        /// <param name="localGroups"></param>
        /// <param name="setter">A function of the plot style that takes the symbol size evaluation function.</param>
        /// <returns>True if successfully applied, false otherwise.</returns>
        public static bool ApplyStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            Action <Func <int, double> > setter)
        {
            VariableSymbolSizeGroupStyle grpStyle = null;
            IPlotGroupStyleCollection    grpColl  = null;

            if (externalGroups.ContainsType(MyType))
            {
                grpColl = externalGroups;
            }
            else if (localGroups != null && localGroups.ContainsType(MyType))
            {
                grpColl = localGroups;
            }

            if (null != grpColl)
            {
                grpStyle = (VariableSymbolSizeGroupStyle)grpColl.GetPlotGroupStyle(MyType);
                grpColl.OnBeforeApplication(MyType);
                setter(grpStyle._symbolSizeForIndex);
                return(true);
            }
            else
            {
                return(false);
            }
        }
        public static void PrepareStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            Func <int, double> getter)
        {
            if (!externalGroups.ContainsType(MyType) &&
                null != localGroups &&
                !localGroups.ContainsType(MyType))
            {
                localGroups.Add(new VariableSymbolSizeGroupStyle());
            }

            VariableSymbolSizeGroupStyle grpStyle = null;

            if (externalGroups.ContainsType(typeof(SymbolSizeGroupStyle)))
            {
                grpStyle = (VariableSymbolSizeGroupStyle)externalGroups.GetPlotGroupStyle(MyType);
            }
            else if (localGroups != null)
            {
                grpStyle = (VariableSymbolSizeGroupStyle)localGroups.GetPlotGroupStyle(MyType);
            }

            if (grpStyle != null && getter != null && !grpStyle.IsInitialized)
            {
                grpStyle.Initialize(getter);
            }
        }
Example #5
0
        /// <summary>
        /// Looks first in externalGroups, then in localGroups for the type of PlotGroupStyle to apply.
        /// If an instance of this type is found, this instance is returned. If found, the containig collection
        /// is informed that this group style will be applied now by calling OnBeforeApplication.
        /// </summary>
        /// <typeparam name="T">Type of PlotGroupStyle to look for.</typeparam>
        /// <param name="externalGroups">First collection to look for the group style.</param>
        /// <param name="localGroups">Second collection to look for the group style.</param>
        /// <returns>The instance of the plot group style (if found), or null otherwise.</returns>
        public static T GetStyleToApply <T>(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups
            ) where T : IPlotGroupStyle
        {
            var grpStyle = default(T);
            IPlotGroupStyleCollection grpColl = null;

            if (externalGroups.ContainsType(typeof(T)))
            {
                grpColl = externalGroups;
            }
            else if (localGroups != null && localGroups.ContainsType(typeof(T)))
            {
                grpColl = localGroups;
            }

            if (null != grpColl)
            {
                grpStyle = (T)grpColl.GetPlotGroupStyle(typeof(T));
                grpColl.OnBeforeApplication(typeof(T));
            }

            return(grpStyle);
        }
        /// <summary>
        /// Prepares the style.
        /// </summary>
        /// <param name="externalGroups">The external groups.</param>
        /// <param name="localGroups">The local groups.</param>
        /// <param name="getter">The getter function. Item1 of the tuple is the line connection style, Item2 of the tuple is the ConnectCircular flag.</param>
        public static void PrepareStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            Func <Tuple <ILineConnectionStyle, bool> > getter)
        {
            if (!externalGroups.ContainsType(typeof(LineConnection2DGroupStyle)) &&
                null != localGroups &&
                !localGroups.ContainsType(typeof(LineConnection2DGroupStyle)))
            {
                localGroups.Add(new LineConnection2DGroupStyle());
            }

            LineConnection2DGroupStyle grpStyle = null;

            if (externalGroups.ContainsType(typeof(LineConnection2DGroupStyle)))
            {
                grpStyle = (LineConnection2DGroupStyle)externalGroups.GetPlotGroupStyle(typeof(LineConnection2DGroupStyle));
            }
            else if (localGroups != null)
            {
                grpStyle = (LineConnection2DGroupStyle)localGroups.GetPlotGroupStyle(typeof(LineConnection2DGroupStyle));
            }

            if (grpStyle != null && getter != null && !grpStyle.IsInitialized)
            {
                var data = getter();
                grpStyle.Initialize(data.Item1, data.Item2);
            }
        }
        /// <summary>
        /// Try to apply the symbol size group style. Returns true if successfull applied.
        /// </summary>
        /// <param name="externalGroups"></param>
        /// <param name="localGroups"></param>
        /// <param name="setter"></param>
        /// <returns></returns>
        public static bool ApplyStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            Action <bool> setter)
        {
            IgnoreMissingDataPointsGroupStyle grpStyle = null;
            IPlotGroupStyleCollection         grpColl  = null;

            if (externalGroups.ContainsType(typeof(IgnoreMissingDataPointsGroupStyle)))
            {
                grpColl = externalGroups;
            }
            else if (localGroups != null && localGroups.ContainsType(typeof(IgnoreMissingDataPointsGroupStyle)))
            {
                grpColl = localGroups;
            }

            if (null != grpColl)
            {
                grpStyle = (IgnoreMissingDataPointsGroupStyle)grpColl.GetPlotGroupStyle(typeof(IgnoreMissingDataPointsGroupStyle));
                grpColl.OnBeforeApplication(typeof(IgnoreMissingDataPointsGroupStyle));
                setter(grpStyle.IgnoreMissingDataPoints);
                return(true);
            }
            else
            {
                return(false);
            }
        }
Example #8
0
        /// <summary>
        /// Try to apply the symbol size group style. Returns true if successfull applied.
        /// </summary>
        /// <param name="externalGroups"></param>
        /// <param name="localGroups"></param>
        /// <param name="setter"></param>
        /// <returns></returns>
        public static bool ApplyStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            SymbolSizeSetter setter)
        {
            SymbolSizeGroupStyle      grpStyle = null;
            IPlotGroupStyleCollection grpColl  = null;

            if (externalGroups.ContainsType(typeof(SymbolSizeGroupStyle)))
            {
                grpColl = externalGroups;
            }
            else if (localGroups != null && localGroups.ContainsType(typeof(SymbolSizeGroupStyle)))
            {
                grpColl = localGroups;
            }

            if (null != grpColl)
            {
                grpStyle = (SymbolSizeGroupStyle)grpColl.GetPlotGroupStyle(typeof(SymbolSizeGroupStyle));
                grpColl.OnBeforeApplication(typeof(SymbolSizeGroupStyle));
                setter(grpStyle.SymbolSize);
                return(true);
            }
            else
            {
                return(false);
            }
        }
Example #9
0
        public static void PrepareStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            Getter getter)
        {
            if (!externalGroups.ContainsType(typeof(ColorGroupStyle)) &&
                null != localGroups &&
                !localGroups.ContainsType(typeof(ColorGroupStyle)))
            {
                localGroups.Add(ColorGroupStyle.NewLocalGroupStyle());
            }

            ColorGroupStyle grpStyle = null;

            if (externalGroups.ContainsType(typeof(ColorGroupStyle)))
            {
                grpStyle = (ColorGroupStyle)externalGroups.GetPlotGroupStyle(typeof(ColorGroupStyle));
            }
            else if (localGroups != null)
            {
                grpStyle = (ColorGroupStyle)localGroups.GetPlotGroupStyle(typeof(ColorGroupStyle));
            }

            if (grpStyle != null && getter != null && !grpStyle.IsInitialized)
            {
                grpStyle.Initialize(getter());
            }
        }
Example #10
0
        public static void PrepareStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            Int32FunctionValueGetter getter)
        {
            if (!externalGroups.ContainsType(typeof(SkipFrequencyGroupStyle)) &&
                null != localGroups &&
                !localGroups.ContainsType(typeof(SkipFrequencyGroupStyle)))
            {
                localGroups.Add(new SkipFrequencyGroupStyle());
            }

            SkipFrequencyGroupStyle grpStyle = null;

            if (externalGroups.ContainsType(typeof(SkipFrequencyGroupStyle)))
            {
                grpStyle = (SkipFrequencyGroupStyle)externalGroups.GetPlotGroupStyle(typeof(SkipFrequencyGroupStyle));
            }
            else if (localGroups != null)
            {
                grpStyle = (SkipFrequencyGroupStyle)localGroups.GetPlotGroupStyle(typeof(SkipFrequencyGroupStyle));
            }

            if (grpStyle != null && getter != null && !grpStyle.IsInitialized)
            {
                grpStyle.Initialize(getter());
            }
        }
Example #11
0
        public static T GetStyleToInitialize <T>(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups
            ) where T : IPlotGroupStyle, new()
        {
            if (!externalGroups.ContainsType(typeof(T)) &&
                null != localGroups &&
                !localGroups.ContainsType(typeof(T)))
            {
                localGroups.Add(new T());
            }

            var grpStyle = default(T);

            if (externalGroups.ContainsType(typeof(T)))
            {
                grpStyle = (T)externalGroups.GetPlotGroupStyle(typeof(T));
            }
            else if (localGroups != null)
            {
                grpStyle = (T)localGroups.GetPlotGroupStyle(typeof(T));
            }

            if (grpStyle != null && !grpStyle.IsInitialized)
            {
                return(grpStyle);
            }
            else
            {
                return(default(T));
            }
        }
Example #12
0
 public static void AddExternalGroupStyle(IPlotGroupStyleCollection externalGroups)
 {
     if (PlotGroupStyle.ShouldAddExternalGroupStyle(externalGroups, typeof(ColorGroupStyle)))
     {
         var gstyle = ColorGroupStyle.NewExternalGroupStyle();
         externalGroups.Add(gstyle);
     }
 }
 public static void AddExternalGroupStyle(IPlotGroupStyleCollection externalGroups)
 {
     if (PlotGroupStyle.ShouldAddExternalGroupStyle(externalGroups, typeof(SymbolShapeStyleGroupStyle)))
     {
         SymbolShapeStyleGroupStyle gstyle = new SymbolShapeStyleGroupStyle();
         gstyle.IsStepEnabled = true;
         externalGroups.Add(gstyle);
     }
 }
Example #14
0
 public static void AddLocalGroupStyle(
     IPlotGroupStyleCollection externalGroups,
     IPlotGroupStyleCollection localGroups)
 {
     if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(ColorGroupStyle)))
     {
         localGroups.Add(ColorGroupStyle.NewLocalGroupStyle());
     }
 }
Example #15
0
 public static void AddLocalGroupStyle(
     IPlotGroupStyleCollection externalGroups,
     IPlotGroupStyleCollection localGroups)
 {
     if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(DashPatternGroupStyle)))
     {
         localGroups.Add(new DashPatternGroupStyle());
     }
 }
 public static void AddLocalGroupStyle(
     IPlotGroupStyleCollection externalGroups,
     IPlotGroupStyleCollection localGroups)
 {
     if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(LineConnection2DGroupStyle)))
     {
         localGroups.Add(new LineConnection2DGroupStyle());
     }
 }
 /// <summary>
 /// If neccessary, adds this group style to localGroups.
 /// </summary>
 /// <param name="externalGroups">External group styles.</param>
 /// <param name="localGroups">Local group styles.</param>
 public static void AddLocalGroupStyle(
     IPlotGroupStyleCollection externalGroups,
     IPlotGroupStyleCollection localGroups)
 {
     if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, MyType))
     {
         localGroups.Add(new VariableSymbolSizeGroupStyle());
     }
 }
 public static void AddLocalGroupStyle(
     IPlotGroupStyleCollection externalGroups,
     IPlotGroupStyleCollection localGroups)
 {
     if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(SymbolShapeStyleGroupStyle)))
     {
         localGroups.Add(new SymbolShapeStyleGroupStyle());
     }
 }
Example #19
0
 public static void AddLocalGroupStyle(
     IPlotGroupStyleCollection externalGroups,
     IPlotGroupStyleCollection localGroups)
 {
     if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(SkipFrequencyGroupStyle)))
     {
         localGroups.Add(new SkipFrequencyGroupStyle());
     }
 }
 public static void AddLocalGroupStyle(
     IPlotGroupStyleCollection externalGroups,
     IPlotGroupStyleCollection localGroups)
 {
     if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(BarWidthPositionGroupStyle)))
     {
         localGroups.Add(new BarWidthPositionGroupStyle());
     }
 }
 public static void AddExternalGroupStyle(IPlotGroupStyleCollection externalGroups)
 {
     if (PlotGroupStyle.ShouldAddExternalGroupStyle(externalGroups, typeof(BarWidthPositionGroupStyle)))
     {
         BarWidthPositionGroupStyle gstyle = new BarWidthPositionGroupStyle();
         gstyle.IsStepEnabled = true;
         externalGroups.Add(gstyle);
     }
 }
 public static void AddLocalGroupStyle(
     IPlotGroupStyleCollection externalGroups,
     IPlotGroupStyleCollection localGroups)
 {
     if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(IgnoreMissingDataPointsGroupStyle)))
     {
         localGroups.Add(new IgnoreMissingDataPointsGroupStyle());
     }
 }
 /// <summary>
 /// Adds a local BarWidthPositionGroupStyle in case there is no external one. In this case also BeginPrepare is called on
 /// this newly created group style.
 /// </summary>
 /// <param name="externalGroups">Collection of external plot group styles.</param>
 /// <param name="localGroups">Collection of plot group styles of the plot item.</param>
 public static void AddLocalGroupStyle(
     IPlotGroupStyleCollection externalGroups,
     IPlotGroupStyleCollection localGroups)
 {
     if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(BarSizePosition2DGroupStyle)))
     {
         var styleToAdd = new BarSizePosition2DGroupStyle();
         localGroups.Add(styleToAdd);
     }
 }
Example #24
0
 public static void AddExternalGroupStyle(IPlotGroupStyleCollection externalGroups)
 {
     if (PlotGroupStyle.ShouldAddExternalGroupStyle(externalGroups, typeof(ScatterSymbolGroupStyle)))
     {
         var gstyle = new ScatterSymbolGroupStyle
         {
             IsStepEnabled = true
         };
         externalGroups.Add(gstyle);
     }
 }
 public static void AddExternalGroupStyle(IPlotGroupStyleCollection externalGroups)
 {
     if (PlotGroupStyle.ShouldAddExternalGroupStyle(externalGroups, typeof(BarSizePosition2DGroupStyle)))
     {
         var gstyle = new BarSizePosition2DGroupStyle
         {
             IsStepEnabled = true
         };
         externalGroups.Add(gstyle);
     }
 }
 public static void IntendToApply(
     IPlotGroupStyleCollection externalGroups,
     IPlotGroupStyleCollection localGroups,
     int numberOfItems,
     double minimumLogicalXValue,
     double maximumLogicalXValue
     )
 {
     if (externalGroups != null && externalGroups.ContainsType(typeof(BarWidthPositionGroupStyle)))
     {
         ((BarWidthPositionGroupStyle)externalGroups.GetPlotGroupStyle(typeof(BarWidthPositionGroupStyle))).IntendToApply(numberOfItems, minimumLogicalXValue, maximumLogicalXValue);
     }
 }
Example #27
0
        public static bool ShouldAddLocalGroupStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            System.Type type)
        {
            bool found = false;

            if (externalGroups != null && externalGroups.ContainsType(type))
            {
                found = true;
            }
            if (!found && localGroups != null && localGroups.ContainsType(type))
            {
                found = true;
            }

            return(!found && localGroups != null);
        }
Example #28
0
        /// <summary>
        /// Looks first in externalGroups, then in localGroups for the type of PlotGroupStyle to apply.
        /// In contrast to <see cref="GetStyleToApply{T}(IPlotGroupStyleCollection, IPlotGroupStyleCollection)"/>, we are searching here only for an interface,
        /// and return the first plot group style found that implements that interface.
        /// If an instance with this interface found, this instance is returned. If found, the containig collection
        /// is informed that this group style will be applied now by calling OnBeforeApplication.
        /// </summary>
        /// <typeparam name="T">Type of the interface to look for.</typeparam>
        /// <param name="externalGroups">First collection to look for the group style.</param>
        /// <param name="localGroups">Second collection to look for the group style.</param>
        /// <returns>The instance of the plot group style that implements the interface (if found), or null otherwise.</returns>
        public static T GetFirstStyleToApplyImplementingInterface <T>(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups
            )
        {
            IPlotGroupStyle           grpStyle = null;
            IPlotGroupStyleCollection grpColl  = externalGroups;

            grpStyle = grpColl.FirstOrDefault(style => typeof(T).IsAssignableFrom(style.GetType()));
            if (null == grpStyle)
            {
                grpColl  = localGroups;
                grpStyle = grpColl.FirstOrDefault(style => typeof(T).IsAssignableFrom(style.GetType()));
            }

            if (null != grpStyle)
            {
                grpColl.OnBeforeApplication(grpStyle.GetType());
            }

            return((T)grpStyle);
        }
Example #29
0
        public static void ApplyStyle(
            IPlotGroupStyleCollection externalGroups,
            IPlotGroupStyleCollection localGroups,
            Setter setter)
        {
            ColorGroupStyle           grpStyle = null;
            IPlotGroupStyleCollection grpColl  = null;

            if (externalGroups.ContainsType(typeof(ColorGroupStyle)))
            {
                grpColl = externalGroups;
            }
            else if (localGroups != null && localGroups.ContainsType(typeof(ColorGroupStyle)))
            {
                grpColl = localGroups;
            }

            if (null != grpColl)
            {
                grpStyle = (ColorGroupStyle)grpColl.GetPlotGroupStyle(typeof(ColorGroupStyle));
                grpColl.OnBeforeApplication(typeof(ColorGroupStyle));
                setter(grpStyle.Color);
            }
        }
Example #30
0
		public static void AddExternalGroupStyle(IPlotGroupStyleCollection externalGroups)
		{
			if (PlotGroupStyle.ShouldAddExternalGroupStyle(externalGroups, typeof(ColorGroupStyle)))
			{
				ColorGroupStyle gstyle = ColorGroupStyle.NewExternalGroupStyle();
				externalGroups.Add(gstyle);
			}
		}
		public static void AddLocalGroupStyle(
		 IPlotGroupStyleCollection externalGroups,
		 IPlotGroupStyleCollection localGroups)
		{
			if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(IgnoreMissingDataPointsGroupStyle)))
				localGroups.Add(new IgnoreMissingDataPointsGroupStyle());
		}
		public static void PrepareStyle(
			IPlotGroupStyleCollection externalGroups,
			IPlotGroupStyleCollection localGroups,
			Func<bool> getter)
		{
			if (!externalGroups.ContainsType(typeof(IgnoreMissingDataPointsGroupStyle))
				&& null != localGroups
				&& !localGroups.ContainsType(typeof(IgnoreMissingDataPointsGroupStyle)))
			{
				localGroups.Add(new IgnoreMissingDataPointsGroupStyle());
			}

			IgnoreMissingDataPointsGroupStyle grpStyle = null;
			if (externalGroups.ContainsType(typeof(IgnoreMissingDataPointsGroupStyle)))
				grpStyle = (IgnoreMissingDataPointsGroupStyle)externalGroups.GetPlotGroupStyle(typeof(IgnoreMissingDataPointsGroupStyle));
			else if (localGroups != null)
				grpStyle = (IgnoreMissingDataPointsGroupStyle)localGroups.GetPlotGroupStyle(typeof(IgnoreMissingDataPointsGroupStyle));

			if (grpStyle != null && getter != null && !grpStyle.IsInitialized)
				grpStyle.Initialize(getter());
		}
		/// <summary>
		/// Try to apply the symbol size group style. Returns true if successfull applied.
		/// </summary>
		/// <param name="externalGroups"></param>
		/// <param name="localGroups"></param>
		/// <param name="setter"></param>
		/// <returns></returns>
		public static bool ApplyStyle(
			IPlotGroupStyleCollection externalGroups,
			IPlotGroupStyleCollection localGroups,
			Action<bool> setter)
		{
			IgnoreMissingDataPointsGroupStyle grpStyle = null;
			IPlotGroupStyleCollection grpColl = null;
			if (externalGroups.ContainsType(typeof(IgnoreMissingDataPointsGroupStyle)))
				grpColl = externalGroups;
			else if (localGroups != null && localGroups.ContainsType(typeof(IgnoreMissingDataPointsGroupStyle)))
				grpColl = localGroups;

			if (null != grpColl)
			{
				grpStyle = (IgnoreMissingDataPointsGroupStyle)grpColl.GetPlotGroupStyle(typeof(IgnoreMissingDataPointsGroupStyle));
				grpColl.OnBeforeApplication(typeof(IgnoreMissingDataPointsGroupStyle));
				setter(grpStyle.IgnoreMissingDataPoints);
				return true;
			}
			else
			{
				return false;
			}
		}
		/// <summary>
		/// Adds a local BarSizePosition3DGroupStyle in case there is no external one. In this case also BeginPrepare is called on
		/// this newly created group style.
		/// </summary>
		/// <param name="externalGroups">Collection of external plot group styles.</param>
		/// <param name="localGroups">Collection of plot group styles of the plot item.</param>
		public static void AddLocalGroupStyle(
		 IPlotGroupStyleCollection externalGroups,
		 IPlotGroupStyleCollection localGroups)
		{
			if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(BarSizePosition3DGroupStyle)))
			{
				var styleToAdd = new BarSizePosition3DGroupStyle();
				localGroups.Add(styleToAdd);
			}
		}
 public static void AddExternalGroupStyle(IPlotGroupStyleCollection externalGroups)
 {
     // this group style is local only, so no addition is made here
 }
Example #36
0
		public static void PrepareStyle(
			IPlotGroupStyleCollection externalGroups,
			IPlotGroupStyleCollection localGroups,
			Func<int, Color> getter)
		{
			if (!externalGroups.ContainsType(MyType)
				&& null != localGroups
				&& !localGroups.ContainsType(MyType))
			{
				localGroups.Add(new VariableColorGroupStyle());
			}

			VariableColorGroupStyle grpStyle = null;
			if (externalGroups.ContainsType(typeof(SymbolSizeGroupStyle)))
				grpStyle = (VariableColorGroupStyle)externalGroups.GetPlotGroupStyle(MyType);
			else if (localGroups != null)
				grpStyle = (VariableColorGroupStyle)localGroups.GetPlotGroupStyle(MyType);

			if (grpStyle != null && getter != null && !grpStyle.IsInitialized)
				grpStyle.Initialize(getter);
		}
		public static void IntendToApply(
			IPlotGroupStyleCollection externalGroups,
			IPlotGroupStyleCollection localGroups,
			int numberOfItems,
			double minimumLogicalXValue,
			double maximumLogicalXValue,
			double minimumLogicalYValue,
			double maximumLogicalYValue
			)
		{
			if (externalGroups != null && externalGroups.ContainsType(typeof(BarSizePosition3DGroupStyle)))
			{
				((BarSizePosition3DGroupStyle)externalGroups.GetPlotGroupStyle(typeof(BarSizePosition3DGroupStyle))).IntendToApply(numberOfItems, minimumLogicalXValue, maximumLogicalXValue, minimumLogicalYValue, maximumLogicalYValue);
			}
			else if (localGroups != null && localGroups.ContainsType(typeof(BarSizePosition3DGroupStyle)))
			{
				((BarSizePosition3DGroupStyle)localGroups.GetPlotGroupStyle(typeof(BarSizePosition3DGroupStyle))).IntendToApply(numberOfItems, minimumLogicalXValue, maximumLogicalXValue, minimumLogicalYValue, maximumLogicalYValue);
			}
		}
 public static void AddExternalGroupStyle(IPlotGroupStyleCollection externalGroups)
 {
   // this group style is local only, so no addition is made here
 }
    /// <summary>
    /// Try to apply the symbol size group style. Returns true if successfull applied.
    /// </summary>
    /// <param name="externalGroups"></param>
    /// <param name="localGroups"></param>
    /// <param name="setter"></param>
    /// <returns></returns>
    public static bool ApplyStyle(
      IPlotGroupStyleCollection externalGroups,
      IPlotGroupStyleCollection localGroups,
      Int32ValueSetter setter)
    {
      SkipFrequencyGroupStyle grpStyle = null;
      IPlotGroupStyleCollection grpColl = null;
      if (externalGroups.ContainsType(typeof(SkipFrequencyGroupStyle)))
        grpColl = externalGroups;
      else if (localGroups != null && localGroups.ContainsType(typeof(SkipFrequencyGroupStyle)))
        grpColl = localGroups;

      if (null != grpColl)
      {
        grpStyle = (SkipFrequencyGroupStyle)grpColl.GetPlotGroupStyle(typeof(SkipFrequencyGroupStyle));
        grpColl.OnBeforeApplication(typeof(SkipFrequencyGroupStyle));
        setter(grpStyle.SkipFrequency);
        return true;
      }
      else
      {
        return false;
      }


    }
    public static void PrepareStyle(
      IPlotGroupStyleCollection externalGroups,
      IPlotGroupStyleCollection localGroups,
      Getter getter)
    {
      if (!externalGroups.ContainsType(typeof(ColorGroupStyle))
        && null != localGroups
        && !localGroups.ContainsType(typeof(ColorGroupStyle)))
      {
        localGroups.Add(new ColorGroupStyle());
      }

      ColorGroupStyle grpStyle = null;
      if (externalGroups.ContainsType(typeof(ColorGroupStyle)))
        grpStyle = (ColorGroupStyle)externalGroups.GetPlotGroupStyle(typeof(ColorGroupStyle));
      else if (localGroups != null)
        grpStyle = (ColorGroupStyle)localGroups.GetPlotGroupStyle(typeof(ColorGroupStyle));

      if (grpStyle != null && getter != null && !grpStyle.IsInitialized)
        grpStyle.Initialize(getter());
    }
		/// <summary>
		/// Try to apply the symbol size group style. Returns true if successfull applied.
		/// </summary>
		/// <param name="externalGroups"></param>
		/// <param name="localGroups"></param>
		/// <param name="setter"></param>
		/// <returns></returns>
		public static bool ApplyStyle(
			IPlotGroupStyleCollection externalGroups,
			IPlotGroupStyleCollection localGroups,
			Action<ILineConnectionStyle, bool> setter)
		{
			LineConnection2DGroupStyle grpStyle = null;
			IPlotGroupStyleCollection grpColl = null;
			if (externalGroups.ContainsType(typeof(LineConnection2DGroupStyle)))
				grpColl = externalGroups;
			else if (localGroups != null && localGroups.ContainsType(typeof(LineConnection2DGroupStyle)))
				grpColl = localGroups;

			if (null != grpColl)
			{
				grpStyle = (LineConnection2DGroupStyle)grpColl.GetPlotGroupStyle(typeof(LineConnection2DGroupStyle));
				grpColl.OnBeforeApplication(typeof(LineConnection2DGroupStyle));
				setter(grpStyle.LineConnectionStyle, grpStyle._connectCircular);
				return true;
			}
			else
			{
				return false;
			}
		}
Example #42
0
		/// <summary>
		/// Try to apply the symbol size group style. Returns true if successfull applied.
		/// </summary>
		/// <param name="externalGroups"></param>
		/// <param name="localGroups"></param>
		/// <param name="setter">A function of the plot style that takes the symbol size evaluation function.</param>
		/// <returns>True if successfully applied, false otherwise.</returns>
		public static bool ApplyStyle(
			IPlotGroupStyleCollection externalGroups,
			IPlotGroupStyleCollection localGroups,
			Action<Func<int, Color>> setter)
		{
			VariableColorGroupStyle grpStyle = null;
			IPlotGroupStyleCollection grpColl = null;
			if (externalGroups.ContainsType(MyType))
				grpColl = externalGroups;
			else if (localGroups != null && localGroups.ContainsType(MyType))
				grpColl = localGroups;

			if (null != grpColl)
			{
				grpStyle = (VariableColorGroupStyle)grpColl.GetPlotGroupStyle(MyType);
				grpColl.OnBeforeApplication(MyType);
				setter(grpStyle._colorForIndex);
				return true;
			}
			else
			{
				return false;
			}
		}
 public static void AddExternalGroupStyle(IPlotGroupStyleCollection externalGroups)
 {
   if (PlotGroupStyle.ShouldAddExternalGroupStyle(externalGroups, typeof(ColorGroupStyle)))
   {
     ColorGroupStyle gstyle = new ColorGroupStyle();
     gstyle.IsStepEnabled = true;
     externalGroups.Add(gstyle);
   }
 }
 public static void AddLocalGroupStyle(
   IPlotGroupStyleCollection externalGroups,
   IPlotGroupStyleCollection localGroups)
 {
   if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, typeof(ColorGroupStyle)))
     localGroups.Add(new ColorGroupStyle());
 }
Example #45
0
		/// <summary>
		/// If neccessary, adds this group style to localGroups.
		/// </summary>
		/// <param name="externalGroups">External group styles.</param>
		/// <param name="localGroups">Local group styles.</param>
		public static void AddLocalGroupStyle(
		 IPlotGroupStyleCollection externalGroups,
		 IPlotGroupStyleCollection localGroups)
		{
			if (PlotGroupStyle.ShouldAddLocalGroupStyle(externalGroups, localGroups, MyType))
				localGroups.Add(new VariableColorGroupStyle());
		}
    public static void ApplyStyle(
      IPlotGroupStyleCollection externalGroups,
      IPlotGroupStyleCollection localGroups,
      Setter setter)
    {
      ColorGroupStyle grpStyle = null;
      IPlotGroupStyleCollection grpColl = null;
      if (externalGroups.ContainsType(typeof(ColorGroupStyle)))
        grpColl = externalGroups;
      else if (localGroups != null && localGroups.ContainsType(typeof(ColorGroupStyle)))
        grpColl = localGroups;

      if (null != grpColl)
      {
        grpStyle = (ColorGroupStyle)grpColl.GetPlotGroupStyle(typeof(ColorGroupStyle));
        grpColl.OnBeforeApplication(typeof(ColorGroupStyle));
        setter(grpStyle.Color);
      }
    }
		/// <summary>
		/// Prepares the style.
		/// </summary>
		/// <param name="externalGroups">The external groups.</param>
		/// <param name="localGroups">The local groups.</param>
		/// <param name="getter">The getter function. Item1 of the tuple is the line connection style, Item2 of the tuple is the ConnectCircular flag.</param>
		public static void PrepareStyle(
			IPlotGroupStyleCollection externalGroups,
			IPlotGroupStyleCollection localGroups,
			Func<Tuple<ILineConnectionStyle, bool>> getter)
		{
			if (!externalGroups.ContainsType(typeof(LineConnection2DGroupStyle))
				&& null != localGroups
				&& !localGroups.ContainsType(typeof(LineConnection2DGroupStyle)))
			{
				localGroups.Add(new LineConnection2DGroupStyle());
			}

			LineConnection2DGroupStyle grpStyle = null;
			if (externalGroups.ContainsType(typeof(LineConnection2DGroupStyle)))
				grpStyle = (LineConnection2DGroupStyle)externalGroups.GetPlotGroupStyle(typeof(LineConnection2DGroupStyle));
			else if (localGroups != null)
				grpStyle = (LineConnection2DGroupStyle)localGroups.GetPlotGroupStyle(typeof(LineConnection2DGroupStyle));

			if (grpStyle != null && getter != null && !grpStyle.IsInitialized)
			{
				var data = getter();
				grpStyle.Initialize(data.Item1, data.Item2);
			}
		}