Explorar o código

Commit some stuff I had implemented in my SVN tree.

Jonathan Pobst %!s(int64=15) %!d(string=hai) anos
pai
achega
460b08fdb6
Modificáronse 26 ficheiros con 1003 adicións e 15 borrados
  1. 127 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/Axis.cs
  2. 34 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/AxisScaleView.cs
  3. 32 4
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/Chart.cs
  4. 2 2
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartArea.cs
  5. 55 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartArea3DStyle.cs
  6. 21 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartAreaCollection.cs
  7. 6 1
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartElement.cs
  8. 45 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartGraphics.cs
  9. 2 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartNamedElement.cs
  10. 1 1
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartNamedElementCollection.cs
  11. 51 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartPaintEventArgs.cs
  12. 79 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ElementPosition.cs
  13. 49 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/FormatNumberEventArgs.cs
  14. 58 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/Grid.cs
  15. 92 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/Margins.cs
  16. 43 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/MarkerStyle.cs
  17. 68 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/NamedImage.cs
  18. 33 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/NamedImagesCollection.cs
  19. 68 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/Point3D.cs
  20. 11 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/SeriesCollection.cs
  21. 45 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/TickMark.cs
  22. 39 0
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ToolTipEventArgs.cs
  23. 29 4
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.csproj
  24. 6 1
      mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.dll.sources
  25. 3 2
      mcs/class/System.Windows.Forms.DataVisualization/Test/Charting/Form1.Designer.cs
  26. 4 0
      mcs/class/System.Windows.Forms.DataVisualization/Test/ChartingTests.csproj

+ 127 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/Axis.cs

@@ -0,0 +1,127 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Drawing;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class Axis : ChartNamedElement, IDisposable
+	{
+		#region Constructors
+		public Axis (ChartArea chartArea, AxisName axisTypeName)
+		{
+		}
+
+		public Axis ()
+		{
+		}
+		#endregion
+
+		#region Public Properties
+		public AxisArrowStyle ArrowStyle { get; set; }
+		public virtual AxisName AxisName { get; }
+		public virtual double Crossing { get; set; }
+		public CustomLabelCollection CustomLabels { get; }
+		public AxisEnabled Enabled { get; set; }
+		public Color InterlacedColor { get; set; }
+		public double Interval { get; set; }
+		public IntervalAutoMode IntervalAutoMode { get; set; }
+		public double IntervalOffset { get; set; }
+		public DateTimeIntervalType IntervalOffsetType { get; set; }
+		public DateTimeIntervalType IntervalType { get; set; }
+		public bool IsInterlaced { get; set; }
+		public bool IsLabelAutoFit { get; set; }
+		public bool IsLogarithmic { get; set; }
+		public bool IsMarginVisible { get; set; }
+		public virtual bool IsMarksNextToAxis { get; set; }
+		public bool IsReversed { get; set; }
+		public bool IsStartedFromZero { get; set; }
+		public int LabelAutoFitMaxFontSize { get; set; }
+		public int LabelAutoFitMinFontSize { get; set; }
+		public LabelAutoFitStyles LabelAutoFitStyle { get; set; }
+		public LabelStyle LabelStyle { get; set; }
+		public Color LineColor { get; set; }
+		public ChartDashStyle LineDashStyle { get; set; }
+		public int LineWidth { get; set; }
+		public double LogarithmBase { get; set; }
+		public Grid MajorGrid { get; set; }
+		public TickMark MajorTickMark { get; set; }
+		public double Maximum { get; set; }
+		public float MaximumAutoSize { get; set; }
+		public double Minimum { get; set; }
+		public Grid MinorGrid { get; set; }
+		public TickMark MinorTickMark { get; set; }
+
+		public override string Name {
+			get { return base.Name; }
+			set { base.Name = value; }
+		}
+
+		public virtual AxisScaleBreakStyle ScaleBreakStyle { get; set; }
+		public AxisScaleView ScaleView { get; set; }
+		public AxisScrollBar ScrollBar { get; set; }
+		public StripLinesCollection StripLines { get; }
+		public TextOrientation TextOrientation { get; set; }
+		public string Title { get; set; }
+		public StringAlignment TitleAlignment { get; set; }
+		public Font TitleFont { get; set; }
+		public Color TitleForeColor { get; set; }
+		public string ToolTip { get; set; }
+		#endregion
+
+		#region Public Methods
+		public double GetPosition (double axisValue)
+		{
+			throw new NotImplementedException ();
+		}
+
+		public double PixelPositionToValue (double position)
+		{
+			throw new NotImplementedException ();
+		}
+
+		public double PositionToValue (double position)
+		{
+			throw new NotImplementedException ();
+		}
+
+		public void RoundAxisValues ()
+		{
+			throw new NotImplementedException ();
+		}
+
+		public double ValueToPixelPosition (double axisValue)
+		{
+			throw new NotImplementedException ();
+		}
+
+		public double ValueToPosition (double axisValue)
+		{
+			throw new NotImplementedException ();
+		}
+		#endregion
+	}
+}

