diff --git a/apps/documenteditor/main/app/view/TableSettings.js b/apps/documenteditor/main/app/view/TableSettings.js
index 6661e66e3..a93e3aae2 100644
--- a/apps/documenteditor/main/app/view/TableSettings.js
+++ b/apps/documenteditor/main/app/view/TableSettings.js
@@ -51,7 +51,8 @@ define([
'common/main/lib/component/ComboDataView',
'common/main/lib/view/InsertTableDialog',
'documenteditor/main/app/view/TableSettingsAdvanced',
- 'documenteditor/main/app/view/TableFormulaDialog'
+ 'documenteditor/main/app/view/TableFormulaDialog',
+ 'documenteditor/main/app/view/TableToTextDialog'
], function (menuTemplate, $, _, Backbone) {
'use strict';
@@ -421,6 +422,16 @@ define([
this.lockedControls.push(this.btnAddFormula);
this.btnAddFormula.on('click', _.bind(this.onAddFormula, this));
+ this.btnConvert = new Common.UI.Button({
+ parentEl: $('#table-btn-convert-to-text'),
+ cls : 'btn-toolbar',
+ iconCls : 'toolbar__icon btn-remove-duplicates',
+ caption : this.textConvert,
+ style : 'width: 100%;text-align: left;'
+ });
+ this.btnConvert.on('click', _.bind(this.onConvertTable, this));
+ this.lockedControls.push(this.btnConvert);
+
this.linkAdvanced = $('#table-advanced-link');
$(this.el).on('click', '#table-advanced-link', _.bind(this.openAdvancedSettings, this));
},
@@ -788,6 +799,21 @@ define([
}
},
+ onConvertTable: function(e) {
+ var me = this;
+ if (me.api && !this._locked){
+ (new DE.Views.TableToTextDialog({
+ handler: function(dlg, result) {
+ if (result == 'ok') {
+ var settings = dlg.getSettings();
+ me.api.asc_ConvertTableToText(settings.type, settings.separator, settings.nested);
+ }
+ me.fireEvent('editcomplete', me);
+ }
+ })).show();
+ }
+ },
+
setLocked: function (locked) {
this._locked = locked;
},
@@ -858,7 +884,8 @@ define([
txtTable_Light: 'Light',
txtTable_Dark: 'Dark',
txtTable_Colorful: 'Colorful',
- txtTable_Accent: 'Accent'
+ txtTable_Accent: 'Accent',
+ textConvert: 'Convert Table to Text'
}, DE.Views.TableSettings || {}));
});
\ No newline at end of file
diff --git a/apps/documenteditor/main/app/view/TableToTextDialog.js b/apps/documenteditor/main/app/view/TableToTextDialog.js
new file mode 100644
index 000000000..9d8aedc8f
--- /dev/null
+++ b/apps/documenteditor/main/app/view/TableToTextDialog.js
@@ -0,0 +1,218 @@
+/*
+ *
+ * (c) Copyright Ascensio System SIA 2010-2021
+ *
+ * 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
+ *
+ */
+/**
+ * TableToTextDialog.js
+ *
+ * Created by Julia Radzhabova on 15/04/21
+ * Copyright (c) 2021 Ascensio System SIA. All rights reserved.
+ *
+ */
+
+define([
+ 'common/main/lib/component/Window',
+ 'common/main/lib/component/CheckBox',
+ 'common/main/lib/component/RadioBox'
+], function () { 'use strict';
+
+ DE.Views.TableToTextDialog = Common.UI.Window.extend(_.extend({
+ options: {
+ width: 240,
+ height: 254,
+ header: true,
+ style: 'min-width: 240px;',
+ cls: 'modal-dlg',
+ buttons: ['ok', 'cancel']
+ },
+
+ initialize : function(options) {
+ _.extend(this.options, {
+ title: this.textTitle
+ }, options || {});
+
+ this.template = [
+ '