[xbuild] Fix bug #674630.
[mono.git] / tools / locale-builder / DateTimeFormatEntry.cs
index f834ea8fe61eb9ac27bc02093b909cb67e83293e..0c8fbca34819b5ddf987dd5d7fc67ee004e861a1 100644 (file)
@@ -24,7 +24,7 @@ namespace Mono.Tools.LocaleBuilder {
                 public string DateSeparator;
                 public ArrayList DayNames = new ArrayList ();
                 public int FirstDayOfWeek;
-                public string FullDateTimePattern;
+                public string RawFullDateTimePattern;
                 public string LongDatePattern;
                 public string LongTimePattern;
                 public string MonthDayPattern;
@@ -40,23 +40,27 @@ namespace Mono.Tools.LocaleBuilder {
                 public ArrayList ShortTimePatterns = new ArrayList (5);
                 public ArrayList LongTimePatterns = new ArrayList (6);
 
+                public string FullDateTimePattern {
+                        get { return String.Format (RawFullDateTimePattern, LongTimePattern, LongDatePattern); }
+                }
+
                 public int Row;
 
                 public void AppendTableRow (StringBuilder builder)
                 {
                         builder.Append ("\t{");
-                        builder.Append ("\"" + EncodeString (FullDateTimePattern) + "\", ");
-                        builder.Append ("\"" + EncodeString (LongDatePattern) + "\", ");
-                        builder.Append ("\"" + EncodeString (ShortDatePattern) + "\", ");
+                        builder.Append (EncodeStringIdx (FullDateTimePattern) + ", ");
+                        builder.Append (EncodeStringIdx (LongDatePattern) + ", ");
+                        builder.Append (EncodeStringIdx (ShortDatePattern) + ", ");
 
-                        builder.Append ("\"" + EncodeString (LongTimePattern) + "\", ");
-                        builder.Append ("\"" + EncodeString (ShortTimePattern) + "\", ");
+                        builder.Append (EncodeStringIdx (LongTimePattern) + ", ");
+                        builder.Append (EncodeStringIdx (ShortTimePattern) + ", ");
 
-                        builder.Append ("\"" + EncodeString (YearMonthPattern) + "\", ");
-                        builder.Append ("\"" + EncodeString (MonthDayPattern) + "\", ");
+                        builder.Append (EncodeStringIdx (YearMonthPattern) + ", ");
+                        builder.Append (EncodeStringIdx (MonthDayPattern) + ", ");
 
-                        builder.Append ("\"" + EncodeString (AMDesignator) + "\", ");
-                        builder.Append ("\"" + EncodeString (PMDesignator) + "\", ");
+                        builder.Append (EncodeStringIdx (AMDesignator) + ", ");
+                        builder.Append (EncodeStringIdx (PMDesignator) + ", ");
 
                         AppendNames (builder, DayNames);
                         builder.Append (", ");
@@ -65,15 +69,14 @@ namespace Mono.Tools.LocaleBuilder {
 
                         AppendNames (builder, MonthNames);
                         builder.Append (", ");
-                        AbbreviatedMonthNames.Add (String.Empty); /* ALLWAYS ?? */
                         AppendNames (builder, AbbreviatedMonthNames);
                         builder.Append (", ");
 
                         builder.Append (CalendarWeekRule + ", ");
                         builder.Append (FirstDayOfWeek + ", ");
                         
-                        builder.Append ("\"" + EncodeString (DateSeparator) + "\", ");
-                        builder.Append ("\"" + EncodeString (TimeSeparator) + "\", ");
+                        builder.Append (EncodeStringIdx (DateSeparator) + ", ");
+                        builder.Append (EncodeStringIdx (TimeSeparator) + ", ");
 
                         AppendPatterns (builder, ShortDatePatterns);
                         builder.Append (',');
@@ -91,10 +94,8 @@ namespace Mono.Tools.LocaleBuilder {
                         string [] patterns = al.ToArray (typeof (string)) as string [];
                         builder.Append ('{');
                         for (int i = 0; i < patterns.Length; i++) {
-                                string s = EncodeString (patterns [i]);
-                                builder.Append ('\"');
+                                string s = EncodeStringIdx (patterns [i]);
                                 builder.Append (s);
-                                builder.Append ('\"');
                                 if (i + 1 < patterns.Length)
                                         builder.Append (',');
                         }
@@ -114,7 +115,7 @@ namespace Mono.Tools.LocaleBuilder {
                 {
                         builder.Append ('{');
                         for (int i=0; i<names.Count; i++) {
-                                builder.Append ("\"" + EncodeString (names [i].ToString ()) + "\"");
+                                builder.Append (EncodeStringIdx (names [i].ToString ()));
                                 if (i+1 < names.Count)
                                         builder.Append (", ");
                         }