+ 34 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/AxisScaleView.cs

@@ -0,0 +1,34 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Drawing;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class AxisScaleView
+	{
+	}
+}

+ 32 - 4
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/Chart.cs

@@ -34,23 +34,51 @@ namespace System.Windows.Forms.DataVisualization.Charting
 		public Chart ()
 		{
 			BackColor = Color.White;
-			ChartAreas = new List<ChartArea> ();
-			Series = new List<Series> ();
+			ChartAreas = new ChartAreaCollection ();
+			Series = new SeriesCollection ();
 		}
 
-		public List<ChartArea> ChartAreas { get; private set; }
-		public List<Series> Series { get; private set; }
+		public ChartAreaCollection ChartAreas { get; private set; }
+		public SeriesCollection Series { get; private set; }
 
 		#region Protected Properties
 		protected override void OnPaint (PaintEventArgs e)
 		{
 			base.OnPaint (e);
+
+			ChartGraphics g = new ChartGraphics (e.Graphics);
+
+			PaintElement (g, this, new ElementPosition (0, 0, 100, 100));
+
+			foreach (var area in ChartAreas)
+				PaintElement (g, area, new ElementPosition (9.299009f, 6.15f, 86.12599f, 81.1875f));
+
+			foreach (var series in Series)
+				PaintElement (g, series, new ElementPosition (9.299009f, 6.15f, 86.12599f, 81.1875f));
 		}
 
 		protected override void OnPaintBackground (PaintEventArgs pevent)
 		{
 			base.OnPaintBackground (pevent);
 		}
+
+		protected virtual void OnPostPaint (ChartPaintEventArgs e)
+		{
+		}
+
+		protected virtual void OnPrePaint (ChartPaintEventArgs e)
+		{
+		}
+		#endregion
+
+		#region Private Methods
+		private void PaintElement (ChartGraphics g, object element, ElementPosition position)
+		{
+			ChartPaintEventArgs e = new ChartPaintEventArgs (this, element, g, position);
+
+			OnPrePaint (e);
+			OnPostPaint (e);
+		}
 		#endregion
 	}
 }

+ 2 - 2
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartArea.cs

@@ -27,8 +27,8 @@ using System;
 
 namespace System.Windows.Forms.DataVisualization.Charting
 {
-	public class ChartArea
+	public class ChartArea : ChartNamedElement
 	{
-		public string Name { get; set; }
+		public override string Name { get; set; }
 	}
 }

+ 55 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartArea3DStyle.cs

@@ -0,0 +1,55 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class ChartArea3DStyle
+	{
+		#region Constructors
+		public ChartArea3DStyle (ChartArea chartArea)
+		{
+		}
+
+		public ChartArea3DStyle ()
+		{
+		}
+		#endregion
+
+		#region Public Properties
+		public bool Enable3D { get; set; }
+		public int Inclination { get; set; }
+		public bool IsClustered { get; set; }
+		public bool IsRightAngleAxes { get; set; }
+		public LightStyle LightStyle { get; set; }
+		public int Perspective { get; set; }
+		public int PointDepth { get; set; }
+		public int PointGapDepth { get; set; }
+		public int Rotation { get; set; }
+		public int WallWidth { get; set; }
+		#endregion
+	}
+}

+ 21 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartAreaCollection.cs

@@ -0,0 +1,21 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class ChartAreaCollection : ChartNamedElementCollection<ChartArea>
+	{
+		#region Public Methods
+		public ChartArea Add (string name)
+		{
+			ChartArea ca = new ChartArea ();
+			ca.Name = name;
+
+			Add (ca);
+			return ca;
+		}
+		#endregion
+	}
+}

+ 6 - 1
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartElement.cs

