abbr works only on full words; changes on nodes don't work
[osm-helpers.git] / Way.cs
blob32696191920efea387da0717b3ecb8000df0d00a
1 /*
2 * Author: Paolo Molaro
3 * Copyright (c) 2008 Paolo Molaro lupus@oddwiz.org
4 * License: MIT/X11, see the MIT.X11 file.
5 */
6 using System;
7 using System.Xml;
8 using System.Collections.Specialized;
10 namespace OpenStreetMap {
12 public class Way: OsmObject {
13 long[] nodes;
15 public override string ObjectType {
16 get {
17 return "way";
21 public long[] Nodes {
22 get {
23 if (nodes == null)
24 return new long [0];
25 return nodes;
27 set {
28 if (value == null)
29 throw new ArgumentNullException ("value");
30 nodes = value.Clone () as long [];
31 Changed = true;
35 public override void WriteXml (XmlTextWriter writer)
37 writer.WriteStartElement ("way");
38 WriteCommonAttrs (writer);
39 for (int i = 0; i < nodes.Length; ++i) {
40 writer.WriteStartElement ("nd");
41 writer.WriteAttributeString ("ref", nodes [i].ToString ());
42 writer.WriteEndElement ();
44 WriteTags (writer);
45 writer.WriteEndElement ();