diff options
| author | Gubolin <gubolin@fantasymail.de> | 2014-08-17 20:09:05 +0200 |
|---|---|---|
| committer | Gubolin <gubolin@fantasymail.de> | 2014-08-17 20:09:05 +0200 |
| commit | 624bcf4e3352971a77cf3e6a4266f1600f9da577 (patch) | |
| tree | 3c7b737013aab5443e2ece921912a8f156d1859c | |
| parent | 8f7d1833f6e6b304e706bb84848dbf86a80834c8 (diff) | |
| download | snap-624bcf4e3352971a77cf3e6a4266f1600f9da577.tar.gz snap-624bcf4e3352971a77cf3e6a4266f1600f9da577.zip | |
add language blocks
| -rw-r--r-- | gui.js | 3 | ||||
| -rw-r--r-- | objects.js | 9 | ||||
| -rw-r--r-- | threads.js | 11 |
3 files changed, 22 insertions, 1 deletions
@@ -185,7 +185,7 @@ IDE_Morph.prototype.init = function (isAutoFill) { MorphicPreferences.globalFontFamily = 'Helvetica, Arial'; // restore saved user preferences - this.userLanguage = null; // user language preference for startup + this.userLanguage = null; this.applySavedSettings(); // additional properties: @@ -3417,6 +3417,7 @@ IDE_Morph.prototype.setLanguage = function (lang, callback) { if (lang === 'en') { return this.reflectLanguage('en', callback); } + myself.userLanguage = lang; translation = document.createElement('script'); translation.id = 'language'; translation.onload = function () { @@ -878,6 +878,11 @@ SpriteMorph.prototype.initBlocks = function () { category: 'sensing', spec: 'current %dates' }, + reportLanguage: { + type: 'reporter', + category: 'sensing', + spec: 'language' + }, // Operators reifyScript: { @@ -1884,6 +1889,8 @@ SpriteMorph.prototype.blockTemplates = function (category) { blocks.push(block('doSetFastTracking')); blocks.push('-'); blocks.push(block('reportDate')); + blocks.push('-'); + blocks.push(block('reportLanguage')); // for debugging: /////////////// @@ -4991,6 +4998,8 @@ StageMorph.prototype.blockTemplates = function (category) { blocks.push(block('doSetFastTracking')); blocks.push('-'); blocks.push(block('reportDate')); + blocks.push('-'); + blocks.push(block('reportLanguage')); // for debugging: /////////////// @@ -2572,6 +2572,17 @@ Process.prototype.reportTimer = function () { return 0; }; +Process.prototype.reportLanguage = function () { + var ide = this.homeContext.receiver.parentThatIsA(IDE_Morph); + if (ide) { + var lang = ide.userLanguage; + if (lang) { + return lang; + } + } + return 'en'; +}; + // Process Dates and times in Snap // Map block options to built-in functions var dateMap = { |