@@ -24,10 +24,11 @@
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 using System;
+using System.ComponentModel;
 
 namespace System.Windows.Forms.DataVisualization.Charting
 {
-	public abstract class ChartElement
+	public abstract class ChartElement : IDisposable
 	{
 		#region Constructors
 		protected ChartElement ()
@@ -36,6 +37,7 @@ namespace System.Windows.Forms.DataVisualization.Charting
 		#endregion
 
 		#region Public Properties
+		[DefaultValue (null)]
 		public object Tag { get; set; }
 		#endregion
 
@@ -56,6 +58,9 @@ namespace System.Windows.Forms.DataVisualization.Charting
 
 		public override string ToString ()
 		{
+			if (this is ChartNamedElement)
+				return string.Format ("{0}-{1}", GetType ().Name, (this as ChartNamedElement).Name);
+
 			return GetType ().Name;
 		}
 		#endregion

+ 45 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartGraphics.cs

@@ -0,0 +1,45 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class ChartGraphics : ChartElement, IDisposable
+	{
+		#region Constructors
+		internal ChartGraphics (Graphics graphics)
+		{
+			Graphics = graphics;
+		}
+		#endregion
+
+		#region Public Properties
+		public Graphics Graphics { get; set; }
+		#endregion
+	}
+}

+ 2 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartNamedElement.cs

@@ -24,6 +24,7 @@
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 using System;
+using System.ComponentModel;
 
 namespace System.Windows.Forms.DataVisualization.Charting
 {
@@ -41,6 +42,7 @@ namespace System.Windows.Forms.DataVisualization.Charting
 		#endregion
 
 		#region Public Properties
+		[DefaultValue ("")]
 		public virtual string Name { get; set; }
 		#endregion
 	}

+ 1 - 1
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartNamedElementCollection.cs

@@ -27,7 +27,7 @@ using System;
 
 namespace System.Windows.Forms.DataVisualization.Charting
 {
-	public class ChartNamedElementCollection<T> where T : ChartNamedElement
+	public class ChartNamedElementCollection<T> : ChartElementCollection<T> where T : ChartNamedElement
 	{
 	}
 }

+ 51 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ChartPaintEventArgs.cs

@@ -0,0 +1,51 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class ChartPaintEventArgs : EventArgs
+	{
+		#region Constructors
+		internal ChartPaintEventArgs (Chart chart, object chartElement, ChartGraphics chartGraphics, ElementPosition position)
+		{
+			Chart = chart;
+			ChartElement = chartElement;
+			ChartGraphics = chartGraphics;
+			Position = position;
+		}
+		#endregion
+
+		#region Public Properties
+		public Chart Chart { get; private set; }
+		public object ChartElement { get; private set; }
+		public ChartGraphics ChartGraphics { get; private set; }
+		public ElementPosition Position { get; private set; }
+		#endregion
+	}
+}

+ 79 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ElementPosition.cs

@@ -0,0 +1,79 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class ElementPosition : ChartElement
+	{
+		#region Constructors
+		public ElementPosition ()
+		{
+		}
+
+		public ElementPosition (float x, float y, float width, float height)
+		{
+			X = x;
+			Y = y;
+			Width = width;
+			Height = height;
+		}
+		#endregion
+
+		#region Public Properties
+		public bool Auto { get; set; }
+		public float Bottom { get { return Y + Height; }  }
+		public float Height { get; set; }
+		public float Right { get { return X + Width; } }
+		public SizeF Size { get { return new SizeF (Width, Height); } }
+		public float Width { get; set; }
+		public float X { get; set; }
+		public float Y { get; set; }
+		#endregion
+
+		#region Public Methods
+		public void FromRectangleF (RectangleF rect)
+		{
+			X = rect.X;
+			Y = rect.Y;
+			Width = rect.Width;
+			Height = rect.Height;
+		}
+
+		public RectangleF ToRectangleF ()
+		{
+			return new RectangleF (X, Y, Width, Height);
+		}
+		#endregion
+
+		public override string ToString ()
+		{
+			return string.Format ("{0}, {1}, {2}, {3}", X, Y, Width, Height);
+		}
+	}
+}

+ 49 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/FormatNumberEventArgs.cs

@@ -0,0 +1,49 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.ComponentModel;
+using System.Drawing;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class FormatNumberEventArgs : EventArgs
+	{
+		#region Constructors
+		internal FormatNumberEventArgs ()
+		{
+		}
+		#endregion
+
+		#region Public Properties
+		public ChartElementType ElementType { get; private set; }
+		public string Format { get; private set; }
+		public string LocalizedValue { get; set; }
+		public object SenderTag { get; private set; }
+		public double Value { get; private set; }
+		public ChartValueType ValueType { get; private set; }
+		#endregion
+	}
+}

