| OLD | NEW | 
|   1 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file |   1 // Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file | 
|   2 // for details. All rights reserved. Use of this source code is governed by a |   2 // for details. All rights reserved. Use of this source code is governed by a | 
|   3 // BSD-style license that can be found in the LICENSE file. |   3 // BSD-style license that can be found in the LICENSE file. | 
|   4  |   4  | 
|   5 /** |   5 /** | 
|   6  * This provides a basic example of internationalization usage. It uses the |   6  * This provides a basic example of internationalization usage. It uses the | 
|   7  * local variant of all the facilities, meaning that libraries with the |   7  * local variant of all the facilities, meaning that libraries with the | 
|   8  * data for all the locales are directly imported by the program. More realistic |   8  * data for all the locales are directly imported by the program. More realistic | 
|   9  * examples might read the data from files or over the web, which uses the |   9  * examples might read the data from files or over the web, which uses the | 
|  10  * same APIs but requires different imports. |  10  * same APIs but requires different imports. | 
| (...skipping 19 matching lines...) Expand all  Loading... | 
|  30 void setup(Function program, Function output) { |  30 void setup(Function program, Function output) { | 
|  31   // Before we use any messages or use date formatting for a locale we must |  31   // Before we use any messages or use date formatting for a locale we must | 
|  32   // call their initializtion messages, which are asynchronous, since they |  32   // call their initializtion messages, which are asynchronous, since they | 
|  33   // might be reading information from files or over the web. Since we are |  33   // might be reading information from files or over the web. Since we are | 
|  34   // running here in local mode they will all complete immediately. |  34   // running here in local mode they will all complete immediately. | 
|  35   doThisWithTheOutput = output; |  35   doThisWithTheOutput = output; | 
|  36   var germanDatesFuture = initializeDateFormatting('de_DE', null); |  36   var germanDatesFuture = initializeDateFormatting('de_DE', null); | 
|  37   var thaiDatesFuture = initializeDateFormatting('th_TH', null); |  37   var thaiDatesFuture = initializeDateFormatting('th_TH', null); | 
|  38   var germanMessagesFuture = initializeMessages('de_DE'); |  38   var germanMessagesFuture = initializeMessages('de_DE'); | 
|  39   var thaiMessagesFuture = initializeMessages('th_TH'); |  39   var thaiMessagesFuture = initializeMessages('th_TH'); | 
|  40   Futures.wait([germanDatesFuture, thaiDatesFuture, germanMessagesFuture, |  40   Future.wait([germanDatesFuture, thaiDatesFuture, germanMessagesFuture, | 
|  41                 thaiMessagesFuture]).then(program); |  41                 thaiMessagesFuture]).then(program); | 
|  42 } |  42 } | 
|  43  |  43  | 
|  44 // Because the initialization messages return futures we split out the main |  44 // Because the initialization messages return futures we split out the main | 
|  45 // part of our program into a separate function that runs once all the |  45 // part of our program into a separate function that runs once all the | 
|  46 // futures have completed. We are passed the collection of futures, but we |  46 // futures have completed. We are passed the collection of futures, but we | 
|  47 // don't need to use them, so ignore the parameter. |  47 // don't need to use them, so ignore the parameter. | 
|  48 runProgram(List<Future> _) { |  48 runProgram(List<Future> _) { | 
|  49   var aDate = new Date.fromMillisecondsSinceEpoch(0, isUtc: true); |  49   var aDate = new Date.fromMillisecondsSinceEpoch(0, isUtc: true); | 
|  50   var de = new Intl('de_DE'); |  50   var de = new Intl('de_DE'); | 
| (...skipping 13 matching lines...) Expand all  Loading... | 
|  64  |  64  | 
|  65 printForLocale(aDate, intl, operation) { |  65 printForLocale(aDate, intl, operation) { | 
|  66   var hmsFormat = intl.date().add_Hms(); |  66   var hmsFormat = intl.date().add_Hms(); | 
|  67   var dayFormat = intl.date().add_yMMMMEEEEd(); |  67   var dayFormat = intl.date().add_yMMMMEEEEd(); | 
|  68   var time = hmsFormat.format(aDate); |  68   var time = hmsFormat.format(aDate); | 
|  69   var day = dayFormat.format(aDate); |  69   var day = dayFormat.format(aDate); | 
|  70   Intl.withLocale(intl.locale, () { |  70   Intl.withLocale(intl.locale, () { | 
|  71     operation(time,day).then(doThisWithTheOutput); |  71     operation(time,day).then(doThisWithTheOutput); | 
|  72   }); |  72   }); | 
|  73 } |  73 } | 
| OLD | NEW |