Skip to content

Commit 85dc698

Browse files
authored
Merge pull request #165 from AnalyticalGraphicsInc/deletableProperty
Added new interfaces and reworked JSON schema.
2 parents 68ee35c + 2ce845c commit 85dc698

File tree

511 files changed

+14098
-6329
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

511 files changed

+14098
-6329
lines changed

DotNet/CesiumLanguageWriter.sln

+102-46
Large diffs are not rendered by default.

DotNet/CesiumLanguageWriter.sln.DotSettings

+3-1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/ALIGN_MULTIPLE_DECLARATION/@EntryValue">True</s:Boolean>
1111
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/ALIGN_MULTLINE_TYPE_PARAMETER_CONSTRAINS/@EntryValue">True</s:Boolean>
1212
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/ALIGN_MULTLINE_TYPE_PARAMETER_LIST/@EntryValue">True</s:Boolean>
13+
<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/BLANK_LINES_AFTER_BLOCK_STATEMENTS/@EntryValue">0</s:Int64>
1314
<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/BLANK_LINES_AROUND_NAMESPACE/@EntryValue">0</s:Int64>
1415
<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/BLANK_LINES_AROUND_SINGLE_LINE_INVOCABLE/@EntryValue">1</s:Int64>
1516
<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/KEEP_BLANK_LINES_IN_CODE/@EntryValue">1</s:Int64>
@@ -26,7 +27,7 @@
2627
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_AFTER_TYPECAST_PARENTHESES/@EntryValue">False</s:Boolean>
2728
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_WITHIN_SINGLE_LINE_ARRAY_INITIALIZER_BRACES/@EntryValue">True</s:Boolean>
2829
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/STICK_COMMENT/@EntryValue">False</s:Boolean>
29-
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_BEFORE_EXTENDS_COLON/@EntryValue">True</s:Boolean>
30+
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_BEFORE_EXTENDS_COLON/@EntryValue">False</s:Boolean>
3031
<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_LIMIT/@EntryValue">150</s:Int64>
3132
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_LINES/@EntryValue">False</s:Boolean>
3233
<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_OBJECT_AND_COLLECTION_INITIALIZER_STYLE/@EntryValue">WRAP_IF_LONG</s:String>
@@ -56,6 +57,7 @@
5657
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateBlankLinesAroundFieldToBlankLinesAroundProperty/@EntryIndexedValue">True</s:Boolean>
5758
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateThisQualifierSettings/@EntryIndexedValue">True</s:Boolean>
5859
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002EFormat_002ESettingsUpgrade_002EAlignmentTabFillStyleMigration/@EntryIndexedValue">True</s:Boolean>
60+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Adaptor/@EntryIndexedValue">True</s:Boolean>
5961

6062
<s:Boolean x:Key="/Default/UserDictionary/Words/=polyline/@EntryIndexedValue">True</s:Boolean>
6163

