diff --git a/apps/common/main/lib/util/utils.js b/apps/common/main/lib/util/utils.js
index 50b1d6049..f87d958ac 100644
--- a/apps/common/main/lib/util/utils.js
+++ b/apps/common/main/lib/util/utils.js
@@ -781,6 +781,45 @@ Common.Utils.InternalSettings = new(function() {
}
});
+Common.Utils.lockControls = function(causes, lock, opts, defControls) {
+ !opts && (opts = {});
+
+ var controls = opts.array || defControls;
+ opts.merge && (controls = _.union(defControls,controls));
+
+ function doLock(cmp, cause) {
+ if ( cmp && _.contains(cmp.options.lock, cause) ) {
+ var index = cmp.keepState.indexOf(cause);
+ if (lock) {
+ if (index < 0) {
+ cmp.keepState.push(cause);
+ }
+ } else {
+ if (!(index < 0)) {
+ cmp.keepState.splice(index, 1);
+ }
+ }
+ }
+ }
+
+ _.each(controls, function(item) {
+ if (item && _.isFunction(item.setDisabled)) {
+ !item.keepState && (item.keepState = []);
+ if (opts.clear && opts.clear.length > 0 && item.keepState.length > 0) {
+ item.keepState = _.difference(item.keepState, opts.clear);
+ }
+
+ _.isArray(causes) ? _.each(causes, function(c) {doLock(item, c)}) : doLock(item, causes);
+
+ if (!(item.keepState.length > 0)) {
+ item.isDisabled() && item.setDisabled(false);
+ } else {
+ !item.isDisabled() && item.setDisabled(true);
+ }
+ }
+ });
+};
+
Common.Utils.InternalSettings.set('toolbar-height-tabs', 32);
Common.Utils.InternalSettings.set('toolbar-height-tabs-top-title', 28);
Common.Utils.InternalSettings.set('toolbar-height-controls', 67);
diff --git a/apps/common/main/lib/view/OpenDialog.js b/apps/common/main/lib/view/OpenDialog.js
index 79b608529..4e54e1690 100644
--- a/apps/common/main/lib/view/OpenDialog.js
+++ b/apps/common/main/lib/view/OpenDialog.js
@@ -426,6 +426,7 @@ define([
onCmbDelimiterSelect: function(combo, record){
this.inputDelimiter.setVisible(record.value == -1);
+ (record.value == -1) && this.inputDelimiter.cmpEl.find('input').focus();
if (this.preview)
this.updatePreview();
},
diff --git a/apps/documenteditor/main/app/view/MailMergeSettings.js b/apps/documenteditor/main/app/view/MailMergeSettings.js
index 2713692bc..85fc0adc7 100644
--- a/apps/documenteditor/main/app/view/MailMergeSettings.js
+++ b/apps/documenteditor/main/app/view/MailMergeSettings.js
@@ -783,7 +783,7 @@ define([
disableControls: function(disable) {
if (this._initSettings) return;
-
+
this.lockControls(DE.enumLockMM.lostConnect, disable, {
array: _.union([this.btnEditData, this.btnInsField, this.chHighlight], (this.mode.mergeFolderUrl) ? [this.btnPortal] : []),
merge: true
@@ -833,42 +833,7 @@ define([
},
lockControls: function(causes, lock, opts) {
- !opts && (opts = {});
-
- var controls = opts.array || this.emptyDBControls;
- opts.merge && (controls = _.union(this.emptyDBControls,controls));
-
- function doLock(cmp, cause) {
- if ( _.contains(cmp.options.lock, cause) ) {
- var index = cmp.keepState.indexOf(cause);
- if (lock) {
- if (index < 0) {
- cmp.keepState.push(cause);
- }
- } else {
- if (!(index < 0)) {
- cmp.keepState.splice(index, 1);
- }
- }
- }
- }
-
- _.each(controls, function(item) {
- if (_.isFunction(item.setDisabled)) {
- !item.keepState && (item.keepState = []);
- if (opts.clear && opts.clear.length > 0 && item.keepState.length > 0) {
- item.keepState = _.difference(item.keepState, opts.clear);
- }
-
- _.isArray(causes) ? _.each(causes, function(c) {doLock(item, c)}) : doLock(item, causes);
-
- if (!(item.keepState.length > 0)) {
- item.isDisabled() && item.setDisabled(false);
- } else {
- !item.isDisabled() && item.setDisabled(true);
- }
- }
- });
+ Common.Utils.lockControls(causes, lock, opts, this.emptyDBControls);
},
textDataSource: 'Data Source',
diff --git a/apps/presentationeditor/main/app/view/Toolbar.js b/apps/presentationeditor/main/app/view/Toolbar.js
index fd4dd9cdd..41547a884 100644
--- a/apps/presentationeditor/main/app/view/Toolbar.js
+++ b/apps/presentationeditor/main/app/view/Toolbar.js
@@ -826,44 +826,7 @@ define([
},
lockToolbar: function (causes, lock, opts) {
- !opts && (opts = {});
-
- var controls = opts.array || this.lockControls;
- opts.merge && (controls = _.union(this.lockControls, controls));
-
- function doLock(cmp, cause) {
- if (_.contains(cmp.options.lock, cause)) {
- var index = cmp.keepState.indexOf(cause);
- if (lock) {
- if (index < 0) {
- cmp.keepState.push(cause);
- }
- } else {
- if (!(index < 0)) {
- cmp.keepState.splice(index, 1);
- }
- }
- }
- }
-
- _.each(controls, function (item) {
- if (_.isFunction(item.setDisabled)) {
- !item.keepState && (item.keepState = []);
- if (opts.clear && opts.clear.length > 0 && item.keepState.length > 0) {
- item.keepState = _.difference(item.keepState, opts.clear);
- }
-
- _.isArray(causes) ? _.each(causes, function (c) {
- doLock(item, c)
- }) : doLock(item, causes);
-
- if (!(item.keepState.length > 0)) {
- item.isDisabled() && item.setDisabled(false);
- } else {
- !item.isDisabled() && item.setDisabled(true);
- }
- }
- });
+ Common.Utils.lockControls(causes, lock, opts, this.lockControls);
},
render: function (mode) {
diff --git a/apps/spreadsheeteditor/main/app.js b/apps/spreadsheeteditor/main/app.js
index e8c18af4f..18e1393c6 100644
--- a/apps/spreadsheeteditor/main/app.js
+++ b/apps/spreadsheeteditor/main/app.js
@@ -156,6 +156,7 @@ require([
'LeftMenu',
'Main',
'PivotTable',
+ 'DataTab',
'Common.Controllers.Fonts',
'Common.Controllers.Chat',
'Common.Controllers.Comments',
@@ -178,6 +179,7 @@ require([
'spreadsheeteditor/main/app/controller/Main',
'spreadsheeteditor/main/app/controller/Print',
'spreadsheeteditor/main/app/controller/PivotTable',
+ 'spreadsheeteditor/main/app/controller/DataTab',
'spreadsheeteditor/main/app/view/FileMenuPanels',
'spreadsheeteditor/main/app/view/ParagraphSettings',
'spreadsheeteditor/main/app/view/ImageSettings',
diff --git a/apps/spreadsheeteditor/main/app/controller/DataTab.js b/apps/spreadsheeteditor/main/app/controller/DataTab.js
new file mode 100644
index 000000000..cf8a5635c
--- /dev/null
+++ b/apps/spreadsheeteditor/main/app/controller/DataTab.js
@@ -0,0 +1,198 @@
+/*
+ *
+ * (c) Copyright Ascensio System SIA 2010-2019
+ *
+ * This program is a free software product. You can redistribute it and/or
+ * modify it under the terms of the GNU Affero General Public License (AGPL)
+ * version 3 as published by the Free Software Foundation. In accordance with
+ * Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
+ * that Ascensio System SIA expressly excludes the warranty of non-infringement
+ * of any third-party rights.
+ *
+ * This program is distributed WITHOUT ANY WARRANTY; without even the implied
+ * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
+ * details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
+ *
+ * You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
+ * street, Riga, Latvia, EU, LV-1050.
+ *
+ * The interactive user interfaces in modified source and object code versions
+ * of the Program must display Appropriate Legal Notices, as required under
+ * Section 5 of the GNU AGPL version 3.
+ *
+ * Pursuant to Section 7(b) of the License you must retain the original Product
+ * logo when distributing the program. Pursuant to Section 7(e) we decline to
+ * grant you any rights under trademark law for use of our trademarks.
+ *
+ * All the Product's GUI elements, including illustrations and icon sets, as
+ * well as technical writing content are licensed under the terms of the
+ * Creative Commons Attribution-ShareAlike 4.0 International. See the License
+ * terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
+ *
+ */
+
+/**
+ * DataTab.js
+ *
+ * Created by Julia Radzhabova on 30.05.2019
+ * Copyright (c) 2019 Ascensio System SIA. All rights reserved.
+ *
+ */
+
+define([
+ 'core',
+ 'spreadsheeteditor/main/app/view/DataTab',
+ 'spreadsheeteditor/main/app/view/GroupDialog'
+], function () {
+ 'use strict';
+
+ SSE.Controllers.DataTab = Backbone.Controller.extend(_.extend({
+ models : [],
+ collections : [
+ ],
+ views : [
+ 'DataTab'
+ ],
+ sdkViewName : '#id_main',
+
+ initialize: function () {
+
+ this.addListeners({
+ 'DataTab': {
+ 'data:group': this.onGroup,
+ 'data:ungroup': this.onUngroup,
+ 'data:tocolumns': this.onTextToColumn,
+ 'data:show': this.onShowClick,
+ 'data:hide': this.onHideClick
+ }
+ });
+
+ this._state = {
+ CSVOptions: new Asc.asc_CCSVAdvancedOptions(0, 4, '')
+ };
+ },
+ onLaunch: function () {
+ },
+
+ setApi: function (api) {
+ if (api) {
+ this.api = api;
+ this.api.asc_registerCallback('asc_onSelectionChanged', _.bind(this.onSelectionChanged, this));
+ this.api.asc_registerCallback('asc_onCoAuthoringDisconnect',_.bind(this.onCoAuthoringDisconnect, this));
+ Common.NotificationCenter.on('api:disconnect', _.bind(this.onCoAuthoringDisconnect, this));
+ }
+ return this;
+ },
+
+ setConfig: function(config) {
+ this.toolbar = config.toolbar;
+ this.view = this.createView('DataTab', {
+ toolbar: this.toolbar.toolbar
+ });
+ },
+
+ SetDisabled: function(state) {
+ this.view && this.view.SetDisabled(state);
+ },
+
+ getView: function(name) {
+ return !name && this.view ?
+ this.view : Backbone.Controller.prototype.getView.call(this, name);
+ },
+
+ onCoAuthoringDisconnect: function() {
+ this.SetDisabled(true);
+ },
+
+ onSelectionChanged: function(info) {
+ if (!this.toolbar.editMode || !this.view) return;
+
+ // special disable conditions
+ Common.Utils.lockControls(SSE.enumLock.multiselectCols, info.asc_getSelectedColsCount()>1, {array: [this.view.btnTextToColumns]});
+ Common.Utils.lockControls(SSE.enumLock.multiselect, info.asc_getFlags().asc_getMultiselect(), {array: [this.view.btnTextToColumns]});
+ },
+
+ onUngroup: function(type) {
+ var me = this;
+ if (type=='rows') {
+ (me.api.asc_checkAddGroup(true)!==undefined) && me.api.asc_ungroup(true)
+ } else if (type=='columns') {
+ (me.api.asc_checkAddGroup(true)!==undefined) && me.api.asc_ungroup(false)
+ } else if (type=='clear') {
+ me.api.asc_clearOutline();
+ } else {
+ var val = me.api.asc_checkAddGroup(true);
+ if (val===null) {
+ (new SSE.Views.GroupDialog({
+ title: me.view.capBtnUngroup,
+ props: 'rows',
+ handler: function (dlg, result) {
+ if (result=='ok') {
+ me.api.asc_ungroup(dlg.getSettings());
+ }
+ Common.NotificationCenter.trigger('edit:complete', me.toolbar);
+ }
+ })).show();
+ } else if (val!==undefined) //undefined - error, true - rows, false - columns
+ me.api.asc_ungroup(val);
+ }
+ Common.NotificationCenter.trigger('edit:complete', me.toolbar);
+ },
+
+ onGroup: function(btn) {
+ var me = this,
+ val = me.api.asc_checkAddGroup();
+ if (val===null) {
+ (new SSE.Views.GroupDialog({
+ title: me.view.capBtnGroup,
+ props: 'rows',
+ handler: function (dlg, result) {
+ if (result=='ok') {
+ me.api.asc_group(dlg.getSettings());
+ }
+ Common.NotificationCenter.trigger('edit:complete', me.toolbar);
+ }
+ })).show();
+ } else if (val!==undefined) //undefined - error, true - rows, false - columns
+ me.api.asc_group(val);
+ Common.NotificationCenter.trigger('edit:complete', me.toolbar);
+ },
+
+ onTextToColumn: function() {
+ this.api.asc_TextImport(this._state.CSVOptions, _.bind(this.onTextToColumnCallback, this), false);
+ },
+
+ onTextToColumnCallback: function(data) {
+ if (!data || !data.length) return;
+
+ var me = this;
+ (new Common.Views.OpenDialog({
+ title: me.textWizard,
+ closable: true,
+ type: Common.Utils.importTextType.Columns,
+ preview: true,
+ previewData: data,
+ settings: me._state.CSVOptions,
+ api: me.api,
+ handler: function (result, encoding, delimiter, delimiterChar) {
+ if (result == 'ok') {
+ if (me && me.api) {
+ me.api.asc_TextToColumns(new Asc.asc_CCSVAdvancedOptions(encoding, delimiter, delimiterChar));
+ }
+ }
+ }
+ })).show();
+ },
+
+ onShowClick: function() {
+ this.api.asc_changeGroupDetails(true);
+ },
+
+ onHideClick: function() {
+ this.api.asc_changeGroupDetails(false);
+ },
+
+ textWizard: 'Text to Columns Wizard'
+
+ }, SSE.Controllers.DataTab || {}));
+});
\ No newline at end of file
diff --git a/apps/spreadsheeteditor/main/app/controller/Main.js b/apps/spreadsheeteditor/main/app/controller/Main.js
index 6b978e8d7..572c82a64 100644
--- a/apps/spreadsheeteditor/main/app/controller/Main.js
+++ b/apps/spreadsheeteditor/main/app/controller/Main.js
@@ -1358,6 +1358,10 @@ define([
config.msg = this.errorNoDataToParse;
break;
+ case Asc.c_oAscError.ID.CannotUngroupError:
+ config.msg = this.errorCannotUngroup;
+ break;
+
default:
config.msg = (typeof id == 'string') ? id : this.errorDefaultMessage.replace('%1', id);
break;
@@ -2356,6 +2360,7 @@ define([
txtTable: 'Table',
textCustomLoader: 'Please note that according to the terms of the license you are not entitled to change the loader.
Please contact our Sales Department to get a quote.',
errorNoDataToParse: 'No data was selected to parse.',
+ errorCannotUngroup: 'Cannot ungroup. To start an outline, select the detail rows or columns and group them.',
waitText: 'Please, wait...'
}
})(), SSE.Controllers.Main || {}))
diff --git a/apps/spreadsheeteditor/main/app/controller/Toolbar.js b/apps/spreadsheeteditor/main/app/controller/Toolbar.js
index 3a15b8e88..181b10e8b 100644
--- a/apps/spreadsheeteditor/main/app/controller/Toolbar.js
+++ b/apps/spreadsheeteditor/main/app/controller/Toolbar.js
@@ -118,6 +118,11 @@ define([
'go:editor': function() {
Common.Gateway.requestEditRights();
}
+ },
+ 'DataTab': {
+ 'data:sort': this.onSortType,
+ 'data:setfilter': this.onAutoFilter,
+ 'data:clearfilter': this.onClearFilter
}
});
Common.NotificationCenter.on('page:settings', _.bind(this.onApiSheetChanged, this));
@@ -312,14 +317,6 @@ define([
toolbar.btnInsertText.on('click', _.bind(this.onBtnInsertTextClick, this));
toolbar.btnInsertShape.menu.on('hide:after', _.bind(this.onInsertShapeHide, this));
toolbar.btnInsertEquation.on('click', _.bind(this.onInsertEquationClick, this));
- toolbar.btnSortDown.on('click', _.bind(this.onSortType, this, Asc.c_oAscSortOptions.Ascending));
- toolbar.btnSortUp.on('click', _.bind(this.onSortType, this, Asc.c_oAscSortOptions.Descending));
- toolbar.mnuitemSortAZ.on('click', _.bind(this.onSortType, this, Asc.c_oAscSortOptions.Ascending));
- toolbar.mnuitemSortZA.on('click', _.bind(this.onSortType, this, Asc.c_oAscSortOptions.Descending));
- toolbar.btnSetAutofilter.on('click', _.bind(this.onAutoFilter, this));
- toolbar.mnuitemAutoFilter.on('click', _.bind(this.onAutoFilter, this));
- toolbar.btnClearAutofilter.on('click', _.bind(this.onClearFilter, this));
- toolbar.mnuitemClearFilter.on('click', _.bind(this.onClearFilter, this));
toolbar.btnTableTemplate.menu.on('show:after', _.bind(this.onTableTplMenuOpen, this));
toolbar.btnPercentStyle.on('click', _.bind(this.onNumberFormat, this));
toolbar.btnCurrencyStyle.on('click', _.bind(this.onNumberFormat, this));
@@ -1679,7 +1676,6 @@ define([
toolbar.btnClearStyle.menu.items[2],
toolbar.btnClearStyle.menu.items[3],
toolbar.btnClearStyle.menu.items[4],
- toolbar.mnuitemClearFilter,
toolbar.btnNamedRange.menu.items[0],
toolbar.btnNamedRange.menu.items[1]
],
@@ -2192,14 +2188,14 @@ define([
val = (filterInfo) ? filterInfo.asc_getIsAutoFilter() : null;
if (this._state.filter !== val) {
- toolbar.btnSetAutofilter.toggle(val===true, true);
- toolbar.mnuitemAutoFilter.setChecked(val===true, true);
+ toolbar.btnsSetAutofilter.forEach(function(button) {
+ button.toggle(val===true, true);
+ });
this._state.filter = val;
}
need_disable = this._state.controlsdisabled.filters || (val===null);
toolbar.lockToolbar(SSE.enumLock.ruleFilter, need_disable,
- { array: [toolbar.btnSortDown, toolbar.btnSortUp, toolbar.mnuitemSortAZ, toolbar.mnuitemSortZA,
- toolbar.btnTableTemplate,toolbar.btnSetAutofilter,toolbar.mnuitemAutoFilter,toolbar.btnAutofilter] });
+ { array: [toolbar.btnTableTemplate].concat(toolbar.btnsSetAutofilter).concat(toolbar.btnsSortDown).concat(toolbar.btnsSortUp) });
val = (formatTableInfo) ? formatTableInfo.asc_getTableStyleName() : null;
if (this._state.tablestylename !== val && this.toolbar.mnuTableTemplatePicker) {
@@ -2214,7 +2210,7 @@ define([
}
need_disable = this._state.controlsdisabled.filters || !filterInfo || (filterInfo.asc_getIsApplyAutoFilter()!==true);
- toolbar.lockToolbar(SSE.enumLock.ruleDelFilter, need_disable, {array:[toolbar.btnClearAutofilter,toolbar.mnuitemClearFilter]});
+ toolbar.lockToolbar(SSE.enumLock.ruleDelFilter, need_disable, {array: toolbar.btnsClearAutofilter});
var old_name = this._state.tablename;
this._state.tablename = (formatTableInfo) ? formatTableInfo.asc_getTableName() : undefined;
@@ -2229,11 +2225,10 @@ define([
toolbar.lockToolbar(SSE.enumLock.multiselect, this._state.multiselect, { array: [toolbar.btnTableTemplate, toolbar.btnInsertHyperlink]});
this._state.inpivot = !!info.asc_getPivotTableInfo();
- toolbar.lockToolbar(SSE.enumLock.editPivot, this._state.inpivot, { array: [toolbar.btnMerge, toolbar.btnInsertHyperlink, toolbar.btnSetAutofilter, toolbar.btnClearAutofilter, toolbar.btnSortDown, toolbar.btnSortUp, toolbar.btnAutofilter]});
+ toolbar.lockToolbar(SSE.enumLock.editPivot, this._state.inpivot, { array: [toolbar.btnMerge, toolbar.btnInsertHyperlink].concat(toolbar.btnsSetAutofilter).concat(toolbar.btnsClearAutofilter).concat(toolbar.btnsSortDown).concat(toolbar.btnsSortUp)});
need_disable = !this.appConfig.canModifyFilter;
- toolbar.lockToolbar(SSE.enumLock.cantModifyFilter, need_disable, { array: [toolbar.btnSortDown, toolbar.btnSortUp, toolbar.mnuitemSortAZ, toolbar.mnuitemSortZA, toolbar.btnSetAutofilter,
- toolbar.btnAutofilter, toolbar.btnTableTemplate, toolbar.btnClearStyle.menu.items[0], toolbar.btnClearStyle.menu.items[2] ]});
+ toolbar.lockToolbar(SSE.enumLock.cantModifyFilter, need_disable, { array: [toolbar.btnTableTemplate, toolbar.btnClearStyle.menu.items[0], toolbar.btnClearStyle.menu.items[2] ].concat(toolbar.btnsSetAutofilter).concat(toolbar.btnsSortDown).concat(toolbar.btnsSortUp)});
}
@@ -2424,16 +2419,15 @@ define([
val = filterInfo ? filterInfo.asc_getIsAutoFilter() : null;
if ( this._state.filter !== val ) {
me.toolbar.btnSetAutofilter.toggle(val===true, true);
- // toolbar.mnuitemAutoFilter.setChecked(val===true, true);
this._state.filter = val;
}
need_disable = this._state.controlsdisabled.filters || (val===null);
me.toolbar.lockToolbar(SSE.enumLock.ruleFilter, need_disable,
- { array: [me.toolbar.btnSortDown, me.toolbar.btnSortUp, me.toolbar.btnSetAutofilter] });
+ { array: [me.toolbar.btnSetAutofilter, me.toolbar.btnSortDown, me.toolbar.btnSortUp] });
need_disable = this._state.controlsdisabled.filters || !filterInfo || (filterInfo.asc_getIsApplyAutoFilter()!==true);
- me.toolbar.lockToolbar(SSE.enumLock.ruleDelFilter, need_disable, {array:[me.toolbar.btnClearAutofilter]});
+ me.toolbar.lockToolbar(SSE.enumLock.ruleDelFilter, need_disable, {array: [me.toolbar.btnClearAutofilter]});
}
},
@@ -2882,11 +2876,7 @@ define([
toolbar.btnClearStyle.menu.items[1],
toolbar.btnClearStyle.menu.items[2],
toolbar.btnClearStyle.menu.items[3],
- toolbar.btnClearStyle.menu.items[4],
- toolbar.mnuitemSortAZ,
- toolbar.mnuitemSortZA,
- toolbar.mnuitemAutoFilter,
- toolbar.mnuitemClearFilter
+ toolbar.btnClearStyle.menu.items[4]
],
merge: true,
clear: [_set.selImage, _set.selChart, _set.selChartText, _set.selShape, _set.selShapeText, _set.coAuth]
@@ -3104,11 +3094,21 @@ define([
me.toolbar.setApi(me.api);
if ( !config.isEditDiagram && !config.isEditMailMerge ) {
+ var datatab = me.getApplication().getController('DataTab');
+ datatab.setApi(me.api).setConfig({toolbar: me});
+
+ datatab = datatab.getView('DataTab');
+ Array.prototype.push.apply(me.toolbar.lockControls, datatab.getButtons());
+ me.toolbar.btnsSortDown = datatab.getButtons('sort-down');
+ me.toolbar.btnsSortUp = datatab.getButtons('sort-up');
+ me.toolbar.btnsSetAutofilter = datatab.getButtons('set-filter');
+ me.toolbar.btnsClearAutofilter = datatab.getButtons('clear-filter');
+
if ( !config.isOffline ) {
tab = {action: 'pivot', caption: me.textPivot};
$panel = me.getApplication().getController('PivotTable').createToolbarPanel();
if ($panel) {
- me.toolbar.addTab(tab, $panel, 3);
+ me.toolbar.addTab(tab, $panel, 4);
me.toolbar.setVisible('pivot', true);
}
}
@@ -3116,7 +3116,7 @@ define([
var tab = {action: 'review', caption: me.toolbar.textTabCollaboration};
var $panel = me.getApplication().getController('Common.Controllers.ReviewChanges').createToolbarPanel();
if ( $panel )
- me.toolbar.addTab(tab, $panel, 4);
+ me.toolbar.addTab(tab, $panel, 5);
if (!(config.customization && config.customization.compactHeader)) {
// hide 'print' and 'save' buttons group and next separator
@@ -3135,7 +3135,7 @@ define([
tab = {action: 'protect', caption: me.toolbar.textTabProtect};
$panel = me.getApplication().getController('Common.Controllers.Protection').createToolbarPanel();
if ($panel)
- me.toolbar.addTab(tab, $panel, 5);
+ me.toolbar.addTab(tab, $panel, 6);
}
}
}
diff --git a/apps/spreadsheeteditor/main/app/template/CellSettings.template b/apps/spreadsheeteditor/main/app/template/CellSettings.template
index 59be2c71d..f02f4417d 100644
--- a/apps/spreadsheeteditor/main/app/template/CellSettings.template
+++ b/apps/spreadsheeteditor/main/app/template/CellSettings.template
@@ -60,15 +60,5 @@