Skip to content

Commit 86ce4b2

Browse files
authored
Merge pull request #2424 from Miepee/calendar-doc
Update Calendar documentation
2 parents 7e2ccd8 + 0badf0a commit 86ce4b2

File tree

1 file changed

+31
-49
lines changed

1 file changed

+31
-49
lines changed

src/Eto/Forms/Controls/Calendar.cs

+31-49
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,33 @@
11
using System;
2-
using System.Collections;
3-
using System.Collections.Generic;
42

53
namespace Eto.Forms
64
{
75
/// <summary>
8-
/// Mode for the <see cref="Calendar"/> control
6+
/// Possible modes for the <see cref="Calendar"/> control.
97
/// </summary>
108
public enum CalendarMode
119
{
1210
/// <summary>
13-
/// Calendar allows only a single date to be selected
11+
/// Calendar allows only a single date to be selected.
1412
/// </summary>
1513
Single,
1614

1715
/// <summary>
18-
/// Can select a range of dates. In some cases two calendars will be shown to select the start and end dates of the range.
16+
/// Can select a range of dates. In some platforms, two calendars will be shown to select the start and end dates of the range.
1917
/// </summary>
2018
Range
2119
}
2220

2321
/// <summary>
24-
/// Control to show a calendar that the user can select either a single date or range of dates.
22+
/// Control to show a Calendar, where the user can select either a single date or a range of dates.
2523
/// </summary>
24+
/// <example>
25+
/// Here is an example for creating a single date calendar and a calendar with a range of dates.
26+
/// <code>
27+
/// var singleDateCalendar = new Calendar();
28+
/// var rangeDateCalendar = new Calendar() { Mode = CalendarMode.Range };
29+
/// </code>
30+
/// </example>
2631
[Handler(typeof(IHandler))]
2732
public class Calendar : Control
2833
{
@@ -79,7 +84,7 @@ protected virtual void OnSelectedRangeChanged(EventArgs e)
7984
#endregion
8085

8186
/// <summary>
82-
/// Gets or sets the minimum date entered
87+
/// Gets or sets the minimum date entered.
8388
/// </summary>
8489
/// <value>The minimum date.</value>
8590
public DateTime MinDate
@@ -89,7 +94,7 @@ public DateTime MinDate
8994
}
9095

9196
/// <summary>
92-
/// Gets or sets the maximum date entered
97+
/// Gets or sets the maximum date entered.
9398
/// </summary>
9499
/// <value>The maximum date.</value>
95100
public DateTime MaxDate
@@ -101,6 +106,8 @@ public DateTime MaxDate
101106
/// <summary>
102107
/// Gets or sets the selected date.
103108
/// </summary>
109+
/// <remarks>If <see cref="Mode"/> is <see cref="CalendarMode.Range"/>, then this will be most recent date the user selected.
110+
/// To get the selected range, use <see cref="SelectedRange"/> instead.</remarks>
104111
/// <value>The selected date.</value>
105112
public DateTime SelectedDate
106113
{
@@ -112,7 +119,7 @@ public DateTime SelectedDate
112119
/// Gets or sets the selected range.
113120
/// </summary>
114121
/// <remarks>
115-
/// The SelectedRange will have the same start/end dates when <see cref="Mode"/> is <see cref="CalendarMode.Single"/>.
122+
/// The <see cref="SelectedRange"/> will have the same start/end dates when <see cref="Mode"/> is <see cref="CalendarMode.Single"/>.
116123
/// </remarks>
117124
/// <value>The selected range.</value>
118125
public Range<DateTime> SelectedRange
@@ -122,9 +129,9 @@ public Range<DateTime> SelectedRange
122129
}
123130

124131
/// <summary>
125-
/// Gets or sets the mode of the calendar.
132+
/// Gets or sets the mode of the <see cref="Calendar"/>.
126133
/// </summary>
127-
/// <value>The calendar mode.</value>
134+
/// <value>The mode of the <see cref="Calendar"/>.</value>
128135
public CalendarMode Mode
129136
{
130137
get { return Handler.Mode; }
@@ -138,9 +145,7 @@ public Calendar()
138145
{
139146
}
140147

141-
/// <summary>
142-
/// Initializes a new instance of the <see cref="Eto.Forms.Calendar"/> class.
143-
/// </summary>
148+
/// <inheritdoc cref="Calendar()"/>
144149
/// <param name="handler">Handler implementation to wrap.</param>
145150
protected Calendar(IHandler handler)
146151
: base(handler)
@@ -149,10 +154,7 @@ protected Calendar(IHandler handler)
149154

150155
static readonly object callback = new Callback();
151156

152-
/// <summary>
153-
/// Gets an instance of an object used to perform callbacks to the widget from handler implementations
154-
/// </summary>
155-
/// <returns>The callback.</returns>
157+
/// <inheritdoc/>
156158
protected override object GetCallback()
157159
{
158160
return callback;
@@ -164,13 +166,15 @@ protected override object GetCallback()
164166
public new interface ICallback : Control.ICallback
165167
{
166168
/// <summary>
167-
/// Raises the selected date changed event.
169+
/// Raises the <see cref="Calendar.SelectedDateChanged"/> event.
168170
/// </summary>
171+
// TODO: undocumented params
169172
void OnSelectedDateChanged(Calendar widget, EventArgs e);
170173

171174
/// <summary>
172-
/// Raises the selected range changed event.
175+
/// Raises the <see cref="Calendar.SelectedRangeChanged"/> event.
173176
/// </summary>
177+
// TODO: undocumented params
174178
void OnSelectedRangeChanged(Calendar widget, EventArgs e);
175179
}
176180

@@ -179,18 +183,14 @@ protected override object GetCallback()
179183
/// </summary>
180184
protected new class Callback : Control.Callback, ICallback
181185
{
182-
/// <summary>
183-
/// Raises the selected date changed event.
184-
/// </summary>
186+
/// <inheritdoc cref="ICallback.OnSelectedDateChanged"/>
185187
public void OnSelectedDateChanged(Calendar widget, EventArgs e)
186188
{
187189
using (widget.Platform.Context)
188190
widget.OnSelectedDateChanged(e);
189191
}
190192

191-
/// <summary>
192-
/// Raises the selected range changed event.
193-
/// </summary>
193+
/// <inheritdoc cref="ICallback.OnSelectedRangeChanged"/>
194194
public void OnSelectedRangeChanged(Calendar widget, EventArgs e)
195195
{
196196
using (widget.Platform.Context)
@@ -203,37 +203,19 @@ public void OnSelectedRangeChanged(Calendar widget, EventArgs e)
203203
/// </summary>
204204
public new interface IHandler : Control.IHandler
205205
{
206-
/// <summary>
207-
/// Gets or sets the minimum date entered
208-
/// </summary>
209-
/// <value>The minimum date.</value>
206+
/// <inheritdoc cref="Calendar.MinDate"/>
210207
DateTime MinDate { get; set; }
211208

212-
/// <summary>
213-
/// Gets or sets the maximum date entered
214-
/// </summary>
215-
/// <value>The maximum date.</value>
209+
/// <inheritdoc cref="Calendar.MaxDate"/>
216210
DateTime MaxDate { get; set; }
217211

218-
/// <summary>
219-
/// Gets or sets the selected range.
220-
/// </summary>
221-
/// <remarks>
222-
/// The SelectedRange will have the same start/end dates when <see cref="Mode"/> is <see cref="CalendarMode.Single"/>.
223-
/// </remarks>
224-
/// <value>The selected range.</value>
212+
/// <inheritdoc cref="Calendar.SelectedRange"/>
225213
Range<DateTime> SelectedRange { get; set; }
226214

227-
/// <summary>
228-
/// Gets or sets the selected date.
229-
/// </summary>
230-
/// <value>The selected date.</value>
215+
/// <inheritdoc cref="Calendar.SelectedDate"/>
231216
DateTime SelectedDate { get; set; }
232217

233-
/// <summary>
234-
/// Gets or sets the mode of the calendar.
235-
/// </summary>
236-
/// <value>The calendar mode.</value>
218+
/// <inheritdoc cref="Calendar.Mode"/>
237219
CalendarMode Mode { get; set; }
238220
}
239221
}

0 commit comments

Comments
 (0)