From cbb3fe5b74ec6979588f14a9eeb7bb1e4f8f8e9c Mon Sep 17 00:00:00 2001 From: Julia Radzhabova Date: Mon, 4 Mar 2019 16:02:57 +0300 Subject: [PATCH] [SSE] Debug formulas (set different languages) --- .../main/app/controller/FormulaDialog.js | 57 +++++++++++++++---- .../main/app/controller/Toolbar.js | 4 +- .../main/app/view/FormulaDialog.js | 2 +- .../main/resources/less/formuladialog.less | 1 + 4 files changed, 49 insertions(+), 15 deletions(-) diff --git a/apps/spreadsheeteditor/main/app/controller/FormulaDialog.js b/apps/spreadsheeteditor/main/app/controller/FormulaDialog.js index 7eea41c52a..1a64cdfbc8 100644 --- a/apps/spreadsheeteditor/main/app/controller/FormulaDialog.js +++ b/apps/spreadsheeteditor/main/app/controller/FormulaDialog.js @@ -60,6 +60,9 @@ define([ initialize: function () { var me = this; + me.langJson = {}; + me.langDescJson = {}; + this.addListeners({ 'FileMenu': { 'settings:apply': function() { @@ -124,20 +127,50 @@ define([ var me = this; lang = (lang || 'en').split(/[\-_]/)[0].toLowerCase(); - if ( lang != 'en' ) { - Common.Utils.InternalSettings.set("sse-settings-func-locale", lang); + Common.Utils.InternalSettings.set("sse-settings-func-locale", lang); + if (me.langJson[lang]) { + me.api.asc_setLocalization(me.langJson[lang]); + Common.NotificationCenter.trigger('formula:settings', this); + } else if (lang == 'en') { + me.api.asc_setLocalization(undefined); + Common.NotificationCenter.trigger('formula:settings', this); + } else { Common.Utils.loadConfig('resources/formula-lang/' + lang + '.json', function (config) { - if ( config != 'error' ) + if ( config != 'error' ) { + me.langJson[lang] = config; me.api.asc_setLocalization(config); + Common.NotificationCenter.trigger('formula:settings', this); + } }); - } else me.api.asc_setLocalization(undefined); + } - Common.Utils.loadConfig('resources/formula-lang/' + lang + '_desc.json', - function (config) { - if ( config != 'error' ) - me.loadingFormulas(config); - }); + if (me.langDescJson[lang]) + me.loadingFormulas(me.langDescJson[lang]); + else { + Common.Utils.loadConfig('resources/formula-lang/' + lang + '_desc.json', + function (config) { + if ( config != 'error' ) { + me.langDescJson[lang] = config; + me.loadingFormulas(config); + } else { + Common.Utils.loadConfig('resources/formula-lang/en_desc.json', + function (config) { + me.langDescJson[lang] = (config != 'error') ? config : null; + me.loadingFormulas(me.langDescJson[lang]); + }); + } + }); + } + }, + + getDescription: function(lang) { + if (!lang) return ''; + lang = lang.toLowerCase() ; + + if (this.langDescJson[lang]) + return this.langDescJson[lang]; + return null; }, showDialog: function () { @@ -145,8 +178,10 @@ define([ if ( this.needUpdateFormula ) { this.needUpdateFormula = false; - this.formulas.fillFormulasGroups(); - this.formulas.fillFunctions('All'); + if (this.formulas.$window) { + this.formulas.fillFormulasGroups(); + this.formulas.fillFunctions('All'); + } } this.formulas.show(); } diff --git a/apps/spreadsheeteditor/main/app/controller/Toolbar.js b/apps/spreadsheeteditor/main/app/controller/Toolbar.js index 6173101a81..34435fc7aa 100644 --- a/apps/spreadsheeteditor/main/app/controller/Toolbar.js +++ b/apps/spreadsheeteditor/main/app/controller/Toolbar.js @@ -78,9 +78,6 @@ define([ 'Statusbar': { 'sheet:changed': _.bind(this.onApiSheetChanged, this) }, - 'LeftMenu': { - 'settings:apply': _.bind(this.applyFormulaSettings, this) - }, 'Common.Views.Header': { 'toolbar:setcompact': this.onChangeViewMode.bind(this), 'print': function (opts) { @@ -121,6 +118,7 @@ define([ } }); Common.NotificationCenter.on('page:settings', _.bind(this.onApiSheetChanged, this)); + Common.NotificationCenter.on('formula:settings', _.bind(this.applyFormulaSettings, this)); this.editMode = true; this._isAddingShape = false; diff --git a/apps/spreadsheeteditor/main/app/view/FormulaDialog.js b/apps/spreadsheeteditor/main/app/view/FormulaDialog.js index 90275a9bc0..c818c000b6 100644 --- a/apps/spreadsheeteditor/main/app/view/FormulaDialog.js +++ b/apps/spreadsheeteditor/main/app/view/FormulaDialog.js @@ -56,7 +56,7 @@ define([ _options = {}; _.extend(_options, { - width : 310, + width : 350, height : 490, contentWidth : 390, header : true, diff --git a/apps/spreadsheeteditor/main/resources/less/formuladialog.less b/apps/spreadsheeteditor/main/resources/less/formuladialog.less index 5c7ea42152..c111e1d097 100644 --- a/apps/spreadsheeteditor/main/resources/less/formuladialog.less +++ b/apps/spreadsheeteditor/main/resources/less/formuladialog.less @@ -42,6 +42,7 @@ font-weight: bold; } + word-wrap: break-word; } } }