Commit some stuff I had implemented in my SVN tree.
[mono.git] / mcs / class / System.Windows.Forms.DataVisualization / System.Windows.Forms.DataVisualization.Charting / Axis.cs
1 //
2 // Authors:
3 // Jonathan Pobst (monkey@jpobst.com)
4 //
5 // Copyright (C) 2009 Novell, Inc (http://www.novell.com) 
6 //
7 // Permission is hereby granted, free of charge, to any person obtaining
8 // a copy of this software and associated documentation files (the
9 // "Software"), to deal in the Software without restriction, including
10 // without limitation the rights to use, copy, modify, merge, publish,
11 // distribute, sublicense, and/or sell copies of the Software, and to
12 // permit persons to whom the Software is furnished to do so, subject to
13 // the following conditions:
14 // 
15 // The above copyright notice and this permission notice shall be
16 // included in all copies or substantial portions of the Software.
17 // 
18 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
21 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
22 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
23 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
24 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25
26 using System;
27 using System.Drawing;
28
29 namespace System.Windows.Forms.DataVisualization.Charting
30 {
31         public class Axis : ChartNamedElement, IDisposable
32         {
33                 #region Constructors
34                 public Axis (ChartArea chartArea, AxisName axisTypeName)
35                 {
36                 }
37
38                 public Axis ()
39                 {
40                 }
41                 #endregion
42
43                 #region Public Properties
44                 public AxisArrowStyle ArrowStyle { get; set; }
45                 public virtual AxisName AxisName { get; }
46                 public virtual double Crossing { get; set; }
47                 public CustomLabelCollection CustomLabels { get; }
48                 public AxisEnabled Enabled { get; set; }
49                 public Color InterlacedColor { get; set; }
50                 public double Interval { get; set; }
51                 public IntervalAutoMode IntervalAutoMode { get; set; }
52                 public double IntervalOffset { get; set; }
53                 public DateTimeIntervalType IntervalOffsetType { get; set; }
54                 public DateTimeIntervalType IntervalType { get; set; }
55                 public bool IsInterlaced { get; set; }
56                 public bool IsLabelAutoFit { get; set; }
57                 public bool IsLogarithmic { get; set; }
58                 public bool IsMarginVisible { get; set; }
59                 public virtual bool IsMarksNextToAxis { get; set; }
60                 public bool IsReversed { get; set; }
61                 public bool IsStartedFromZero { get; set; }
62                 public int LabelAutoFitMaxFontSize { get; set; }
63                 public int LabelAutoFitMinFontSize { get; set; }
64                 public LabelAutoFitStyles LabelAutoFitStyle { get; set; }
65                 public LabelStyle LabelStyle { get; set; }
66                 public Color LineColor { get; set; }
67                 public ChartDashStyle LineDashStyle { get; set; }
68                 public int LineWidth { get; set; }
69                 public double LogarithmBase { get; set; }
70                 public Grid MajorGrid { get; set; }
71                 public TickMark MajorTickMark { get; set; }
72                 public double Maximum { get; set; }
73                 public float MaximumAutoSize { get; set; }
74                 public double Minimum { get; set; }
75                 public Grid MinorGrid { get; set; }
76                 public TickMark MinorTickMark { get; set; }
77
78                 public override string Name {
79                         get { return base.Name; }
80                         set { base.Name = value; }
81                 }
82
83                 public virtual AxisScaleBreakStyle ScaleBreakStyle { get; set; }
84                 public AxisScaleView ScaleView { get; set; }
85                 public AxisScrollBar ScrollBar { get; set; }
86                 public StripLinesCollection StripLines { get; }
87                 public TextOrientation TextOrientation { get; set; }
88                 public string Title { get; set; }
89                 public StringAlignment TitleAlignment { get; set; }
90                 public Font TitleFont { get; set; }
91                 public Color TitleForeColor { get; set; }
92                 public string ToolTip { get; set; }
93                 #endregion
94
95                 #region Public Methods
96                 public double GetPosition (double axisValue)
97                 {
98                         throw new NotImplementedException ();
99                 }
100
101                 public double PixelPositionToValue (double position)
102                 {
103                         throw new NotImplementedException ();
104                 }
105
106                 public double PositionToValue (double position)
107                 {
108                         throw new NotImplementedException ();
109                 }
110
111                 public void RoundAxisValues ()
112                 {
113                         throw new NotImplementedException ();
114                 }
115
116                 public double ValueToPixelPosition (double axisValue)
117                 {
118                         throw new NotImplementedException ();
119                 }
120
121                 public double ValueToPosition (double axisValue)
122                 {
123                         throw new NotImplementedException ();
124                 }
125                 #endregion
126         }
127 }