public CustomLabel(double fromPosition, double toPosition, string text, int labelRow, LabelMark mark, GridTicks gridTick)
 {
     from          = fromPosition;
     to            = toPosition;
     this.text     = text;
     RowIndex      = labelRow;
     labelMark     = mark;
     this.gridTick = gridTick;
 }
 public CustomLabel(double fromPosition, double toPosition, string text, LabelRow row, LabelMark mark)
 {
     from      = fromPosition;
     to        = toPosition;
     this.text = text;
     RowIndex  = ((row != 0) ? 1 : 0);
     labelMark = mark;
     gridTick  = GridTicks.None;
 }
 public CustomLabel(double fromPosition, double toPosition, string text, LabelRow row, LabelMark mark, GridTicks gridTick)
 {
     this.from      = fromPosition;
     this.to        = toPosition;
     this.text      = text;
     this.RowIndex  = ((row != 0) ? 1 : 0);
     this.labelMark = mark;
     this.gridTick  = gridTick;
 }
 public CustomLabel(double fromPosition, double toPosition, string text, int labelRow, LabelMark mark)
 {
     this.from      = fromPosition;
     this.to        = toPosition;
     this.text      = text;
     this.RowIndex  = labelRow;
     this.labelMark = mark;
     this.gridTick  = GridTicks.None;
 }
		public void Add(double labelsStep, DateTimeIntervalType intervalType, string format, int rowIndex, LabelMark mark)
		{
			Add(labelsStep, intervalType, 0.0, 0.0, format, rowIndex, mark);
			Invalidate();
		}
		public void Add(double labelsStep, DateTimeIntervalType intervalType, double min, double max, string format, int rowIndex, LabelMark mark)
		{
			if (min == 0.0 && max == 0.0 && axis != null && !double.IsNaN(axis.Minimum) && !double.IsNaN(axis.Maximum))
			{
				min = axis.Minimum;
				max = axis.Maximum;
			}
			double num = Math.Min(min, max);
			double num2 = Math.Max(min, max);
			double num3 = num;
			double num4 = 0.0;
			while (num3 < num2)
			{
				switch (intervalType)
				{
				case DateTimeIntervalType.Number:
					num4 = num3 + labelsStep;
					break;
				case DateTimeIntervalType.Milliseconds:
					num4 = DateTime.FromOADate(num3).AddMilliseconds(labelsStep).ToOADate();
					break;
				case DateTimeIntervalType.Seconds:
					num4 = DateTime.FromOADate(num3).AddSeconds(labelsStep).ToOADate();
					break;
				case DateTimeIntervalType.Minutes:
					num4 = DateTime.FromOADate(num3).AddMinutes(labelsStep).ToOADate();
					break;
				case DateTimeIntervalType.Hours:
					num4 = DateTime.FromOADate(num3).AddHours(labelsStep).ToOADate();
					break;
				case DateTimeIntervalType.Days:
					num4 = DateTime.FromOADate(num3).AddDays(labelsStep).ToOADate();
					break;
				case DateTimeIntervalType.Weeks:
					num4 = DateTime.FromOADate(num3).AddDays(7.0 * labelsStep).ToOADate();
					break;
				case DateTimeIntervalType.Months:
					num4 = DateTime.FromOADate(num3).AddMonths((int)labelsStep).ToOADate();
					break;
				case DateTimeIntervalType.Years:
					num4 = DateTime.FromOADate(num3).AddYears((int)labelsStep).ToOADate();
					break;
				default:
					throw new ArgumentException(SR.ExceptionAxisLabelsIntervalTypeUnsupported(intervalType.ToString()));
				}
				if (num4 > num2)
				{
					num4 = num2;
				}
				ChartValueTypes valueType = ChartValueTypes.Double;
				if (intervalType != DateTimeIntervalType.Number)
				{
					valueType = ((axis.GetAxisValuesType() != ChartValueTypes.DateTimeOffset) ? ChartValueTypes.DateTime : ChartValueTypes.DateTimeOffset);
				}
				string text = ValueConverter.FormatValue(axis.chart, axis, num3 + (num4 - num3) / 2.0, format, valueType, ChartElementType.AxisLabels);
				CustomLabel customLabel = new CustomLabel(num3, num4, text, rowIndex, mark);
				customLabel.axis = axis;
				array.Add(customLabel);
				num3 = num4;
			}
			Invalidate();
		}
		public void Add(double labelsStep, DateTimeIntervalType intervalType, double min, double max, string format, LabelRow row, LabelMark mark)
		{
			Add(labelsStep, intervalType, min, max, format, (row != 0) ? 1 : 0, mark);
		}