+ 58 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/Grid.cs

@@ -0,0 +1,58 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Drawing;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class Grid
+	{
+		#region Constructos
+		public Grid ()
+		{
+			Enabled = true;
+			Interval = 0d;
+			IntervalOffset = 0d;
+			IntervalOffsetType = DateTimeIntervalType.Auto;
+			IntervalType = DateTimeIntervalType.Auto;
+			LineColor = Color.Black;
+			LineDashStyle = ChartDashStyle.Solid;
+			LineWidth = 1;
+		}
+		#endregion
+
+		#region Public Properties
+		public bool Enabled { get; set; }
+		public double Interval { get; set; }
+		public double IntervalOffset { get; set; }
+		public DateTimeIntervalType IntervalOffsetType { get; set; }
+		public DateTimeIntervalType IntervalType { get; set; }
+		public Color LineColor { get; set; }
+		public ChartDashStyle LineDashStyle { get; set; }
+		public int LineWidth { get; set; }
+		#endregion
+	}
+}

+ 92 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/Margins.cs

@@ -0,0 +1,92 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.ComponentModel;
+using System.Drawing;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class Margins
+	{
+		#region Constructors
+		public Margins ()
+		{
+		}
+
+		public Margins (int top, int bottom, int left, int right)
+		{
+			Bottom = bottom;
+			Left = left;
+			Right = right;
+			Top = top;
+		}
+		#endregion
+
+		#region Public Properties
+		[DefaultValue (0)]
+		public int Bottom { get; set; }
+
+		[DefaultValue (0)]
+		public int Left { get; set; }
+
+		[DefaultValue (0)]
+		public int Right { get; set; }
+
+		[DefaultValue (0)]
+		public int Top { get; set; }
+		#endregion
+
+		#region Public Methods
+		public override bool Equals (object obj)
+		{
+			Margins a = (Margins)obj;
+			return a.Bottom == Bottom && a.Left == Left && a.Right == Right && a.Top == Top;
+		}
+
+		[MonoTODO ()]
+		public override int GetHashCode ()
+		{
+			return base.GetHashCode ();
+		}
+
+		public bool IsEmpty ()
+		{
+			return Bottom == 0 && Left == 0 && Right == 0 && Top == 0;
+		}
+
+		public RectangleF ToRectangleF ()
+		{
+			return new RectangleF (Left, Top, Right, Bottom);
+		}
+
+		[MonoTODO ()]
+		public override string ToString ()
+		{
+			return base.ToString ();
+		}
+		#endregion
+	}
+}

+ 43 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/MarkerStyle.cs

@@ -0,0 +1,43 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public enum MarkerStyle
+	{
+		None = 0,
+		Square = 1,
+		Circle = 2,
+		Diamond = 3,
+		Triangle = 4,
+		Cross = 5,
+		Star4 = 6,
+		Star5 = 7,
+		Star6 = 8,
+		Star10 = 9
+	}
+}

+ 68 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/NamedImage.cs

@@ -0,0 +1,68 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.ComponentModel;
+using System.Drawing;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	[DefaultProperty ("Name")]
+	public class NamedImage : ChartNamedElement, IDisposable
+	{
+		private string name;
+
+		#region Constructors
+		public NamedImage ()
+		{
+		}
+
+		public NamedImage (string name, Image image)
+		{
+		}
+		#endregion
+
+		#region Public Properties
+		[Bindable (false)]
+		public Image Image { get; set; }
+
+		[Bindable (false)]
+		public override string Name {
+			get { return name; }
+			set { name = value; }
+		}
+		#endregion
+
+		#region Protected Methods
+		protected override void Dispose (bool disposing)
+		{
+			base.Dispose (disposing);
+
+			if (Image != null)
+				Image.Dispose ();
+		}
+		#endregion
+	}
+}

+ 33 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/NamedImagesCollection.cs

@@ -0,0 +1,33 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class NamedImagesCollection : ChartNamedElementCollection<NamedImage>
+	{
+	}
+}

+ 68 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/Point3D.cs