DotNet/CesiumLanguageWriter/Advanced/CachingCesiumUriResolver.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -123,4 +123,4 @@ public CacheItem([NotNull] string sourceUri, [NotNull] string resolvedUri)
123123
public readonly string ResolvedUri;
124124
}
125125
}
126-
}
126+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
using JetBrains.Annotations;
2+
3+
namespace CesiumLanguageWriter.Advanced
4+
{
5+
/// <summary>
6+
/// Adapts a class that implements <see cref="ICesiumArcTypeValuePropertyWriter"/> to implement
7+
/// <see cref="ICesiumPropertyWriter"/> for <see cref="CesiumArcType"/> values.
8+
/// </summary>
9+
/// <typeparam name="TFrom">The class that implements <see cref="ICesiumArcTypeValuePropertyWriter"/> to adapt.</typeparam>
10+
public class CesiumArcTypeValuePropertyAdaptor<TFrom> : CesiumWriterAdaptor<TFrom, CesiumArcType>
11+
where TFrom : class, ICesiumArcTypeValuePropertyWriter
12+
{
13+
/// <summary>
14+
/// Initializes a new instance.
15+
/// </summary>
16+
/// <param name="parent">The instance to wrap.</param>
17+
/// <param name="writeValueCallback">The callback to write values of type <see cref="CesiumArcType"/>.</param>
18+
/// <param name="writeDeleteValueCallback">The callback to write an indication that the client should delete existing data.</param>
19+
public CesiumArcTypeValuePropertyAdaptor([NotNull] TFrom parent,
20+
[NotNull] CesiumWriterAdaptorWriteCallback<TFrom, CesiumArcType> writeValueCallback,
21+
[NotNull] CesiumWriterAdaptorWriteDeleteCallback<TFrom> writeDeleteValueCallback)
22+
: base(parent, writeValueCallback, writeDeleteValueCallback)
23+
{
24+
}
25+
}
26+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
using JetBrains.Annotations;
2+
3+
namespace CesiumLanguageWriter.Advanced
4+
{
5+
/// <summary>
6+
/// Adapts a class that implements <see cref="ICesiumBooleanValuePropertyWriter"/> to implement
7+
/// <see cref="ICesiumPropertyWriter"/> for <see cref="bool"/> values.
8+
/// </summary>
9+
/// <typeparam name="TFrom">The class that implements <see cref="ICesiumBooleanValuePropertyWriter"/> to adapt.</typeparam>
10+
public class CesiumBooleanValuePropertyAdaptor<TFrom> : CesiumWriterAdaptor<TFrom, bool>
11+
where TFrom : class, ICesiumBooleanValuePropertyWriter
12+
{
13+
/// <summary>
14+
/// Initializes a new instance.
15+
/// </summary>
16+
/// <param name="parent">The instance to wrap.</param>
17+
/// <param name="writeValueCallback">The callback to write values of type <see cref="bool"/>.</param>
18+
/// <param name="writeDeleteValueCallback">The callback to write an indication that the client should delete existing data.</param>
19+
public CesiumBooleanValuePropertyAdaptor([NotNull] TFrom parent,
20+
[NotNull] CesiumWriterAdaptorWriteCallback<TFrom, bool> writeValueCallback,
21+
[NotNull] CesiumWriterAdaptorWriteDeleteCallback<TFrom> writeDeleteValueCallback)
22+
: base(parent, writeValueCallback, writeDeleteValueCallback)
23+
{
24+
}
25+
}
26+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
using JetBrains.Annotations;
2+
3+
namespace CesiumLanguageWriter.Advanced
4+
{
5+
/// <summary>
6+
/// Adapts a class that implements <see cref="ICesiumBoundingRectangleValuePropertyWriter"/> to implement
7+
/// <see cref="ICesiumInterpolatableValuePropertyWriter{TValue}"/> for <see cref="BoundingRectangle"/> values.
8+
/// </summary>
9+
/// <typeparam name="TFrom">The class that implements <see cref="ICesiumBoundingRectangleValuePropertyWriter"/> to adapt.</typeparam>
10+
public class CesiumBoundingRectangleValuePropertyAdaptor<TFrom> : CesiumInterpolatableWriterAdaptor<TFrom, BoundingRectangle>
11+
where TFrom : class, ICesiumBoundingRectangleValuePropertyWriter
12+
{
13+
/// <summary>
14+
/// Initializes a new instance.
15+
/// </summary>
16+
/// <param name="parent">The instance to wrap.</param>
17+
/// <param name="writeValueCallback">The callback to write values of type <see cref="BoundingRectangle"/>.</param>
18+
/// <param name="writeSamplesCallback">The callback to write samples of type <see cref="BoundingRectangle"/>.</param>
19+
/// <param name="writeDeleteValueCallback">The callback to write an indication that the client should delete existing data.</param>
20+
public CesiumBoundingRectangleValuePropertyAdaptor([NotNull] TFrom parent,
21+
[NotNull] CesiumWriterAdaptorWriteCallback<TFrom, BoundingRectangle> writeValueCallback,
22+
[NotNull] CesiumWriterAdaptorWriteSamplesCallback<TFrom, BoundingRectangle> writeSamplesCallback,
23+
[NotNull] CesiumWriterAdaptorWriteDeleteCallback<TFrom> writeDeleteValueCallback)
24+
: base(parent, writeValueCallback, writeSamplesCallback, writeDeleteValueCallback)
25+
{
26+
}
27+
}
28+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
using JetBrains.Annotations;
2+
3+
namespace CesiumLanguageWriter.Advanced
4+
{
5+
/// <summary>
6+
/// Adapts a class that implements <see cref="ICesiumCartesian2ValuePropertyWriter"/> to implement
7+
/// <see cref="ICesiumInterpolatableValuePropertyWriter{TValue}"/> for <see cref="Rectangular"/> values.
8+
/// </summary>
9+
/// <typeparam name="TFrom">The class that implements <see cref="ICesiumCartesian2ValuePropertyWriter"/> to adapt.</typeparam>
10+
public class CesiumCartesian2ValuePropertyAdaptor<TFrom> : CesiumInterpolatableWriterAdaptor<TFrom, Rectangular>
11+
where TFrom : class, ICesiumCartesian2ValuePropertyWriter
12+
{
13+
/// <summary>
14+
/// Initializes a new instance.
15+
/// </summary>
16+
/// <param name="parent">The instance to wrap.</param>
17+
/// <param name="writeValueCallback">The callback to write values of type <see cref="Rectangular"/>.</param>
18+
/// <param name="writeSamplesCallback">The callback to write samples of type <see cref="Rectangular"/>.</param>
19+
/// <param name="writeDeleteValueCallback">The callback to write an indication that the client should delete existing data.</param>
20+
public CesiumCartesian2ValuePropertyAdaptor([NotNull] TFrom parent,
21+
[NotNull] CesiumWriterAdaptorWriteCallback<TFrom, Rectangular> writeValueCallback,
22+
[NotNull] CesiumWriterAdaptorWriteSamplesCallback<TFrom, Rectangular> writeSamplesCallback,
23+
[NotNull] CesiumWriterAdaptorWriteDeleteCallback<TFrom> writeDeleteValueCallback)
24+
: base(parent, writeValueCallback, writeSamplesCallback, writeDeleteValueCallback)
25+
{
26+
}
27+
}
28+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
using System.Collections.Generic;
2+
using JetBrains.Annotations;
3+
4+
namespace CesiumLanguageWriter.Advanced
5+
{
6+
/// <summary>
7+
/// Adapts a class that implements <see cref="ICesiumCartesian3ListValuePropertyWriter"/> to implement
8+
/// <see cref="ICesiumPropertyWriter"/> for a list of <see cref="Cartesian"/> values.
9+
/// </summary>
10+
/// <typeparam name="TFrom">The class that implements <see cref="ICesiumCartesian3ListValuePropertyWriter"/> to adapt.</typeparam>
11+
public class CesiumCartesian3ListValuePropertyAdaptor<TFrom> : CesiumWriterAdaptor<TFrom, IEnumerable<Cartesian>>
12+
where TFrom : class, ICesiumCartesian3ListValuePropertyWriter
13+
{
14+
/// <summary>
15+
/// Initializes a new instance.
16+
/// </summary>
17+
/// <param name="parent">The instance to wrap.</param>
18+
/// <param name="writeValueCallback">The callback to write a list of <see cref="Cartesian"/> values.</param>
19+
/// <param name="writeDeleteValueCallback">The callback to write an indication that the client should delete existing data.</param>
20+
public CesiumCartesian3ListValuePropertyAdaptor([NotNull] TFrom parent,
21+
[NotNull] CesiumWriterAdaptorWriteCallback<TFrom, IEnumerable<Cartesian>> writeValueCallback,
22+
[NotNull] CesiumWriterAdaptorWriteDeleteCallback<TFrom> writeDeleteValueCallback)
23+
: base(parent, writeValueCallback, writeDeleteValueCallback)
24+
{
25+
}
26+
}
27+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
using JetBrains.Annotations;
2+
3+
namespace CesiumLanguageWriter.Advanced
4+
{
5+
/// <summary>
6+
/// Adapts a class that implements <see cref="ICesiumCartesian3ValuePropertyWriter"/> to implement
7+
/// <see cref="ICesiumInterpolatableValuePropertyWriter{TValue}"/> for <see cref="Cartesian"/> values.
8+
/// </summary>
9+
/// <typeparam name="TFrom">The class that implements <see cref="ICesiumCartesian3ValuePropertyWriter"/> to adapt.</typeparam>
10+
public class CesiumCartesian3ValuePropertyAdaptor<TFrom> : CesiumInterpolatableWriterAdaptor<TFrom, Cartesian>
11+
where TFrom : class, ICesiumCartesian3ValuePropertyWriter
12+
{
13+
/// <summary>
14+
/// Initializes a new instance.
15+
/// </summary>
16+
/// <param name="parent">The instance to wrap.</param>
17+
/// <param name="writeValueCallback">The callback to write values of type <see cref="Cartesian"/>.</param>
18+
/// <param name="writeSamplesCallback">The callback to write samples of type <see cref="Cartesian"/>.</param>
19+
/// <param name="writeDeleteValueCallback">The callback to write an indication that the client should delete existing data.</param>
20+
public CesiumCartesian3ValuePropertyAdaptor([NotNull] TFrom parent,
21+
[NotNull] CesiumWriterAdaptorWriteCallback<TFrom, Cartesian> writeValueCallback,
22+
[NotNull] CesiumWriterAdaptorWriteSamplesCallback<TFrom, Cartesian> writeSamplesCallback,
23+
[NotNull] CesiumWriterAdaptorWriteDeleteCallback<TFrom> writeDeleteValueCallback)
24+
: base(parent, writeValueCallback, writeSamplesCallback, writeDeleteValueCallback)
25+
{
26+
}
27+
}
28+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
using JetBrains.Annotations;
2+
3+
namespace CesiumLanguageWriter.Advanced
4+
{
5+
/// <summary>
6+
/// Adapts a class that implements <see cref="ICesiumCartesian3VelocityValuePropertyWriter"/> to implement
7+
/// <see cref="ICesiumInterpolatableValuePropertyWriter{TValue}"/> for <see cref="Motion{Cartesian}"/> values.
8+
/// </summary>
9+
/// <typeparam name="TFrom">The class that implements <see cref="ICesiumCartesian3VelocityValuePropertyWriter"/> to adapt.</typeparam>
10+
public class CesiumCartesian3VelocityValuePropertyAdaptor<TFrom> : CesiumInterpolatableWriterAdaptor<TFrom, Motion<Cartesian>>
11+
where TFrom : class, ICesiumCartesian3VelocityValuePropertyWriter
12+
{
13+
/// <summary>
14+
/// Initializes a new instance.
15+
/// </summary>
16+
/// <param name="parent">The instance to wrap.</param>
17+
/// <param name="writeValueCallback">The callback to write values of type <see cref="Motion{Cartesian}"/>.</param>
18+
/// <param name="writeSamplesCallback">The callback to write samples of type <see cref="Motion{Cartesian}"/>.</param>
19+
/// <param name="writeDeleteValueCallback">The callback to write an indication that the client should delete existing data.</param>
20+
public CesiumCartesian3VelocityValuePropertyAdaptor([NotNull] TFrom parent,
21+
[NotNull] CesiumWriterAdaptorWriteCallback<TFrom, Motion<Cartesian>> writeValueCallback,
22+
[NotNull] CesiumWriterAdaptorWriteSamplesCallback<TFrom, Motion<Cartesian>> writeSamplesCallback,
23+
[NotNull] CesiumWriterAdaptorWriteDeleteCallback<TFrom> writeDeleteValueCallback)
24+
: base(parent, writeValueCallback, writeSamplesCallback, writeDeleteValueCallback)
25+
{
26+
}
27+
}
28+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
using System.Collections.Generic;
2+
using JetBrains.Annotations;
3+
4+
namespace CesiumLanguageWriter.Advanced
5+
{
6+
/// <summary>
7+
/// Adapts a class that implements <see cref="ICesiumCartographicDegreesListValuePropertyWriter"/> to implement
8+
/// <see cref="ICesiumPropertyWriter"/> for a list of <see cref="Cartographic"/> values.
9+
/// </summary>
10+
/// <typeparam name="TFrom">The class that implements <see cref="ICesiumCartographicDegreesValuePropertyWriter"/> to adapt.</typeparam>
11+
public class CesiumCartographicDegreesListValuePropertyAdaptor<TFrom> : CesiumWriterAdaptor<TFrom, IEnumerable<Cartographic>>
12+
where TFrom : class, ICesiumCartographicDegreesListValuePropertyWriter
13+
{
14+
/// <summary>
15+
/// Initializes a new instance.
16+
/// </summary>
17+
/// <param name="parent">The instance to wrap.</param>
18+
/// <param name="writeValueCallback">The callback to write a list of <see cref="Cartographic"/> values.</param>
19+
/// <param name="writeDeleteValueCallback">The callback to write an indication that the client should delete existing data.</param>
20+
public CesiumCartographicDegreesListValuePropertyAdaptor([NotNull] TFrom parent,
21+
[NotNull] CesiumWriterAdaptorWriteCallback<TFrom, IEnumerable<Cartographic>> writeValueCallback,
22+
[NotNull] CesiumWriterAdaptorWriteDeleteCallback<TFrom> writeDeleteValueCallback)
23+
: base(parent, writeValueCallback, writeDeleteValueCallback)
24+
{
25+
}
26+
}
27+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
using JetBrains.Annotations;
2+
3+
namespace CesiumLanguageWriter.Advanced
4+
{
5+
/// <summary>
6+
/// Adapts a class that implements <see cref="ICesiumCartographicDegreesValuePropertyWriter"/> to implement
7+
/// <see cref="ICesiumInterpolatableValuePropertyWriter{TValue}"/> for <see cref="Cartographic"/> values.
8+
/// </summary>
9+
/// <typeparam name="TFrom">The class that implements <see cref="ICesiumCartographicDegreesValuePropertyWriter"/> to adapt.</typeparam>
10+
public class CesiumCartographicDegreesValuePropertyAdaptor<TFrom> : CesiumInterpolatableWriterAdaptor<TFrom, Cartographic>
11+
where TFrom : class, ICesiumCartographicDegreesValuePropertyWriter
12+
{
13+
/// <summary>
14+
/// Initializes a new instance.
15+
/// </summary>
16+
/// <param name="parent">The instance to wrap.</param>
17+
/// <param name="writeValueCallback">The callback to write values of type <see cref="Cartographic"/>.</param>
18+
/// <param name="writeSamplesCallback">The callback to write samples of type <see cref="Cartographic"/>.</param>
19+
/// <param name="writeDeleteValueCallback">The callback to write an indication that the client should delete existing data.</param>
20+
public CesiumCartographicDegreesValuePropertyAdaptor([NotNull] TFrom parent,
21+
[NotNull] CesiumWriterAdaptorWriteCallback<TFrom, Cartographic> writeValueCallback,
22+
[NotNull] CesiumWriterAdaptorWriteSamplesCallback<TFrom, Cartographic> writeSamplesCallback,
23+
[NotNull] CesiumWriterAdaptorWriteDeleteCallback<TFrom> writeDeleteValueCallback)
24+
: base(parent, writeValueCallback, writeSamplesCallback, writeDeleteValueCallback)
25+
{
26+
}
27+
}
28+
}

0 commit comments

Comments
 (0)