[SSE] Bug 43869
This commit is contained in:
parent
c70db921eb
commit
8d88fe6aca
|
@ -57,6 +57,7 @@ define([
|
||||||
'spreadsheeteditor/main/app/view/FormatSettingsDialog',
|
'spreadsheeteditor/main/app/view/FormatSettingsDialog',
|
||||||
'spreadsheeteditor/main/app/view/PageMarginsDialog',
|
'spreadsheeteditor/main/app/view/PageMarginsDialog',
|
||||||
'spreadsheeteditor/main/app/view/HeaderFooterDialog',
|
'spreadsheeteditor/main/app/view/HeaderFooterDialog',
|
||||||
|
'spreadsheeteditor/main/app/view/PrintTitlesDialog',
|
||||||
'spreadsheeteditor/main/app/view/ScaleDialog'
|
'spreadsheeteditor/main/app/view/ScaleDialog'
|
||||||
], function () { 'use strict';
|
], function () { 'use strict';
|
||||||
|
|
||||||
|
@ -380,6 +381,7 @@ define([
|
||||||
toolbar.btnsEditHeader.forEach(function(button) {
|
toolbar.btnsEditHeader.forEach(function(button) {
|
||||||
button.on('click', _.bind(me.onEditHeaderClick, me));
|
button.on('click', _.bind(me.onEditHeaderClick, me));
|
||||||
});
|
});
|
||||||
|
toolbar.btnPrintTitles.on('click', _.bind(this.onPrintTitlesClick, this));
|
||||||
|
|
||||||
Common.Gateway.on('insertimage', _.bind(this.insertImage, this));
|
Common.Gateway.on('insertimage', _.bind(this.insertImage, this));
|
||||||
|
|
||||||
|
@ -1878,14 +1880,14 @@ define([
|
||||||
|
|
||||||
onApiLockDocumentProps: function(nIndex) {
|
onApiLockDocumentProps: function(nIndex) {
|
||||||
if (this._state.lock_doc!==true && nIndex == this.api.asc_getActiveWorksheetIndex()) {
|
if (this._state.lock_doc!==true && nIndex == this.api.asc_getActiveWorksheetIndex()) {
|
||||||
this.toolbar.lockToolbar(SSE.enumLock.docPropsLock, true, {array: [this.toolbar.btnPageSize, this.toolbar.btnPageMargins, this.toolbar.btnPageOrient, this.toolbar.btnScale]});
|
this.toolbar.lockToolbar(SSE.enumLock.docPropsLock, true, {array: [this.toolbar.btnPageSize, this.toolbar.btnPageMargins, this.toolbar.btnPageOrient, this.toolbar.btnScale, this.toolbar.btnPrintTitles]});
|
||||||
this._state.lock_doc = true;
|
this._state.lock_doc = true;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
onApiUnLockDocumentProps: function(nIndex) {
|
onApiUnLockDocumentProps: function(nIndex) {
|
||||||
if (this._state.lock_doc!==false && nIndex == this.api.asc_getActiveWorksheetIndex()) {
|
if (this._state.lock_doc!==false && nIndex == this.api.asc_getActiveWorksheetIndex()) {
|
||||||
this.toolbar.lockToolbar(SSE.enumLock.docPropsLock, false, {array: [this.toolbar.btnPageSize, this.toolbar.btnPageMargins, this.toolbar.btnPageOrient, this.toolbar.btnScale]});
|
this.toolbar.lockToolbar(SSE.enumLock.docPropsLock, false, {array: [this.toolbar.btnPageSize, this.toolbar.btnPageMargins, this.toolbar.btnPageOrient, this.toolbar.btnScale, this.toolbar.btnPrintTitles]});
|
||||||
this._state.lock_doc = false;
|
this._state.lock_doc = false;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -3453,6 +3455,29 @@ define([
|
||||||
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
|
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
onPrintTitlesClick: function(btn) {
|
||||||
|
if (this.api) {
|
||||||
|
var win, props,
|
||||||
|
me = this;
|
||||||
|
win = new SSE.Views.PrintTitlesDialog({
|
||||||
|
api: me.api,
|
||||||
|
handler: function(dlg, result) {
|
||||||
|
if (result == 'ok') {
|
||||||
|
props = dlg.getSettings();
|
||||||
|
me.api.asc_changePrintTitles(props);
|
||||||
|
Common.NotificationCenter.trigger('edit:complete', me.toolbar);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
win.show();
|
||||||
|
win.setSettings(me.api.asc_getPageOptions(me.api.asc_getActiveWorksheetIndex()));
|
||||||
|
|
||||||
|
Common.component.Analytics.trackEvent('ToolBar', 'Print Titles');
|
||||||
|
}
|
||||||
|
|
||||||
|
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
|
||||||
|
},
|
||||||
|
|
||||||
textEmptyImgUrl : 'You need to specify image URL.',
|
textEmptyImgUrl : 'You need to specify image URL.',
|
||||||
warnMergeLostData : 'Operation can destroy data in the selected cells.<br>Continue?',
|
warnMergeLostData : 'Operation can destroy data in the selected cells.<br>Continue?',
|
||||||
textWarning : 'Warning',
|
textWarning : 'Warning',
|
||||||
|
|
|
@ -153,6 +153,7 @@
|
||||||
<span class="btn-slot text x-huge" id="slot-btn-printarea"></span>
|
<span class="btn-slot text x-huge" id="slot-btn-printarea"></span>
|
||||||
<span class="btn-slot text x-huge slot-editheader"></span>
|
<span class="btn-slot text x-huge slot-editheader"></span>
|
||||||
<span class="btn-slot text" id="slot-btn-scale"></span>
|
<span class="btn-slot text" id="slot-btn-scale"></span>
|
||||||
|
<span class="btn-slot text x-huge" id="slot-btn-printtitles"></span>
|
||||||
</div>
|
</div>
|
||||||
<div class="separator long"></div>
|
<div class="separator long"></div>
|
||||||
<div class="group">
|
<div class="group">
|
||||||
|
|
291
apps/spreadsheeteditor/main/app/view/PrintTitlesDialog.js
Normal file
291
apps/spreadsheeteditor/main/app/view/PrintTitlesDialog.js
Normal file
|
@ -0,0 +1,291 @@
|
||||||
|
/*
|
||||||
|
*
|
||||||
|
* (c) Copyright Ascensio System SIA 2010-2020
|
||||||
|
*
|
||||||
|
* 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
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* PrintTitlesDialog.js
|
||||||
|
*
|
||||||
|
* Created by Julia Radzhabova on 17.03.2020
|
||||||
|
* Copyright (c) 2020 Ascensio System SIA. All rights reserved.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
define([
|
||||||
|
'common/main/lib/component/Window',
|
||||||
|
'common/main/lib/component/MetricSpinner'
|
||||||
|
], function () { 'use strict';
|
||||||
|
|
||||||
|
SSE.Views.PrintTitlesDialog = Common.UI.Window.extend(_.extend({
|
||||||
|
options: {
|
||||||
|
width: 300,
|
||||||
|
header: true,
|
||||||
|
style: 'min-width: 216px;',
|
||||||
|
cls: 'modal-dlg',
|
||||||
|
id: 'window-page-margins',
|
||||||
|
buttons: ['ok', 'cancel']
|
||||||
|
},
|
||||||
|
|
||||||
|
initialize : function(options) {
|
||||||
|
_.extend(this.options, {
|
||||||
|
title: this.textTitle
|
||||||
|
}, options || {});
|
||||||
|
|
||||||
|
this.template = [
|
||||||
|
'<div class="box" style="height: 100px;">',
|
||||||
|
'<table cols="2" style="width: 100%;margin-bottom: 10px;">',
|
||||||
|
'<tr>',
|
||||||
|
'<td colspan="2" style="padding-right: 10px;">',
|
||||||
|
'<label class="input-label">' + this.textTop + '</label>',
|
||||||
|
'</td>',
|
||||||
|
'</tr>',
|
||||||
|
'<tr>',
|
||||||
|
'<td style="padding-right: 10px;padding-bottom: 16px;">',
|
||||||
|
'<div id="print-titles-txt-top"></div>',
|
||||||
|
'</td>',
|
||||||
|
'<td style="padding-bottom: 16px;">',
|
||||||
|
'<div id="print-titles-presets-top"></div>',
|
||||||
|
'</td>',
|
||||||
|
'</tr>',
|
||||||
|
'<tr>',
|
||||||
|
'<td colspan="2" style="padding-right: 10px;">',
|
||||||
|
'<label class="input-label">' + this.textLeft + '</label>',
|
||||||
|
'</td>',
|
||||||
|
'</tr>',
|
||||||
|
'<tr>',
|
||||||
|
'<td style="padding-right: 10px;">',
|
||||||
|
'<div id="print-titles-txt-left"></div>',
|
||||||
|
'</td>',
|
||||||
|
'<td>',
|
||||||
|
'<div id="print-titles-presets-left"></div>',
|
||||||
|
'</td>',
|
||||||
|
'</tr>',
|
||||||
|
'</table>',
|
||||||
|
'</div>',
|
||||||
|
'<div class="separator horizontal"/>'
|
||||||
|
].join('');
|
||||||
|
|
||||||
|
this.options.tpl = _.template(this.template)(this.options);
|
||||||
|
this.api = this.options.api;
|
||||||
|
Common.UI.Window.prototype.initialize.call(this, this.options);
|
||||||
|
this.dataRangeTop = '';
|
||||||
|
this.dataRangeLeft = '';
|
||||||
|
},
|
||||||
|
|
||||||
|
render: function() {
|
||||||
|
Common.UI.Window.prototype.render.call(this);
|
||||||
|
|
||||||
|
var me = this;
|
||||||
|
this.menuAddAlign = function(menuRoot, left, top) {
|
||||||
|
var self = this;
|
||||||
|
if (!$window.hasClass('notransform')) {
|
||||||
|
$window.addClass('notransform');
|
||||||
|
menuRoot.addClass('hidden');
|
||||||
|
setTimeout(function() {
|
||||||
|
menuRoot.removeClass('hidden');
|
||||||
|
menuRoot.css({left: left, top: top});
|
||||||
|
self.options.additionalAlign = null;
|
||||||
|
}, 300);
|
||||||
|
} else {
|
||||||
|
menuRoot.css({left: left, top: top});
|
||||||
|
self.options.additionalAlign = null;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
this.txtRangeTop = new Common.UI.InputField({
|
||||||
|
el : $('#print-titles-txt-top'),
|
||||||
|
style : 'width: 100%;',
|
||||||
|
allowBlank : true,
|
||||||
|
validateOnChange: true,
|
||||||
|
validation : function(value) {
|
||||||
|
if (_.isEmpty(value)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
var isvalid = me.api.asc_checkDataRange(Asc.c_oAscSelectionDialogType.Chart, value, false);
|
||||||
|
return (isvalid==Asc.c_oAscError.ID.DataRangeError) ? me.textInvalidRange : true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
this.btnPresetsTop = new Common.UI.Button({
|
||||||
|
cls: 'btn-text-menu-default',
|
||||||
|
caption: this.textRepeat,
|
||||||
|
style: 'width: 95px;',
|
||||||
|
menu: new Common.UI.Menu({
|
||||||
|
style: 'min-width: 100px;',
|
||||||
|
maxHeight: 200,
|
||||||
|
additionalAlign: this.menuAddAlign,
|
||||||
|
items: [
|
||||||
|
{caption: this.textSelectRange, value: 'select'},
|
||||||
|
{caption: this.textFrozenRows, value: Asc.c_oAscHeaderFooterField.pageCount},
|
||||||
|
{caption: this.textFirstRow, value: Asc.c_oAscHeaderFooterField.date},
|
||||||
|
{caption: '--'},
|
||||||
|
{caption: this.textNoRepeat, value: 'empty'}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
});
|
||||||
|
this.btnPresetsTop.render( $('#print-titles-presets-top')) ;
|
||||||
|
this.btnPresetsTop.menu.on('item:click', _.bind(this.onPresetSelect, this, 'top'));
|
||||||
|
|
||||||
|
this.txtRangeLeft = new Common.UI.InputField({
|
||||||
|
el : $('#print-titles-txt-left'),
|
||||||
|
style : 'width: 100%;',
|
||||||
|
allowBlank : true,
|
||||||
|
validateOnChange: true,
|
||||||
|
validation : function(value) {
|
||||||
|
if (_.isEmpty(value)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
var isvalid = me.api.asc_checkDataRange(Asc.c_oAscSelectionDialogType.Chart, value, false);
|
||||||
|
return (isvalid==Asc.c_oAscError.ID.DataRangeError) ? me.textInvalidRange : true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
this.btnPresetsLeft = new Common.UI.Button({
|
||||||
|
cls: 'btn-text-menu-default',
|
||||||
|
caption: this.textRepeat,
|
||||||
|
style: 'width: 95px;',
|
||||||
|
menu: new Common.UI.Menu({
|
||||||
|
style: 'min-width: 100px;',
|
||||||
|
maxHeight: 200,
|
||||||
|
additionalAlign: this.menuAddAlign,
|
||||||
|
items: [
|
||||||
|
{caption: this.textSelectRange, value: 'select'},
|
||||||
|
{caption: this.textFrozenCols, value: Asc.c_oAscHeaderFooterField.pageCount},
|
||||||
|
{caption: this.textFirstCol, value: Asc.c_oAscHeaderFooterField.date},
|
||||||
|
{caption: '--'},
|
||||||
|
{caption: this.textNoRepeat, value: 'empty'}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
});
|
||||||
|
this.btnPresetsLeft.render( $('#print-titles-presets-left')) ;
|
||||||
|
this.btnPresetsLeft.menu.on('item:click', _.bind(this.onPresetSelect, this, 'left'));
|
||||||
|
|
||||||
|
var $window = this.getChild();
|
||||||
|
$window.find('.dlg-btn').on('click', _.bind(this.onBtnClick, this));
|
||||||
|
$window.find('input').on('keypress', _.bind(this.onKeyPress, this));
|
||||||
|
},
|
||||||
|
|
||||||
|
_handleInput: function(state) {
|
||||||
|
if (this.options.handler)
|
||||||
|
this.options.handler.call(this, this, state);
|
||||||
|
|
||||||
|
this.close();
|
||||||
|
},
|
||||||
|
|
||||||
|
onBtnClick: function(event) {
|
||||||
|
this._handleInput(event.currentTarget.attributes['result'].value);
|
||||||
|
},
|
||||||
|
|
||||||
|
onKeyPress: function(event) {
|
||||||
|
if (event.keyCode == Common.UI.Keys.RETURN) {
|
||||||
|
this._handleInput('ok');
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
setSettings: function (props) {
|
||||||
|
if (props) {
|
||||||
|
// var value = props.asc_getPrintTitlesWidth();
|
||||||
|
// this.txtRangeTop.setValue((value) ? value : '');
|
||||||
|
// this.dataRangeTop = value;
|
||||||
|
//
|
||||||
|
// value = props.asc_getPrintTitlesHeight();
|
||||||
|
// this.txtRangeLeft.setValue((value) ? value : '');
|
||||||
|
// this.dataRangeLeft = value;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
getSettings: function() {
|
||||||
|
var props = new Asc.asc_CPageOptions();
|
||||||
|
props.asc_setPrintTitlesWidth(this.txtRangeTop.getValue());
|
||||||
|
props.asc_setPrintTitlesHeight(this.txtRangeLeft.getValue());
|
||||||
|
return props;
|
||||||
|
},
|
||||||
|
|
||||||
|
onPresetSelect: function(type, menu, item) {
|
||||||
|
var txtRange = (type=='top') ? this.txtRangeTop : this.txtRangeLeft,
|
||||||
|
dataRangeValid = (type=='top') ? this.dataRangeTop : this.dataRangeLeft;
|
||||||
|
if (type=='top') {
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
}
|
||||||
|
if (item.value == 'select') {
|
||||||
|
var me = this;
|
||||||
|
if (me.api) {
|
||||||
|
var handlerDlg = function(dlg, result) {
|
||||||
|
if (result == 'ok') {
|
||||||
|
var valid = dlg.getSettings();
|
||||||
|
if (type=='top')
|
||||||
|
me.dataRangeTop = valid;
|
||||||
|
else
|
||||||
|
me.dataRangeLeft = valid;
|
||||||
|
txtRange.setValue(valid);
|
||||||
|
txtRange.checkValidate();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
var win = new SSE.Views.CellRangeDialog({
|
||||||
|
handler: handlerDlg
|
||||||
|
}).on('close', function() {
|
||||||
|
me.show();
|
||||||
|
});
|
||||||
|
|
||||||
|
var xy = me.$window.offset();
|
||||||
|
me.hide();
|
||||||
|
win.show(xy.left + 160, xy.top + 125);
|
||||||
|
win.setSettings({
|
||||||
|
api : me.api,
|
||||||
|
range : (!_.isEmpty(txtRange.getValue()) && (txtRange.checkValidate()==true)) ? txtRange.getValue() : dataRangeValid,
|
||||||
|
type : Asc.c_oAscSelectionDialogType.Chart
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} else if (item.value == 'empty') {
|
||||||
|
txtRange.setValue('');
|
||||||
|
if (type=='top')
|
||||||
|
this.dataRangeTop = '';
|
||||||
|
else
|
||||||
|
this.dataRangeLeft = '';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
textTitle: 'Print Titles',
|
||||||
|
textTop: 'Repeat rows at top',
|
||||||
|
textLeft: 'Repeat columns at left',
|
||||||
|
textRepeat: 'Repeat...',
|
||||||
|
textNoRepeat: 'Not repeat',
|
||||||
|
textSelectRange: 'Select range...',
|
||||||
|
textFrozenRows: 'Frozen rows',
|
||||||
|
textFrozenCols: 'Frozen columns',
|
||||||
|
textFirstRow: 'First row',
|
||||||
|
textFirstCol: 'First column',
|
||||||
|
textInvalidRange: 'ERROR! Invalid cells range'
|
||||||
|
|
||||||
|
}, SSE.Views.PrintTitlesDialog || {}))
|
||||||
|
});
|
|
@ -1338,6 +1338,14 @@ define([
|
||||||
me.mnuScale = me.btnScale.menu;
|
me.mnuScale = me.btnScale.menu;
|
||||||
me.mnuScale.on('show:after', _.bind(me.onAfterShowMenuScale, me));
|
me.mnuScale.on('show:after', _.bind(me.onAfterShowMenuScale, me));
|
||||||
|
|
||||||
|
me.btnPrintTitles = new Common.UI.Button({
|
||||||
|
id: 'tlbtn-printtitles',
|
||||||
|
cls: 'btn-toolbar x-huge icon-top',
|
||||||
|
iconCls: 'toolbar__icon btn-printtitles',
|
||||||
|
caption: me.capBtnPrintTitles,
|
||||||
|
lock : [_set.docPropsLock, _set.lostConnect, _set.coAuth]
|
||||||
|
});
|
||||||
|
|
||||||
me.btnImgAlign = new Common.UI.Button({
|
me.btnImgAlign = new Common.UI.Button({
|
||||||
cls: 'btn-toolbar x-huge icon-top',
|
cls: 'btn-toolbar x-huge icon-top',
|
||||||
iconCls: 'toolbar__icon btn-img-align',
|
iconCls: 'toolbar__icon btn-img-align',
|
||||||
|
@ -1393,7 +1401,7 @@ define([
|
||||||
me.btnInsertChart, me.btnColorSchemas,
|
me.btnInsertChart, me.btnColorSchemas,
|
||||||
me.btnCopy, me.btnPaste, me.listStyles, me.btnPrint,
|
me.btnCopy, me.btnPaste, me.listStyles, me.btnPrint,
|
||||||
/*me.btnSave,*/ me.btnClearStyle, me.btnCopyStyle,
|
/*me.btnSave,*/ me.btnClearStyle, me.btnCopyStyle,
|
||||||
me.btnPageMargins, me.btnPageSize, me.btnPageOrient, me.btnPrintArea, me.btnImgAlign, me.btnImgBackward, me.btnImgForward, me.btnImgGroup, me.btnScale
|
me.btnPageMargins, me.btnPageSize, me.btnPageOrient, me.btnPrintArea, me.btnPrintTitles, me.btnImgAlign, me.btnImgBackward, me.btnImgForward, me.btnImgGroup, me.btnScale
|
||||||
];
|
];
|
||||||
|
|
||||||
_.each(me.lockControls.concat([me.btnSave]), function(cmp) {
|
_.each(me.lockControls.concat([me.btnSave]), function(cmp) {
|
||||||
|
@ -1588,6 +1596,7 @@ define([
|
||||||
_injectComponent('#slot-btn-pagemargins', this.btnPageMargins);
|
_injectComponent('#slot-btn-pagemargins', this.btnPageMargins);
|
||||||
_injectComponent('#slot-btn-pagesize', this.btnPageSize);
|
_injectComponent('#slot-btn-pagesize', this.btnPageSize);
|
||||||
_injectComponent('#slot-btn-printarea', this.btnPrintArea);
|
_injectComponent('#slot-btn-printarea', this.btnPrintArea);
|
||||||
|
_injectComponent('#slot-btn-printtitles', this.btnPrintTitles);
|
||||||
_injectComponent('#slot-img-align', this.btnImgAlign);
|
_injectComponent('#slot-img-align', this.btnImgAlign);
|
||||||
_injectComponent('#slot-img-group', this.btnImgGroup);
|
_injectComponent('#slot-img-group', this.btnImgGroup);
|
||||||
_injectComponent('#slot-img-movefrwd', this.btnImgForward);
|
_injectComponent('#slot-img-movefrwd', this.btnImgForward);
|
||||||
|
@ -1664,6 +1673,7 @@ define([
|
||||||
_updateHint(this.btnPageSize, this.tipPageSize);
|
_updateHint(this.btnPageSize, this.tipPageSize);
|
||||||
_updateHint(this.btnPageMargins, this.tipPageMargins);
|
_updateHint(this.btnPageMargins, this.tipPageMargins);
|
||||||
_updateHint(this.btnPrintArea, this.tipPrintArea);
|
_updateHint(this.btnPrintArea, this.tipPrintArea);
|
||||||
|
_updateHint(this.btnPrintTitles, this.tipPrintTitles);
|
||||||
_updateHint(this.btnScale, this.tipScale);
|
_updateHint(this.btnScale, this.tipScale);
|
||||||
this.btnsEditHeader.forEach(function (btn) {
|
this.btnsEditHeader.forEach(function (btn) {
|
||||||
_updateHint(btn, me.tipEditHeader);
|
_updateHint(btn, me.tipEditHeader);
|
||||||
|
@ -2381,6 +2391,8 @@ define([
|
||||||
capBtnAddComment: 'Add Comment',
|
capBtnAddComment: 'Add Comment',
|
||||||
capBtnInsSymbol: 'Symbol',
|
capBtnInsSymbol: 'Symbol',
|
||||||
tipInsertSymbol: 'Insert symbol',
|
tipInsertSymbol: 'Insert symbol',
|
||||||
txtAutosumTip: 'Summation'
|
txtAutosumTip: 'Summation',
|
||||||
|
capBtnPrintTitles: 'Print Titles',
|
||||||
|
tipPrintTitles: 'Print titles'
|
||||||
}, SSE.Views.Toolbar || {}));
|
}, SSE.Views.Toolbar || {}));
|
||||||
});
|
});
|
Loading…
Reference in a new issue