@@ -0,0 +1,68 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Drawing;
+using System.ComponentModel;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class Point3D
+	{
+		#region Constructors
+		public Point3D ()
+		{
+		}
+
+		public Point3D (float x, float y, float z)
+		{
+			X = x;
+			Y = y;
+			Z = z;
+		}
+		#endregion
+
+		#region Public Properties
+		[Bindable (false)]
+		[DefaultValue ("0f, 0f")]
+		public PointF PointF {
+			get { return new PointF (X, Y); }
+			set { X = value.X; Y = value.Y; }
+		}
+
+		[Bindable (false)]
+		[DefaultValue (0f)]
+		public float X { get; set; }
+
+		[Bindable (false)]
+		[DefaultValue (0f)]
+		public float Y { get; set; }
+
+		[Bindable (false)]
+		[DefaultValue (0f)]
+		public float Z { get; set; }
+		#endregion
+	}
+}

+ 11 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/SeriesCollection.cs

@@ -29,5 +29,16 @@ namespace System.Windows.Forms.DataVisualization.Charting
 {
 	public class SeriesCollection : ChartNamedElementCollection<Series>
 	{
+		#region Public Methods
+		public Series Add (string name)
+		{
+			Series s = new Series ();
+			s.Name = name;
+
+			this.Add (s);
+
+			return s;
+		}
+		#endregion
 	}
 }

+ 45 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/TickMark.cs

@@ -0,0 +1,45 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class TickMark : Grid
+	{
+		#region Constructors
+		public TickMark ()
+		{
+			Size = 1f;
+			TickMarkStyle = TickMarkStyle.OutsideArea;
+		}
+		#endregion
+
+		#region Public Properties
+		public float Size { get; set; }
+		public TickMarkStyle TickMarkStyle { get; set; }
+		#endregion
+	}
+}

+ 39 - 0
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.Charting/ToolTipEventArgs.cs

@@ -0,0 +1,39 @@
+//
+// Authors:
+// Jonathan Pobst ([email protected])
+//
+// Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Drawing;
+
+namespace System.Windows.Forms.DataVisualization.Charting
+{
+	public class ToolTipEventArgs : EventArgs
+	{
+		#region Constructors
+		//public ToolTipEventArgs (int x, int y, string text, HitTestResult result)
+		//{
+		//}
+		#endregion
+	}
+}

+ 29 - 4
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.csproj

@@ -18,7 +18,7 @@
     <DebugType>full</DebugType>
     <Optimize>false</Optimize>
     <OutputPath>bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <DefineConstants>TRACE;DEBUG;NET_4_0</DefineConstants>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
   </PropertyGroup>
@@ -26,12 +26,16 @@
     <DebugType>pdbonly</DebugType>
     <Optimize>true</Optimize>
     <OutputPath>bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
+    <DefineConstants>TRACE;NET_4_0</DefineConstants>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
   </PropertyGroup>
   <ItemGroup>
+    <Reference Include="Accessibility">
+      <EmbedInteropTypes>True</EmbedInteropTypes>
+    </Reference>
     <Reference Include="System" />
+    <Reference Include="System.configuration" />
     <Reference Include="System.Core" />
     <Reference Include="System.Drawing" />
     <Reference Include="System.Windows.Forms" />
@@ -42,8 +46,17 @@
     <Reference Include="System.Xml" />
   </ItemGroup>
   <ItemGroup>
+    <Compile Include="Assembly\AssemblyInfo.cs" />
     <Compile Include="common\MonoTODOAttribute.cs" />
-    <Compile Include="System.Windows.Forms.DataVisualization.Charting\AnchorStyle.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\Axis.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\AxisScaleView.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartArea3DStyle.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartGraphics.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartPaintEventArgs.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\ElementPosition.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\FormatNumberEventArgs.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\Margins.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\MarkerStyle.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\AnnotationPathPoint.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\AnnotationPathPointCollection.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\AnovaResult.cs" />
@@ -62,11 +75,11 @@
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\Chart.cs">
       <SubType>Component</SubType>
     </Compile>
-    <Compile Include="Properties\AssemblyInfo.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartArea.cs">
       <SubType>Code</SubType>
     </Compile>
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\AntiAliasingStyles.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartAreaCollection.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartColorPalette.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartDashStyle.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartElement.cs" />
@@ -88,6 +101,7 @@
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\Docking.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\FinancialFormula.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\GradientStyle.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\Grid.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\GridTickTypes.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\IDataPointFilter.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\IntervalAutoMode.cs" />
@@ -106,6 +120,9 @@
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\LegendTableStyle.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\LightStyle.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\LineAnchorCapStyle.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\NamedImage.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\NamedImagesCollection.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\Point3D.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\PointSortOrder.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\ScrollBarButtonStyles.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\ScrollBarButtonType.cs" />
@@ -121,7 +138,15 @@
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\TextAntiAliasingQuality.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\TextOrientation.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\TextStyle.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\TickMark.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\TickMarkStyle.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\ToolTipEventArgs.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <Folder Include="Properties\" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="common\Consts.cs" />
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 

+ 6 - 1
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization.dll.sources

@@ -1,7 +1,6 @@
 ../../build/common/Consts.cs
 ../../build/common/MonoTODOAttribute.cs
 Assembly/AssemblyInfo.cs
-System.Windows.Forms.DataVisualization.Charting/AnchorStyle.cs
 System.Windows.Forms.DataVisualization.Charting/AnnotationPathPoint.cs
 System.Windows.Forms.DataVisualization.Charting/AnnotationPathPointCollection.cs
 System.Windows.Forms.DataVisualization.Charting/AnovaResult.cs
@@ -40,6 +39,7 @@ System.Windows.Forms.DataVisualization.Charting/DateRangeType.cs
 System.Windows.Forms.DataVisualization.Charting/DateTimeIntervalType.cs
 System.Windows.Forms.DataVisualization.Charting/Docking.cs
 System.Windows.Forms.DataVisualization.Charting/FinancialFormula.cs
+System.Windows.Forms.DataVisualization.Charting/FormatNumberEventArgs.cs
 System.Windows.Forms.DataVisualization.Charting/GradientStyle.cs
 System.Windows.Forms.DataVisualization.Charting/GridTickTypes.cs
 System.Windows.Forms.DataVisualization.Charting/IDataPointFilter.cs
@@ -59,7 +59,12 @@ System.Windows.Forms.DataVisualization.Charting/LegendStyle.cs
 System.Windows.Forms.DataVisualization.Charting/LegendTableStyle.cs
 System.Windows.Forms.DataVisualization.Charting/LightStyle.cs
 System.Windows.Forms.DataVisualization.Charting/LineAnchorCapStyle.cs
+System.Windows.Forms.DataVisualization.Charting/Margins.cs
+System.Windows.Forms.DataVisualization.Charting/MarkerStyle.cs
+System.Windows.Forms.DataVisualization.Charting/NamedImage.cs
+System.Windows.Forms.DataVisualization.Charting/NamedImagesCollection.cs
 System.Windows.Forms.DataVisualization.Charting/PointSortOrder.cs
+System.Windows.Forms.DataVisualization.Charting/Point3D.cs
 System.Windows.Forms.DataVisualization.Charting/ScrollBarButtonStyles.cs
 System.Windows.Forms.DataVisualization.Charting/ScrollBarButtonType.cs
 System.Windows.Forms.DataVisualization.Charting/ScrollType.cs

+ 3 - 2
mcs/class/System.Windows.Forms.DataVisualization/Test/Charting/Form1.Designer.cs

@@ -33,7 +33,7 @@
 			System.Windows.Forms.DataVisualization.Charting.DataPoint dataPoint2 = new System.Windows.Forms.DataVisualization.Charting.DataPoint (0D, 9D);
 			System.Windows.Forms.DataVisualization.Charting.DataPoint dataPoint3 = new System.Windows.Forms.DataVisualization.Charting.DataPoint (0D, 3D);
 			System.Windows.Forms.DataVisualization.Charting.DataPoint dataPoint4 = new System.Windows.Forms.DataVisualization.Charting.DataPoint (0D, 5D);
-			this.chart1 = new MyChart ();
+			this.chart1 = new WindowsFormsApplication1.Form1.MyChart ();
 			this.SuspendLayout ();
 			// 
 			// chart1
@@ -68,7 +68,8 @@
 
 		#endregion
 
-		private System.Windows.Forms.DataVisualization.Charting.Chart chart1;
+		private Form1.MyChart chart1;
+
 	}
 }
 

+ 4 - 0
mcs/class/System.Windows.Forms.DataVisualization/Test/ChartingTests.csproj

@@ -51,8 +51,12 @@
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\AnovaResultTest.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\ArrowAnnotationTest.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\AxisScaleBreakStyleTest.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartElementCollectionTest.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartElementTest.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\ChartNamedElementCollectionTest.cs" />
     <Compile Include="System.Windows.Forms.DataVisualization.Charting\DataPointTest.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\GridTest.cs" />
+    <Compile Include="System.Windows.Forms.DataVisualization.Charting\TickMarkTest.cs" />
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it.