Merge pull request #49 from ONLYOFFICE/hotfix/v4.2.4

Hotfix/v4.2.4
This commit is contained in:
Alexey Golubev 2017-01-09 12:35:54 +03:00 committed by GitHub
commit bdd4dc95d6
66 changed files with 1817 additions and 610 deletions

View file

@ -557,7 +557,7 @@
};
DocsAPI.DocEditor.version = function() {
return '4.2.0';
return '4.2.4';
};
MessageDispatcher = function(fn, scope) {

View file

@ -53,7 +53,7 @@
$dlgShare = common.view.modals.create('share');
var _encoded = encodeURIComponent(appConfig.shareUrl);
var _mailto = 'mailto:?subject=I have shared a document with you: ' + appConfig.docTitle + '&body=I have shared a document with you: ' + _encoded + '"';
var _mailto = 'mailto:?subject=I have shared a document with you: ' + appConfig.docTitle + '&body=I have shared a document with you: ' + _encoded;
$dlgShare.find('#btn-copyshort').on('click', copytext.bind(this, $dlgShare.find('#id-short-url')));
$dlgShare.find('.share-buttons > span').on('click', function(e){

View file

@ -430,10 +430,11 @@ define([
isGroup && decorateBtn(el.children('button'));
}
if (disabled) {
if (disabled || !Common.Utils.isGecko) {
var tip = this.cmpEl.data('bs.tooltip');
if (tip) {
tip.hide();
disabled && tip.hide();
!Common.Utils.isGecko && (tip.enabled = !disabled);
}
}
}
@ -466,8 +467,10 @@ define([
var cmpEl = this.cmpEl,
modalParents = cmpEl.closest('.asc-window');
if (cmpEl.data('bs.tooltip'))
cmpEl.removeData('bs.tooltip');
cmpEl.attr('data-toggle', 'tooltip');
cmpEl.tooltip('destroy').tooltip({
cmpEl.tooltip({
title : hint,
placement : this.options.hintAnchor || 'cursor'
});

View file

@ -84,7 +84,9 @@ define([
defaults: function() {
return {
id: Common.UI.getId(),
caption: ''
caption: '',
inline: false,
headername: undefined
}
}
});
@ -99,7 +101,8 @@ define([
id: Common.UI.getId(),
selected: false,
allowSelected: true,
value: null
value: null,
disabled: false
}
}
});
@ -140,6 +143,7 @@ define([
el.off('click').on('click', _.bind(this.onClick, this));
el.off('dblclick').on('dblclick', _.bind(this.onDblClick, this));
el.off('contextmenu').on('contextmenu', _.bind(this.onContextMenu, this));
el.toggleClass('disabled', this.model.get('disabled'));
if (!_.isUndefined(this.model.get('cls')))
el.addClass(this.model.get('cls'));
@ -157,10 +161,14 @@ define([
},
onClick: function(e) {
if (this.model.get('disabled')) return false;
this.trigger('click', this, this.model, e);
},
onDblClick: function(e) {
if (this.model.get('disabled')) return false;
this.trigger('dblclick', this, this.model, e);
},
@ -190,10 +198,15 @@ define([
template: _.template([
'<div class="dataview inner" style="<%= style %>">',
'<% _.each(groups, function(group) { %>',
'<div class="grouped-data" id="<%= group.id %>">',
'<div class="group-description">',
'<span><b><%= group.caption %></b></span>',
'</div>',
'<% if (group.headername !== undefined) { %>',
'<div class="header-name"><%= group.headername %></div>',
'<% } %>',
'<div class="grouped-data <% if (group.inline) { %> inline <% } %> <% if (!_.isEmpty(group.caption)) { %> margin <% } %>" id="<%= group.id %>">',
'<% if (!_.isEmpty(group.caption)) { %>',
'<div class="group-description">',
'<span><%= group.caption %></span>',
'</div>',
'<% } %>',
'<div class="group-items-container">',
'</div>',
'</div>',
@ -696,39 +709,29 @@ define([
fillIndexesArray: function() {
if (this.dataViewItems.length<=0) return;
var top, left,
el = $(this.dataViewItems[0].el),
itemW = el.outerWidth() + parseInt(el.css('margin-left')) + parseInt(el.css('margin-right')),
itemH = el.outerHeight() + parseInt(el.css('margin-top')) + parseInt(el.css('margin-bottom')),
offsetLeft = this.$el.offset().left,
offsetTop = this.$el.offset().top,
idxOffset = 0;
this._layoutParams = {
itemsIndexes: [],
columns: 0,
rows: 0
};
if (this.groups && this.groups.length > 0) {
var group_desc = this.cmpEl.find('.group-description:first');
if (group_desc.length>0)
offsetLeft += group_desc.width();
}
var el = $(this.dataViewItems[0].el),
itemW = el.outerWidth() + parseInt(el.css('margin-left')) + parseInt(el.css('margin-right')),
offsetLeft = this.$el.offset().left,
prevtop = -1, topIdx = 0, leftIdx = 0;
for (var i=0; i<this.dataViewItems.length; i++) {
top = Math.floor(($(this.dataViewItems[i].el).offset().top - offsetTop)/itemH) + idxOffset;
left = Math.floor(($(this.dataViewItems[i].el).offset().left - offsetLeft)/itemW);
if (top<0) {
idxOffset = -top;
top += idxOffset;
}
if (top > this._layoutParams.itemsIndexes.length-1) {
var top = $(this.dataViewItems[i].el).offset().top;
leftIdx = Math.floor(($(this.dataViewItems[i].el).offset().left - offsetLeft)/itemW);
if (top>prevtop) {
prevtop = top;
this._layoutParams.itemsIndexes.push([]);
topIdx = this._layoutParams.itemsIndexes.length-1;
}
this._layoutParams.itemsIndexes[top][left] = i;
this.dataViewItems[i].topIdx = top;
this.dataViewItems[i].leftIdx = left;
if (this._layoutParams.columns<left) this._layoutParams.columns = left;
this._layoutParams.itemsIndexes[topIdx][leftIdx] = i;
this.dataViewItems[i].topIdx = topIdx;
this.dataViewItems[i].leftIdx = leftIdx;
if (this._layoutParams.columns<leftIdx) this._layoutParams.columns = leftIdx;
}
this._layoutParams.rows = this._layoutParams.itemsIndexes.length;
this._layoutParams.columns++;

View file

@ -244,6 +244,10 @@ define([
if (this.$input) this.$input.val(value);
},
getRawValue: function () {
return this.$input.val();
},
setValue: function(value, suspendchange) {
var showError = false;
this._fromKeyDown = false;
@ -290,6 +294,10 @@ define([
}
},
setMask: function(value) {
this.options.maskExp = value;
},
onMouseDown: function (type, e) {
if ( this.disabled ) return;
@ -336,7 +344,7 @@ define([
}
} else if (e.keyCode==Common.UI.Keys.RETURN) {
if (this.options.defaultUnit && this.options.defaultUnit.length) {
var value = this.$input.val();
var value = this.getRawValue();
if (this.value != value) {
this.onEnterValue();
return false;
@ -384,7 +392,7 @@ define([
onEnterValue: function() {
if (this.$input) {
var val = this.$input.val();
var val = this.getRawValue();
this.setValue((val==='') ? this.value : val );
this.trigger('entervalue', this);
}
@ -392,7 +400,7 @@ define([
onBlur: function(e){
if (this.$input) {
var val = this.$input.val();
var val = this.getRawValue();
this.setValue((val==='') ? this.value : val );
if (this.options.hold && this.switches.fromKeyDown)
this._stopSpin();
@ -430,7 +438,7 @@ define([
if (!me.readOnly) {
var val = me.options.step;
if (me._fromKeyDown) {
val = this.$input.val();
val = this.getRawValue();
val = _.isEmpty(val) ? me.oldValue : parseFloat(val);
} else if(me.getValue() !== '') {
if (me.options.allowAuto && me.getValue()==me.options.autoText) {
@ -451,7 +459,7 @@ define([
if (!me.readOnly) {
var val = me.options.step;
if (me._fromKeyDown) {
val = this.$input.val();
val = this.getRawValue();
val = _.isEmpty(val) ? me.oldValue : parseFloat(val);
} else if(me.getValue() !== '') {
if (me.options.allowAuto && me.getValue()==me.options.autoText) {
@ -520,4 +528,22 @@ define([
return v_out;
}
});
Common.UI.CustomSpinner = Common.UI.MetricSpinner.extend(_.extend({
initialize : function(options) {
this.options.toCustomFormat = (options.toCustomFormat) ? options.toCustomFormat : function(value) { return value; };
this.options.fromCustomFormat = (options.fromCustomFormat) ? options.fromCustomFormat : function(value) { return value; };
Common.UI.MetricSpinner.prototype.initialize.call(this, options);
},
setRawValue: function (value) {
if (this.$input) this.$input.val(this.options.toCustomFormat(value));
},
getRawValue: function () {
return this.options.fromCustomFormat(this.$input.val());
}
}, Common.UI.CustomSpinner || {}));
});

View file

@ -120,8 +120,8 @@
this.getBSTip().show(at);
},
hide: function() {
this.getBSTip().hide();
hide: function(callback) {
this.getBSTip().hide(callback);
},
setTitle: function(title) {

View file

@ -102,57 +102,33 @@ Common.Utils = _.extend(new(function() {
Chart : 7,
MailMerge : 8
},
isMobile = /android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(navigator.userAgent || navigator.vendor || window.opera),
me = this,
checkSize = function() {
me.zoom = 1;
if (isChrome && !isOpera && document && document.firstElementChild && document.body)
if (isChrome && !isOpera && !isMobile && document && document.firstElementChild && document.body)
{
if (false)
{
// этот код - рабочий, но только если этот ифрейм открыт на весь размер браузера
// (window.outerWidth и window.innerWidth зависимы)
if (window.innerWidth > 300)
me.zoom = window.outerWidth / window.innerWidth;
if (Math.abs(me.zoom - 1) < 0.1)
me.zoom = 1;
me.zoom = window.outerWidth / window.innerWidth;
var _devicePixelRatio = window.devicePixelRatio / me.zoom;
// device pixel ratio: кратно 0.5
_devicePixelRatio = (5 * (((2.5 + 10 * _devicePixelRatio) / 5) >> 0)) / 10;
me.zoom = window.devicePixelRatio / _devicePixelRatio;
// chrome 54.x: zoom = "reset" - clear retina zoom (windows)
//document.firstElementChild.style.zoom = "reset";
document.firstElementChild.style.zoom = 1.0 / me.zoom;
}
else
{
// делаем простую проверку
// считаем: 0 < window.devicePixelRatio < 2 => _devicePixelRatio = 1; zoom = window.devicePixelRatio / _devicePixelRatio;
// считаем: window.devicePixelRatio >= 2 => _devicePixelRatio = 2; zoom = window.devicePixelRatio / _devicePixelRatio;
if (window.devicePixelRatio > 0.1)
{
if (window.devicePixelRatio < 1.99)
{
var _devicePixelRatio = 1;
me.zoom = window.devicePixelRatio / _devicePixelRatio;
}
else
{
var _devicePixelRatio = 2;
me.zoom = window.devicePixelRatio / _devicePixelRatio;
}
// chrome 54.x: zoom = "reset" - clear retina zoom (windows)
//document.firstElementChild.style.zoom = "reset";
document.firstElementChild.style.zoom = 1.0 / me.zoom;
}
else
document.firstElementChild.style.zoom = "normal";
}
// делаем простую проверку
// считаем: 0 < window.devicePixelRatio < 2 => _devicePixelRatio = 1; zoom = window.devicePixelRatio / _devicePixelRatio;
// считаем: window.devicePixelRatio >= 2 => _devicePixelRatio = 2; zoom = window.devicePixelRatio / _devicePixelRatio;
if (window.devicePixelRatio > 0.1)
{
if (window.devicePixelRatio < 1.99)
{
var _devicePixelRatio = 1;
me.zoom = window.devicePixelRatio / _devicePixelRatio;
}
else
{
var _devicePixelRatio = 2;
me.zoom = window.devicePixelRatio / _devicePixelRatio;
}
// chrome 54.x: zoom = "reset" - clear retina zoom (windows)
//document.firstElementChild.style.zoom = "reset";
document.firstElementChild.style.zoom = 1.0 / me.zoom;
}
else
document.firstElementChild.style.zoom = "normal";
}
me.innerWidth = window.innerWidth * me.zoom;
me.innerHeight = window.innerHeight * me.zoom;
@ -648,6 +624,48 @@ Common.Utils.applyCustomization = function(config, elmap) {
}
};
Common.Utils.applyCustomizationPlugins = function(plugins) {
if (!plugins || plugins.length<1) return;
var _createXMLHTTPObject = function() {
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
};
var _getPluginCode = function(url) {
if (!url) return '';
try {
var xhrObj = _createXMLHTTPObject();
if (xhrObj && url) {
xhrObj.open('GET', url, false);
xhrObj.send('');
if (xhrObj.status == 200)
eval(xhrObj.responseText);
}
}
catch (e) {}
return null;
};
plugins.forEach(function(url){
if (url) _getPluginCode(url);
});
};
Common.Utils.fillUserInfo = function(info, lang, defname) {
var _user = info || {};
!_user.id && (_user.id = ('uid-' + Date.now()));

View file

@ -52,7 +52,7 @@ define([
initialize: function(options) {
Common.UI.BaseView.prototype.initialize.call(this,arguments);
this.txtVersionNum = '4.2';
this.txtVersionNum = '4.3';
this.txtAscMail = 'support@onlyoffice.com';
this.txtAscTelNum = '+371 660-16425';
this.txtAscUrl = 'www.onlyoffice.com';

View file

@ -31,26 +31,43 @@
clear: left;
overflow: hidden;
& > div {
&.inline {
display: inline-block;
&.margin .group-items-container {
margin-right: 20px;
}
}
.group-items-container {
overflow: hidden;
margin-bottom: 5px;
& > div {
display: inline-block;
float: left;
margin: 4px;
cursor: pointer;
margin: 2px 4px 4px;
&:not(.disabled) {
cursor: pointer;
}
&.disabled {
opacity: 0.5;
}
.box-shadow(0 0 0 1px @gray);
&:hover,
&.selected {
&:hover:not(.disabled),
&.selected:not(.disabled) {
.box-shadow(0 0 0 2px @primary);
}
}
}
}
.header-name {
padding: 10px 2px 12px 4px;
font-weight: bold;
cursor: default;
}
}

View file

@ -5,7 +5,7 @@
background: @gray-light;
border: 1px solid @gray-dark;
height: 35px;
z-index: 1000;
z-index: @zindex-dropdown - 1;
.review-group {
display: inline-block;

View file

@ -50,3 +50,7 @@
word-wrap: break-word;
max-width: 300px;
}
.link-tooltip .tooltip-inner {
max-width: 500px;
}

View file

@ -178,6 +178,7 @@ require([
'documenteditor/main/app/controller/RightMenu',
'documenteditor/main/app/controller/LeftMenu',
'documenteditor/main/app/controller/Main',
'documenteditor/main/app/view/FileMenuPanels',
'documenteditor/main/app/view/ParagraphSettings',
'documenteditor/main/app/view/HeaderFooterSettings',
'documenteditor/main/app/view/ImageSettings',

View file

@ -283,7 +283,7 @@ define([
this.api.SetTextBoxInputMode(parseInt(value) == 1);
/** coauthoring begin **/
if (this.mode.isEdit && this.mode.canLicense && !this.mode.isOffline && this.mode.canCoAuthoring) {
if (this.mode.isEdit && !this.mode.isOffline && this.mode.canCoAuthoring) {
value = Common.localStorage.getItem("de-settings-coauthmode");
var fast_coauth = (value===null || parseInt(value) == 1);
this.api.asc_SetFastCollaborative(fast_coauth);

View file

@ -147,6 +147,7 @@ define([
this.editorConfig = {};
this.appOptions = {};
this.plugins = undefined;
this.UICustomizePlugins = [];
Common.Gateway.on('init', _.bind(this.loadConfig, this));
Common.Gateway.on('showmessage', _.bind(this.onExternalMessage, this));
Common.Gateway.on('opendocument', _.bind(this.loadDocument, this));
@ -821,7 +822,7 @@ define([
me.api.SetTextBoxInputMode(value!==null && parseInt(value) == 1);
/** coauthoring begin **/
if (me.appOptions.isEdit && me.appOptions.canLicense && !me.appOptions.isOffline && me.appOptions.canCoAuthoring) {
if (me.appOptions.isEdit && !me.appOptions.isOffline && me.appOptions.canCoAuthoring) {
value = Common.localStorage.getItem("de-settings-coauthmode");
if (value===null && Common.localStorage.getItem("de-settings-autosave")===null &&
me.appOptions.customization && me.appOptions.customization.autosave===false) {
@ -860,7 +861,7 @@ define([
application.getController('Common.Controllers.ExternalMergeEditor').setApi(this.api).loadConfig({config:this.editorConfig, customization: this.editorConfig.customization});
pluginsController.setApi(me.api);
me.updatePlugins(me.plugins);
me.updatePlugins(me.plugins, false);
me.api.asc_registerCallback('asc_onPluginsInit', _.bind(me.updatePluginsList, me));
documentHolderController.setApi(me.api);
@ -905,9 +906,14 @@ define([
toolbarController.onApiCoAuthoringDisconnect();
me.api.UpdateInterfaceState();
me.fillTextArt(me.api.asc_getTextArtPreviews());
if (me.appOptions.canBrandingExt)
Common.NotificationCenter.trigger('document:ready', 'main');
}
}, 50);
}
} else if (me.appOptions.canBrandingExt)
Common.NotificationCenter.trigger('document:ready', 'main');
if (this.appOptions.canAnalytics && false)
Common.component.Analytics.initialize('UA-12442749-13', 'Document Editor');
@ -1013,7 +1019,9 @@ define([
params.asc_getTrial() && headerView.setDeveloperMode(true);
this.appOptions.canRename && headerView.setCanRename(true);
this.appOptions.canBrandingExt = params.asc_getCanBranding() && (typeof this.editorConfig.customization == 'object');
this.appOptions.canBrandingExt = params.asc_getCanBranding() && (typeof this.editorConfig.customization == 'object' || this.editorConfig.plugins);
if (this.appOptions.canBrandingExt)
this.updatePlugins(this.plugins, true);
this.applyModeCommonElements();
this.applyModeEditorElements();
@ -1464,13 +1472,15 @@ define([
},
hidePreloader: function() {
if (!!this.appOptions.customization && !this.appOptions.customization.done) {
this.appOptions.customization.done = true;
if (!this.appOptions.isDesktopApp)
if (!this._state.customizationDone) {
this._state.customizationDone = true;
if (this.appOptions.customization && !this.appOptions.isDesktopApp)
this.appOptions.customization.about = true;
Common.Utils.applyCustomization(this.appOptions.customization, mapCustomizationElements);
if (this.appOptions.canBrandingExt)
if (this.appOptions.canBrandingExt) {
Common.Utils.applyCustomization(this.appOptions.customization, mapCustomizationExtElements);
Common.Utils.applyCustomizationPlugins(this.UICustomizePlugins);
}
}
Common.NotificationCenter.trigger('layout:changed', 'main');
@ -1745,7 +1755,7 @@ define([
},
applySettings: function() {
if (this.appOptions.isEdit && this.appOptions.canLicense && !this.appOptions.isOffline && this.appOptions.canCoAuthoring) {
if (this.appOptions.isEdit && !this.appOptions.isOffline && this.appOptions.canCoAuthoring) {
var value = Common.localStorage.getItem("de-settings-coauthmode"),
oldval = this._state.fastCoauth;
this._state.fastCoauth = (value===null || parseInt(value) == 1);
@ -1803,8 +1813,11 @@ define([
if (url) this.iframePrint.src = url;
},
updatePlugins: function(plugins) { // plugins from config
if (!plugins || !plugins.pluginsData || plugins.pluginsData.length<1) return;
updatePlugins: function(plugins, uiCustomize) { // plugins from config
if (!plugins) return;
var pluginsData = (uiCustomize) ? plugins.UIpluginsData : plugins.pluginsData;
if (!pluginsData || pluginsData.length<1) return;
var _createXMLHTTPObject = function() {
var xmlhttp;
@ -1842,7 +1855,7 @@ define([
var arr = [],
baseUrl = plugins.url;
plugins.pluginsData.forEach(function(item){
pluginsData.forEach(function(item){
var url = item;
if (!/(^https?:\/\/)/i.test(url) && !/(^www.)/i.test(item))
url = baseUrl + item;
@ -1855,14 +1868,14 @@ define([
autoStartGuid: plugins.autoStartGuid,
url: plugins.url,
pluginsData: arr
});
}, !!uiCustomize);
},
updatePluginsList: function(plugins) {
updatePluginsList: function(plugins, uiCustomize) {
var pluginStore = this.getApplication().getCollection('Common.Collections.Plugins'),
isEdit = this.appOptions.isEdit;
if (pluginStore && plugins) {
var arr = [];
if (plugins) {
var arr = [], arrUI = [];
plugins.pluginsData.forEach(function(item){
var variations = item.variations,
variationsArr = [];
@ -1873,7 +1886,9 @@ define([
isSupported = true; break;
}
}
if (isSupported && (isEdit || itemVar.isViewer))
if (isSupported && (isEdit || itemVar.isViewer)) {
var isRelativeUrl = !(/(^https?:\/\/)/i.test(itemVar.url) || /(^www.)/i.test(itemVar.url));
item.isUICustomizer ? arrUI.push((isRelativeUrl) ? ((item.baseUrl ? item.baseUrl : plugins.url) + itemVar.url) : itemVar.url) :
variationsArr.push(new Common.Models.PluginVariation({
description: itemVar.description,
index: variationsArr.length,
@ -1890,10 +1905,11 @@ define([
buttons: itemVar.buttons,
size: itemVar.size,
initOnSelectionChanged: itemVar.initOnSelectionChanged,
isRelativeUrl: !(/(^https?:\/\/)/i.test(itemVar.url) || /(^www.)/i.test(itemVar.url))
isRelativeUrl: isRelativeUrl
}));
}
});
if (variationsArr.length>0)
if (variationsArr.length>0 && !item.isUICustomizer)
arr.push(new Common.Models.Plugin({
name : item.name,
guid: item.guid,
@ -1903,11 +1919,15 @@ define([
}));
});
pluginStore.reset(arr);
if (uiCustomize!==false) // from ui customizer in editor config or desktop event
this.UICustomizePlugins = arrUI;
this.appOptions.pluginsPath = (plugins.url);
this.appOptions.canPlugins = (arr.length>0);
} else {
if (!uiCustomize) {
if (pluginStore) pluginStore.reset(arr);
this.appOptions.pluginsPath = (plugins.url);
this.appOptions.canPlugins = (arr.length>0);
}
} else if (!uiCustomize){
this.appOptions.pluginsPath = '';
this.appOptions.canPlugins = false;
}
@ -1916,7 +1936,7 @@ define([
if (plugins.autoStartGuid)
this.api.asc_pluginRun(plugins.autoStartGuid, 0, '');
}
this.getApplication().getController('LeftMenu').enablePlugins();
if (!uiCustomize) this.getApplication().getController('LeftMenu').enablePlugins();
},
leavePageText: 'You have unsaved changes in this document. Click \'Stay on this Page\' then \'Save\' to save them. Click \'Leave this Page\' to discard all the unsaved changes.',

View file

@ -53,7 +53,8 @@ define([
'documenteditor/main/app/view/MailMergeRecepients',
'documenteditor/main/app/view/StyleTitleDialog',
'documenteditor/main/app/view/PageMarginsDialog',
'documenteditor/main/app/view/PageSizeDialog'
'documenteditor/main/app/view/PageSizeDialog',
'documenteditor/main/app/view/NoteSettingsDialog'
], function () {
'use strict';
@ -92,7 +93,8 @@ define([
can_copycut: undefined,
pgmargins: undefined,
fontsize: undefined,
in_equation: false
in_equation: false,
in_chart: false
};
this.flg = {};
this.diagramEditor = null;
@ -264,6 +266,9 @@ define([
toolbar.mnuZoomIn.on('click', _.bind(this.onZoomInClick, this));
toolbar.mnuZoomOut.on('click', _.bind(this.onZoomOutClick, this));
toolbar.btnInsertEquation.on('click', _.bind(this.onInsertEquationClick, this));
toolbar.btnNotes.menu.on('item:click', _.bind(this.onNotesClick, this));
toolbar.mnuGotoFootPrev.on('click', _.bind(this.onFootnotePrevClick, this));
toolbar.mnuGotoFootNext.on('click', _.bind(this.onFootnoteNextClick, this));
$('#id-save-style-plus, #id-save-style-link', toolbar.$el).on('click', this.onMenuSaveStyle.bind(this));
@ -563,6 +568,7 @@ define([
var pr, sh, i = -1, type,
paragraph_locked = false,
header_locked = false,
image_locked = false,
can_add_table = false,
can_add_image = false,
enable_dropcap = undefined,
@ -590,6 +596,7 @@ define([
in_header = true;
} else if (type === Asc.c_oAscTypeSelectElement.Image) {
in_image = in_header = true;
image_locked = pr.get_Locked();
if (pr && pr.get_ChartProperties())
in_chart = true;
} else if (type === Asc.c_oAscTypeSelectElement.Math) {
@ -670,16 +677,23 @@ define([
}
need_disable = paragraph_locked || header_locked || !can_add_image || in_equation;
if (need_disable != toolbar.btnInsertChart.isDisabled()) {
toolbar.btnInsertChart.setDisabled(need_disable);
if (need_disable != toolbar.btnInsertImage.isDisabled()) {
toolbar.btnInsertImage.setDisabled(need_disable);
toolbar.btnInsertShape.setDisabled(need_disable);
toolbar.btnInsertText.setDisabled(need_disable);
}
need_disable = need_disable || in_image;
if (need_disable != toolbar.mnuInsertTextArt.isDisabled())
toolbar.mnuInsertTextArt.setDisabled(need_disable);
if ((need_disable || in_image) != toolbar.mnuInsertTextArt.isDisabled())
toolbar.mnuInsertTextArt.setDisabled(need_disable || in_image);
if (in_chart !== this._state.in_chart) {
toolbar.btnInsertChart.updateHint(in_chart ? toolbar.tipChangeChart : toolbar.tipInsertChart);
this._state.in_chart = in_chart;
}
need_disable = in_chart && image_locked || !in_chart && need_disable;
if (need_disable != toolbar.btnInsertChart.isDisabled())
toolbar.btnInsertChart.setDisabled(need_disable);
need_disable = paragraph_locked || header_locked || in_chart || !can_add_image&&!in_equation;
if (need_disable !== toolbar.btnInsertEquation.isDisabled()) toolbar.btnInsertEquation.setDisabled(need_disable);
@ -1675,20 +1689,43 @@ define([
onSelectChart: function(picker, item, record) {
var me = this,
type = record.get('type');
type = record.get('type'),
chart = false;
if (!this.diagramEditor)
this.diagramEditor = this.getApplication().getController('Common.Controllers.ExternalDiagramEditor').getView('Common.Views.ExternalDiagramEditor');
if (this.diagramEditor && me.api) {
this.diagramEditor.setEditMode(false);
this.diagramEditor.show();
var chart = me.api.asc_getChartObject(type);
if (chart) {
this.diagramEditor.setChartData(new Asc.asc_CChartBinary(chart));
var selectedElements = me.api.getSelectedElements();
if (selectedElements && _.isArray(selectedElements)) {
for (var i = 0; i< selectedElements.length; i++) {
if (Asc.c_oAscTypeSelectElement.Image == selectedElements[i].get_ObjectType()) {
var elValue = selectedElements[i].get_ObjectValue().get_ChartProperties();
if (elValue) {
chart = elValue;
break;
}
}
}
}
if (chart) {
var props = new Asc.asc_CImgProperty();
chart.changeType(type);
props.put_ChartProperties(chart);
this.api.ImgApply(props);
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
} else {
if (!this.diagramEditor)
this.diagramEditor = this.getApplication().getController('Common.Controllers.ExternalDiagramEditor').getView('Common.Views.ExternalDiagramEditor');
if (this.diagramEditor && me.api) {
this.diagramEditor.setEditMode(false);
this.diagramEditor.show();
chart = me.api.asc_getChartObject(type);
if (chart) {
this.diagramEditor.setChartData(new Asc.asc_CChartBinary(chart));
}
me.toolbar.fireEvent('insertchart', me.toolbar);
}
me.toolbar.fireEvent('insertchart', me.toolbar);
}
},
@ -1960,6 +1997,57 @@ define([
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
},
onNotesClick: function(menu, item) {
if (this.api) {
if (item.value == 'ins_footnote')
this.api.asc_AddFootnote();
else if (item.value == 'delele')
Common.UI.warning({
msg: this.confirmDeleteFootnotes,
buttons: ['yes', 'no'],
primary: 'yes',
callback: _.bind(function(btn) {
if (btn == 'yes') {
this.api.asc_RemoveAllFootnotes();
}
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
}, this)
});
else if (item.value == 'settings') {
var me = this;
(new DE.Views.NoteSettingsDialog({
api: me.api,
handler: function(result, settings) {
if (settings) {
me.api.asc_SetFootnoteProps(settings.props, settings.applyToAll);
if (result == 'insert')
me.api.asc_AddFootnote(settings.custom);
}
Common.NotificationCenter.trigger('edit:complete', me.toolbar);
},
props : me.api.asc_GetFootnoteProps()
})).show();
} else
return;
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
}
},
onFootnotePrevClick: function(btn) {
if (this.api)
this.api.asc_GotoFootnote(false);
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
},
onFootnoteNextClick: function(btn) {
if (this.api)
this.api.asc_GotoFootnote(true);
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
},
_clearBullets: function() {
this.toolbar.btnMarkers.toggle(false, true);
this.toolbar.btnNumbers.toggle(false, true);
@ -2992,7 +3080,8 @@ define([
confirmAddFontName: 'The font you are going to save is not available on the current device.<br>The text style will be displayed using one of the device fonts, the saved font will be used when it is available.<br>Do you want to continue?',
notcriticalErrorTitle: 'Warning',
txtMarginsW: 'Left and right margins are too high for a given page wight',
txtMarginsH: 'Top and bottom margins are too high for a given page height'
txtMarginsH: 'Top and bottom margins are too high for a given page height',
confirmDeleteFootnotes: 'Do you want to delete all footnotes?'
}, DE.Controllers.Toolbar || {}));
});

View file

@ -153,6 +153,7 @@
<span class="btn-placeholder split" id="id-toolbar-full-placeholder-btn-insertimage"></span>
<span class="btn-placeholder split" id="id-toolbar-full-placeholder-btn-insertchart"></span>
<span class="btn-placeholder split" id="id-toolbar-full-placeholder-btn-inserttext"></span>
<span class="btn-placeholder split" id="id-toolbar-full-placeholder-btn-insertequation"></span>
<span class="btn-placeholder split" id="id-toolbar-full-placeholder-btn-dropcap"></span>
</div>
<div class="toolbar-row">
@ -160,7 +161,7 @@
<span class="btn-placeholder split" id="id-toolbar-full-placeholder-btn-inserttable"></span>
<span class="btn-placeholder split" id="id-toolbar-full-placeholder-btn-inserthyperlink"></span>
<span class="btn-placeholder split" id="id-toolbar-full-placeholder-btn-insertshape"></span>
<span class="btn-placeholder split" id="id-toolbar-full-placeholder-btn-insertequation"></span>
<span class="btn-placeholder split" id="id-toolbar-full-placeholder-btn-notes"></span>
</div>
</div>
<div class="separator long" style="margin-left: 5px;"></div>

View file

@ -244,7 +244,7 @@ define([
cls : 'btn-large-dataview',
iconCls : 'item-chartlist bar-normal',
menu : new Common.UI.Menu({
style: 'width: 560px;',
style: 'width: 435px; padding-top: 12px;',
items: [
{ template: _.template('<div id="id-chart-menu-type" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
]
@ -254,15 +254,15 @@ define([
me.mnuChartTypePicker = new Common.UI.DataView({
el: $('#id-chart-menu-type'),
parentMenu: btn.menu,
restoreHeight: 411,
restoreHeight: 421,
groups: new Common.UI.DataViewGroupStore([
{ id: 'menu-chart-group-bar', caption: me.textColumn },
{ id: 'menu-chart-group-line', caption: me.textLine },
{ id: 'menu-chart-group-pie', caption: me.textPie },
{ id: 'menu-chart-group-hbar', caption: me.textBar },
{ id: 'menu-chart-group-area', caption: me.textArea },
{ id: 'menu-chart-group-scatter', caption: me.textPoint },
{ id: 'menu-chart-group-stock', caption: me.textStock }
{ id: 'menu-chart-group-area', caption: me.textArea, inline: true },
{ id: 'menu-chart-group-scatter', caption: me.textPoint, inline: true },
{ id: 'menu-chart-group-stock', caption: me.textStock, inline: true }
]),
store: new Common.UI.DataViewStore([
{ group: 'menu-chart-group-bar', type: Asc.c_oAscChartTypeSettings.barNormal, iconCls: 'column-normal', selected: true},
@ -545,13 +545,13 @@ define([
txtInFront: 'In front',
textEditData: 'Edit Data',
textChartType: 'Change Chart Type',
textLine: 'Line Chart',
textColumn: 'Column Chart',
textBar: 'Bar Chart',
textArea: 'Area Chart',
textPie: 'Pie Chart',
textPoint: 'XY (Scatter) Chart',
textStock: 'Stock Chart',
textLine: 'Line',
textColumn: 'Column',
textBar: 'Bar',
textArea: 'Area',
textPie: 'Pie',
textPoint: 'XY (Scatter)',
textStock: 'Stock',
textStyle: 'Style'
}, DE.Views.ChartSettings || {}));

View file

@ -327,7 +327,8 @@ define([
toolTip: new Common.UI.Tooltip({
owner: this,
html: true,
title: '<br><b>Press Ctrl and click link</b>'
title: '<br><b>Press Ctrl and click link</b>',
cls: 'link-tooltip'
// style: 'word-wrap: break-word;'
}),
strTip: '',
@ -335,7 +336,6 @@ define([
isVisible: false
};
/** coauthoring begin **/
var userTooltip = true;
@ -401,7 +401,6 @@ define([
};
var onMouseMoveStart = function() {
screenTip.isHidden = true;
/** coauthoring begin **/
if (me.usertips.length>0) {
@ -418,10 +417,18 @@ define([
/** coauthoring end **/
};
var mouseMoveData = null,
isTooltipHiding = false;
var onMouseMoveEnd = function() {
if (screenTip.isHidden && screenTip.isVisible) {
screenTip.isVisible = false;
screenTip.toolTip.hide();
isTooltipHiding = true;
screenTip.toolTip.hide(function(){
isTooltipHiding = false;
if (mouseMoveData) onMouseMove(mouseMoveData);
mouseMoveData = null;
});
}
};
@ -436,42 +443,63 @@ define([
}
if (moveData) {
var showPoint, ToolTip;
var showPoint, ToolTip,
type = moveData.get_Type();
if (moveData.get_Type()==1) { // 1 - hyperlink
var hyperProps = moveData.get_Hyperlink();
var recalc = false;
if (hyperProps) {
screenTip.isHidden = false;
ToolTip = (_.isEmpty(hyperProps.get_ToolTip())) ? hyperProps.get_Value() : hyperProps.get_ToolTip();
ToolTip = Common.Utils.String.htmlEncode(ToolTip);
if (screenTip.tipLength !== ToolTip.length || screenTip.strTip.indexOf(ToolTip)<0 ) {
screenTip.toolTip.setTitle(ToolTip + '<br><b>' + me.txtPressLink + '</b>');
screenTip.tipLength = ToolTip.length;
screenTip.strTip = ToolTip;
recalc = true;
}
showPoint = [moveData.get_X(), moveData.get_Y()];
showPoint[1] += (me._XY[1]-15);
showPoint[0] += (me._XY[0]+5);
if (!screenTip.isVisible || recalc) {
screenTip.isVisible = true;
screenTip.toolTip.show([-10000, -10000]);
}
if ( recalc ) {
screenTip.tipHeight = screenTip.toolTip.getBSTip().$tip.height();
screenTip.tipWidth = screenTip.toolTip.getBSTip().$tip.width();
}
showPoint[1] -= screenTip.tipHeight;
if (showPoint[0] + screenTip.tipWidth > me._BodyWidth )
showPoint[0] = me._BodyWidth - screenTip.tipWidth;
screenTip.toolTip.getBSTip().$tip.css({top: showPoint[1] + 'px', left: showPoint[0] + 'px'});
if (type==1 || type==3) { // 1 - hyperlink, 3 - footnote
if (isTooltipHiding) {
mouseMoveData = moveData;
return;
}
if (type==1) {
var hyperProps = moveData.get_Hyperlink();
if (!hyperProps) return;
ToolTip = (_.isEmpty(hyperProps.get_ToolTip())) ? hyperProps.get_Value() : hyperProps.get_ToolTip();
} else {
ToolTip = moveData.get_FootnoteText();
if (ToolTip.length>1000)
ToolTip = ToolTip.substr(0, 1000) + '...';
}
var recalc = false;
screenTip.isHidden = false;
ToolTip = Common.Utils.String.htmlEncode(ToolTip);
if (screenTip.tipType !== type || screenTip.tipLength !== ToolTip.length || screenTip.strTip.indexOf(ToolTip)<0 ) {
screenTip.toolTip.setTitle((type==1) ? (ToolTip + '<br><b>' + me.txtPressLink + '</b>') : ToolTip);
screenTip.tipLength = ToolTip.length;
screenTip.strTip = ToolTip;
screenTip.tipType = type;
recalc = true;
}
showPoint = [moveData.get_X(), moveData.get_Y()];
showPoint[1] += (me._XY[1]-15);
showPoint[0] += (me._XY[0]+5);
if (!screenTip.isVisible || recalc) {
screenTip.isVisible = true;
screenTip.toolTip.show([-10000, -10000]);
}
if ( recalc ) {
screenTip.tipHeight = screenTip.toolTip.getBSTip().$tip.height();
screenTip.tipWidth = screenTip.toolTip.getBSTip().$tip.width();
}
recalc = false;
if (showPoint[0] + screenTip.tipWidth > me._BodyWidth ) {
showPoint[0] = me._BodyWidth - screenTip.tipWidth;
recalc = true;
}
if (showPoint[1] - screenTip.tipHeight < 0) {
showPoint[1] = (recalc) ? showPoint[1]+30 : 0;
} else
showPoint[1] -= screenTip.tipHeight;
screenTip.toolTip.getBSTip().$tip.css({top: showPoint[1] + 'px', left: showPoint[0] + 'px'});
}
/** coauthoring begin **/
else if (moveData.get_Type()==2 && me.mode.isEdit) { // 2 - locked object

View file

@ -178,18 +178,15 @@ define([
);
var me = this;
this.panels = {};
require(['documenteditor/main/app/view/FileMenuPanels'], function(){
me.panels = {
me.panels = {
// 'saveas' : (new DE.Views.FileMenuPanels.ViewSaveAs({menu:me})).render(),
'opts' : (new DE.Views.FileMenuPanels.Settings({menu:me})).render(),
'info' : (new DE.Views.FileMenuPanels.DocumentInfo({menu:me})).render(),
'rights' : (new DE.Views.FileMenuPanels.DocumentRights({menu:me})).render(),
'help' : (new DE.Views.FileMenuPanels.Help({menu:me})).render()
};
'opts' : (new DE.Views.FileMenuPanels.Settings({menu:me})).render(),
'info' : (new DE.Views.FileMenuPanels.DocumentInfo({menu:me})).render(),
'rights' : (new DE.Views.FileMenuPanels.DocumentRights({menu:me})).render(),
'help' : (new DE.Views.FileMenuPanels.Help({menu:me})).render()
};
me.$el.find('.content-box').hide();
});
me.$el.find('.content-box').hide();
return this;
},

View file

@ -315,7 +315,7 @@ define([
}
/** coauthoring begin **/
$('tr.coauth', this.el)[mode.isEdit && mode.canCoAuthoring ? 'show' : 'hide']();
$('tr.coauth.changes', this.el)[mode.isEdit && mode.canLicense && !mode.isOffline && mode.canCoAuthoring ? 'show' : 'hide']();
$('tr.coauth.changes', this.el)[mode.isEdit && !mode.isOffline && mode.canCoAuthoring ? 'show' : 'hide']();
/** coauthoring end **/
},
@ -375,7 +375,7 @@ define([
Common.localStorage.setItem("de-settings-zoom", this.cmbZoom.getValue());
/** coauthoring begin **/
Common.localStorage.setItem("de-settings-livecomment", this.chLiveComment.isChecked() ? 1 : 0);
if (this.mode.isEdit && this.mode.canLicense && !this.mode.isOffline && this.mode.canCoAuthoring) {
if (this.mode.isEdit && !this.mode.isOffline && this.mode.canCoAuthoring) {
Common.localStorage.setItem("de-settings-coauthmode", this.cmbCoAuthMode.getValue());
Common.localStorage.setItem(this.cmbCoAuthMode.getValue() ? "de-settings-showchanges-fast" : "de-settings-showchanges-strict", this.cmbShowChanges.getValue());
}

View file

@ -0,0 +1,134 @@
/*
*
* (c) Copyright Ascensio System Limited 2010-2016
*
* This program is freeware. You can redistribute it and/or modify it under the terms of the GNU
* General Public License (GPL) version 3 as published by the Free Software Foundation (https://www.gnu.org/copyleft/gpl.html).
* In accordance with Section 7(a) of the GNU GPL 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 more details, see GNU GPL at https://www.gnu.org/copyleft/gpl.html
*
* You can contact Ascensio System SIA by email at sales@onlyoffice.com
*
* The interactive user interfaces in modified source and object code versions of ONLYOFFICE must display
* Appropriate Legal Notices, as required under Section 5 of the GNU GPL version 3.
*
* Pursuant to Section 7  3(b) of the GNU GPL you must retain the original ONLYOFFICE logo which contains
* relevant author attributions when distributing the software. If the display of the logo in its graphic
* form is not reasonably feasible for technical reasons, you must include the words "Powered by ONLYOFFICE"
* in every copy of the program you distribute.
* Pursuant to Section 7  3(e) we decline to grant you any rights under trademark law for use of our trademarks.
*
*/
define([
'common/main/lib/component/BaseView'
], function () {
'use strict';
DE.Views.FootnoteTip = Common.UI.BaseView.extend(_.extend((function() {
var tipEl;
return {
options : {
name : '',
text : '',
target : null,
placement: 'bottom'
},
template: _.template([
'<div class="footnote-tip-root <%= scope.placement %>">',
'<div class="asc-footnotetip">',
'<div class="tip-arrow"></div>',
'<div>',
'<label class="tip-name" style="width: 220px;"><%= scope.name %></label>',
'<label class="tip-text" style="width: 220px;"><%= scope.text %></label>',
'<div class="move-ct">',
'<button id="footnote-btn-prev" type="button" class="btn btn-toolbar"><span class="prev img-commonctrl">&nbsp;</span></button>',
'<button id="footnote-btn-next" type="button" class="btn btn-toolbar"><span class="next img-commonctrl">&nbsp;</span></button>',
'</div>',
'</div>',
'<div class="show-link"><label><%= scope.textSettings %></label></div>',
'</div>',
'</div>'
].join('')),
initialize : function(options) {
Common.UI.BaseView.prototype.initialize.call(this, options);
this.text = this.options.text;
this.name = this.options.name;
this.target = this.options.target;
this.placement = this.options.placement;
},
render: function() {
tipEl = $(this.template({ scope: this }));
this.btnPrev = new Common.UI.Button({
el: $('#footnote-btn-prev',tipEl)
});
this.btnNext = new Common.UI.Button({
el: $('#footnote-btn-next',tipEl)
});
tipEl.find('.show-link label').on('click', _.bind(function() { this.trigger('settingsclick');}, this));
this.btnPrev.on('click', _.bind(function(btn) {
this.trigger('prevclick');
}, this));
this.btnNext.on('click', _.bind(function(btn) {
this.trigger('nextclick');
}, this));
this.lblName = tipEl.find('.tip-name');
this.lblText = tipEl.find('.tip-text');
$(document.body).append(tipEl);
this.applyPlacement(this.target);
return this;
},
show: function(name, text, target){
if (tipEl) {
this.lblName.text(name);
this.lblText.text(text);
this.applyPlacement(target);
tipEl.show()
} else
this.render();
},
hide: function() {
if (tipEl) tipEl.hide();
},
applyPlacement: function (target) {
if (!target)
target = {top: 0, left: 0, width: 1, height: 1};
var docHeight = Common.Utils.innerHeight(),
elHeight = tipEl.height(),
elWidth = tipEl.width(),
placement = this.placement;
if (this.placement == 'bottom') {
if (target.top + target.height + elHeight > docHeight)
placement = 'top';
} else if (this.placement == 'top') {
if (target.top - elHeight < 0)
placement = 'bottom';
}
tipEl.removeClass(placement == 'top' ? 'bottom' : 'top');
tipEl.addClass(placement);
(placement == 'top') ? tipEl.css({top: 'auto', bottom : docHeight - target.top + 'px', left: target.left + target.width/2 - elWidth/2 + 'px'})
: tipEl.css({top : target.top + target.height + 'px', bottom: 'auto', left: target.left + target.width/2 - elWidth/2 + 'px'});
},
textSettings: 'Note Settings'
}
})(), DE.Views.FootnoteTip || {}));
});

View file

@ -0,0 +1,434 @@
/*
*
* (c) Copyright Ascensio System Limited 2010-2016
*
* 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 Lubanas st. 125a-25, Riga, Latvia,
* EU, LV-1021.
*
* 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
*
*/
/**
* NoteSettingsDialog.js.js
*
* Created by Julia Radzhabova on 18.12.2016
* Copyright (c) 2016 Ascensio System SIA. All rights reserved.
*
*/
define([
'common/main/lib/util/utils',
'common/main/lib/component/MetricSpinner',
'common/main/lib/component/ComboBox',
'common/main/lib/view/AdvancedSettingsWindow'
], function () { 'use strict';
DE.Views.NoteSettingsDialog = Common.Views.AdvancedSettingsWindow.extend(_.extend({
options: {
contentWidth: 300,
height: 380
},
initialize : function(options) {
var me = this;
_.extend(this.options, {
title: this.textTitle,
template: [
'<div class="box" style="height:' + (me.options.height - 85) + 'px;">',
'<div class="content-panel" style="padding: 0 5px;"><div class="inner-content">',
'<div class="settings-panel active">',
'<table cols="1" style="width: 100%;">',
'<tr>',
'<td class="padding-small">',
'<label class="header">', me.textLocation,'</label>',
'</td>',
'</tr>',
'<tr>',
'<td class="padding-large">',
'<label class="input-label" style="margin-top: 4px;">', me.textFootnote,'</label>',
'<div id="note-settings-combo-footnote" class="input-group-nr" style="display: inline-block; width:150px;float:right;"></div>',
'</td>',
'</tr>',
'<tr>',
'<td>',
'<div class="padding-large"></div>',
'</td>',
'</tr>',
'<tr>',
'<td class="padding-small">',
'<label class="header">', me.textFormat,'</label>',
'</td>',
'</tr>',
'<tr>',
'<td class="padding-small">',
'<div style="display: inline-block; margin-right: 10px;">',
'<label class="input-label">', me.textNumFormat,'</label>',
'<div id="note-settings-combo-format" class="input-group-nr" style="width:150px;"></div>',
'</div>','<div style="display: inline-block;">',
'<label class="input-label">', me.textStart,'</label>',
'<div id="note-settings-spin-start"></div>',
'</div>',
'</td>',
'</tr>',
'<tr>',
'<td class="padding-small">',
'<label class="input-label">', me.textNumbering, '</label>',
'<div id="note-settings-combo-numbering" class="input-group-nr" style="width:150px;"></div>',
'</td>',
'</tr>',
'<tr>',
'<td class="padding-large">',
'<label class="input-label">', me.textCustom, '</label>',
'<div id="note-settings-txt-custom"></div>',
'</td>',
'</tr>',
'<tr>',
'<td>',
'<div class="padding-large"></div>',
'</td>',
'</tr>',
'<tr>',
'<td class="padding-small">',
'<label class="header" style="margin-top: 4px;">', me.textApplyTo,'</label>',
'<div id="note-settings-combo-apply" class="input-group-nr" style="display: inline-block; width:150px;float:right;"></div>',
'</td>',
'</tr>',
'</table>',
'</div></div>',
'</div>',
'</div>',
'<div class="footer center">',
'<button class="btn normal dlg-btn primary" result="insert" style="margin-right: 10px; width: 86px;">' + me.textInsert + '</button>',
'<button id="note-settings-btn-apply" class="btn normal dlg-btn primary" result="apply" style="margin-right: 10px; width: 86px;">' + me.textApply + '</button>',
'<button class="btn normal dlg-btn" result="cancel" style="width: 86px;">' + me.textCancel + '</button>',
'</div>'
].join('')
}, options);
this.api = options.api;
this.handler = options.handler;
this.props = options.props;
Common.Views.AdvancedSettingsWindow.prototype.initialize.call(this, this.options);
this.FormatType = 1;
this.StartValue = 1;
},
render: function() {
Common.Views.AdvancedSettingsWindow.prototype.render.call(this);
var me = this;
this.cmbFootnote = new Common.UI.ComboBox({
el: $('#note-settings-combo-footnote'),
cls: 'input-group-nr',
menuStyle: 'min-width: 150px;',
editable: false,
data: [
{ displayValue: this.textPageBottom, value: Asc.c_oAscFootnotePos.PageBottom },
{ displayValue: this.textTextBottom, value: Asc.c_oAscFootnotePos.BeneathText }
]
});
this.cmbFootnote.setValue(Asc.c_oAscFootnotePos.PageBottom);
this.cmbFormat = new Common.UI.ComboBox({
el: $('#note-settings-combo-format'),
cls: 'input-group-nr',
menuStyle: 'min-width: 150px;',
editable: false,
data: [
{ displayValue: '1, 2, 3,...', value: c_oAscNumberingFormat.Decimal, maskExp: /[0-9]/, defValue: 1 },
{ displayValue: 'a, b, c,...', value: c_oAscNumberingFormat.LowerLetter, maskExp: /[a-z]/, defValue: 'a' },
{ displayValue: 'A, B, C,...', value: c_oAscNumberingFormat.UpperLetter, maskExp: /[A-Z]/, defValue: 'A' },
{ displayValue: 'i, ii, iii,...', value: c_oAscNumberingFormat.LowerRoman, maskExp: /[ivxlcdm]/, defValue: 'i' },
{ displayValue: 'I, II, III,...', value: c_oAscNumberingFormat.UpperRoman, maskExp: /[IVXLCDM]/, defValue: 'I' }
]
});
this.cmbFormat.setValue(this.FormatType);
this.cmbFormat.on('selected', _.bind(this.onFormatSelect, this));
// this.spnStart = new Common.UI.MetricSpinner({
this.spnStart = new Common.UI.CustomSpinner({
el: $('#note-settings-spin-start'),
step: 1,
width: 85,
defaultUnit : "",
value: 1,
maxValue: 16383,
minValue: 1,
allowDecimal: false,
maskExp: /[0-9]/
});
this.cmbNumbering = new Common.UI.ComboBox({
el: $('#note-settings-combo-numbering'),
cls: 'input-group-nr',
menuStyle: 'min-width: 150px;',
editable: false,
data: [
{ displayValue: this.textContinue, value: Asc.c_oAscFootnoteRestart.Continuous },
{ displayValue: this.textEachSection, value: Asc.c_oAscFootnoteRestart.EachSect },
{ displayValue: this.textEachPage, value: Asc.c_oAscFootnoteRestart.EachPage }
]
});
this.cmbNumbering.setValue(Asc.c_oAscFootnoteRestart.Continuous);
this.txtCustom = new Common.UI.InputField({
el : $('#note-settings-txt-custom'),
allowBlank : true,
validateOnChange: true,
validateOnBlur: false,
style : 'width: 85px; vertical-align: middle;',
value : ''
}).on ('changing', function (input, value) {
me.cmbFormat.setDisabled(value.length>0);
me.spnStart.setDisabled(value.length>0);
me.btnApply.setDisabled(value.length>0);
});
this.cmbApply = new Common.UI.ComboBox({
el: $('#note-settings-combo-apply'),
cls: 'input-group-nr',
menuStyle: 'min-width: 150px;',
editable: false,
data: [
{ displayValue: this.textDocument, value: 1 },
{ displayValue: this.textSection, value: 0 }
]
});
this.cmbApply.setValue(1);
this.btnApply = new Common.UI.Button({
el: $('#note-settings-btn-apply')
});
this.afterRender();
},
afterRender: function() {
this._setDefaults(this.props);
},
show: function() {
Common.Views.AdvancedSettingsWindow.prototype.show.apply(this, arguments);
},
_setDefaults: function (props) {
if (props) {
var val = props.get_Pos();
this.cmbFootnote.setValue(val);
val = props.get_NumFormat();
this.cmbFormat.setValue(val);
this.onFormatSelect(this.cmbFormat, this.cmbFormat.getSelectedRecord());
val = props.get_NumStart();
this.spnStart.setValue(val);
val = props.get_NumRestart();
this.cmbNumbering.setValue(val);
}
},
getSettings: function () {
var props = new Asc.CAscFootnotePr();
props.put_Pos(this.cmbFootnote.getValue());
props.put_NumRestart(this.cmbNumbering.getValue());
var val = this.txtCustom.getValue();
if (_.isEmpty(val)) {
val = this.cmbFormat.getValue();
props.put_NumFormat(val);
props.put_NumStart(this.spnStart.getNumberValue());
}
return {props: props, applyToAll: (this.cmbApply.getValue()==1), custom: _.isEmpty(val) ? undefined : val};
},
onDlgBtnClick: function(event) {
var me = this;
var state = (typeof(event) == 'object') ? event.currentTarget.attributes['result'].value : event;
if (state == 'insert' || state == 'apply') {
this.handler && this.handler.call(this, state, (state == 'insert' || state == 'apply') ? this.getSettings() : undefined);
}
this.close();
},
onPrimary: function() {
return true;
},
onFormatSelect: function(combo, record) {
if (!record) return;
this.spnStart.setMask(record.maskExp);
var me = this;
switch (record.value) {
case c_oAscNumberingFormat.UpperRoman: // I, II, III, ...
this.spnStart.options.toCustomFormat = this._10toRome;
this.spnStart.options.fromCustomFormat = this._Rometo10;
break;
case c_oAscNumberingFormat.LowerRoman: // i, ii, iii, ...
this.spnStart.options.toCustomFormat = function(value) { return me._10toRome(value).toLocaleLowerCase(); };
this.spnStart.options.fromCustomFormat = function(value) { return me._Rometo10(value.toLocaleUpperCase()); };
break;
case c_oAscNumberingFormat.UpperLetter: // A, B, C, ...
this.spnStart.options.toCustomFormat = this._10toS;
this.spnStart.options.fromCustomFormat = this._Sto10;
break;
case c_oAscNumberingFormat.LowerLetter: // a, b, c, ...
this.spnStart.options.toCustomFormat = function(value) { return me._10toS(value).toLocaleLowerCase(); };
this.spnStart.options.fromCustomFormat = function(value) { return me._Sto10(value.toLocaleUpperCase()); };
break;
default: // 1, 2, 3, ...
this.spnStart.options.toCustomFormat = function(value) { return value; };
this.spnStart.options.fromCustomFormat = function(value) { return value; };
break;
}
this.spnStart.setValue(this.spnStart.getValue());
this.FormatType = record.value;
},
_10toS: function(value) {
value = parseInt(value);
var n = Math.ceil(value / 26),
code = String.fromCharCode((value-1) % 26 + "A".charCodeAt(0)) ,
result = '';
for (var i=0; i<n; i++ ) {
result += code;
}
return result;
},
_Sto10: function(str) {
if ( str.length<1 || (new RegExp('[^' + str.charAt(0) + ']')).test(str) || !/[A-Z]/.test(str)) return 1;
var n = str.length-1,
result = str.charCodeAt(0) - "A".charCodeAt(0) + 1;
result += 26*n;
return result;
},
_10toRome: function(value) {
value = parseInt(value);
var result = '',
digits = [
['M', 1000],
['CM', 900],
['D', 500],
['CD', 400],
['C', 100],
['XC', 90],
['L', 50],
['XL', 40],
['X', 10],
['IX', 9],
['V', 5],
['IV', 4],
['I', 1]
];
var val = digits[0][1],
div = Math.floor(value / val),
n = 0;
for (var i=0; i<div; i++)
result += digits[n][0];
value -= div * val;
n++;
while (value>0) {
val = digits[n][1];
div = value - val;
if (div>=0) {
result += digits[n][0];
value = div;
} else
n++;
}
return result;
},
_Rometo10: function(str) {
if ( !/[IVXLCDM]/.test(str) || str.length<1 ) return 1;
var digits = {
'I': 1,
'V': 5,
'X': 10,
'L': 50,
'C': 100,
'D': 500,
'M': 1000
};
var n = str.length-1,
result = digits[str.charAt(n)],
prev = result;
for (var i=n-1; i>=0; i-- ) {
var val = digits[str.charAt(i)];
if (val<prev) {
if (prev/val>10) return 1;
val *= -1;
}
result += val;
}
return result;
},
textTitle: 'Notes Settings',
textLocation: 'Location',
textFootnote: 'Footnote',
textPageBottom: 'Bottom of page',
textTextBottom: 'Below text',
textFormat: 'Format',
textNumFormat: 'Number Format',
textStart: 'Start at',
textNumbering: 'Numbering',
textContinue: 'Continuous',
textEachPage: 'Restart each page',
textEachSection: 'Restart each section',
textApplyTo: 'Apply changes to',
textDocument: 'Whole document',
textSection: 'Current section',
textApply: 'Apply',
textInsert: 'Insert',
textCancel: 'Cancel',
textCustom: 'Custom Mark'
}, DE.Views.NoteSettingsDialog || {}))
});

View file

@ -489,7 +489,7 @@ define([
cls : 'btn-toolbar',
iconCls : 'btn-insertchart',
menu : new Common.UI.Menu({
style: 'width: 560px;',
style: 'width: 435px;',
items: [
{ template: _.template('<div id="id-toolbar-menu-insertchart" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
]
@ -737,6 +737,14 @@ define([
});
this.toolbarControls.push(this.btnColorSchemas);
this.btnNotes = new Common.UI.Button({
id : 'id-toolbar-btn-notes',
cls : 'btn-toolbar',
iconCls : 'btn-notes',
menu : true
});
this.paragraphControls.push(this.btnNotes);
this.btnMailRecepients= new Common.UI.Button({
id : 'id-toolbar-btn-mailrecepients',
cls : 'btn-toolbar',
@ -1076,14 +1084,11 @@ define([
replacePlacholder('#id-toolbar-full-placeholder-field-styles', this.listStyles);
replacePlacholder('#id-toolbar-short-placeholder-btn-halign', this.btnHorizontalAlign);
replacePlacholder('#id-toolbar-full-placeholder-btn-mailrecepients', this.btnMailRecepients);
replacePlacholder('#id-toolbar-' + prefix + '-placeholder-btn-notes', this.btnNotes);
},
createDelayedElements: function() {
if (this.api) {
var schemes = this.api.get_PropertyThemeColorSchemes();
if (schemes)
this.onSendThemeColorSchemes(schemes);
this.mnuNonPrinting.items[0].setChecked(this.api.get_ShowParaMarks(), true);
this.mnuNonPrinting.items[1].setChecked(this.api.get_ShowTableEmptyLine(), true);
this.btnShowHidenChars.toggle(this.mnuNonPrinting.items[0].checked, true);
@ -1143,6 +1148,7 @@ define([
this.btnMailRecepients.updateHint(this.tipMailRecepients);
this.btnHide.updateHint(this.tipViewSettings);
this.btnAdvSettings.updateHint(this.tipAdvSettings);
this.btnNotes.updateHint(this.tipNotes);
// set menus
@ -1284,6 +1290,40 @@ define([
cls : 'btn-toolbar'
});
this.btnNotes.setMenu(
new Common.UI.Menu({
items: [
{ caption: this.mniInsFootnote, value: 'ins_footnote' },
{ caption: '--' },
this.mnuGotoFootnote = new Common.UI.MenuItem({
template: _.template([
'<div id="id-toolbar-menu-goto-footnote" class="menu-zoom" style="height: 25px;" ',
'<% if(!_.isUndefined(options.stopPropagation)) { %>',
'data-stopPropagation="true"',
'<% } %>', '>',
'<label class="title">' + this.textGotoFootnote + '</label>',
'<button id="id-menu-goto-footnote-next" type="button" style="float:right; margin: 2px 5px 0 0;" class="btn small btn-toolbar"><span class="btn-icon mmerge-next">&nbsp;</span></button>',
'<button id="id-menu-goto-footnote-prev" type="button" style="float:right; margin-top: 2px;" class="btn small btn-toolbar"><span class="btn-icon mmerge-prev">&nbsp;</span></button>',
'</div>'
].join('')),
stopPropagation: true
}),
{ caption: '--' },
{ caption: this.mniDelFootnote, value: 'delele' },
{ caption: this.mniNoteSettings, value: 'settings' }
]
})
);
this.mnuGotoFootPrev = new Common.UI.Button({
el : $('#id-menu-goto-footnote-prev'),
cls : 'btn-toolbar'
});
this.mnuGotoFootNext = new Common.UI.Button({
el : $('#id-menu-goto-footnote-next'),
cls : 'btn-toolbar'
});
// set dataviews
var _conf = this.mnuMarkersPicker.conf;
@ -1362,15 +1402,15 @@ define([
el: $('#id-toolbar-menu-insertchart'),
parentMenu: this.btnInsertChart.menu,
showLast: false,
restoreHeight: 411,
restoreHeight: 421,
groups: new Common.UI.DataViewGroupStore([
{ id: 'menu-chart-group-bar', caption: me.textColumn },
{ id: 'menu-chart-group-bar', caption: me.textColumn, headername: me.textCharts },
{ id: 'menu-chart-group-line', caption: me.textLine },
{ id: 'menu-chart-group-pie', caption: me.textPie },
{ id: 'menu-chart-group-hbar', caption: me.textBar },
{ id: 'menu-chart-group-area', caption: me.textArea },
{ id: 'menu-chart-group-scatter', caption: me.textPoint },
{ id: 'menu-chart-group-stock', caption: me.textStock }
{ id: 'menu-chart-group-area', caption: me.textArea, inline: true },
{ id: 'menu-chart-group-scatter', caption: me.textPoint, inline: true },
{ id: 'menu-chart-group-stock', caption: me.textStock, inline: true }
]),
store: new Common.UI.DataViewStore([
{ group: 'menu-chart-group-bar', type: Asc.c_oAscChartTypeSettings.barNormal, allowSelected: true, iconCls: 'column-normal', selected: true},
@ -1457,6 +1497,7 @@ define([
setApi: function(api) {
this.api = api;
/** coauthoring begin **/
this.api.asc_registerCallback('asc_onSendThemeColorSchemes', _.bind(this.onSendThemeColorSchemes, this));
this.api.asc_registerCallback('asc_onCollaborativeChanges', _.bind(this.onCollaborativeChanges, this));
this.api.asc_registerCallback('asc_onAuthParticipantsChanged', _.bind(this.onApiUsersChanged, this));
this.api.asc_registerCallback('asc_onParticipantsChanged', _.bind(this.onApiUsersChanged, this));
@ -1517,6 +1558,7 @@ define([
this.cmbFontName.setDisabled(true);
this.cmbFontSize.setDisabled(true);
this.listStyles.setDisabled(true);
this.btnNotes.setDisabled(true);
if (mode.disableDownload)
this.btnPrint.setDisabled(true);
}
@ -1827,13 +1869,13 @@ define([
textNewColor: 'Add New Custom Color',
textAutoColor: 'Automatic',
tipInsertChart: 'Insert Chart',
textLine: 'Line Chart',
textColumn: 'Column Chart',
textBar: 'Bar Chart',
textArea: 'Area Chart',
textPie: 'Pie Chart',
textPoint: 'XY (Scatter) Chart',
textStock: 'Stock Chart',
textLine: 'Line',
textColumn: 'Column',
textBar: 'Bar',
textArea: 'Area',
textPie: 'Pie',
textPoint: 'XY (Scatter)',
textStock: 'Stock',
tipColorSchemas: 'Change Color Scheme',
tipInsertText: 'Insert Text',
tipHAligh: 'Horizontal Align',
@ -1910,7 +1952,14 @@ define([
textPageSizeCustom: 'Custom Page Size',
textPortrait: 'Portrait',
textLandscape: 'Landscape',
textInsertPageCount: 'Insert number of pages'
textInsertPageCount: 'Insert number of pages',
textCharts: 'Charts',
tipNotes: 'Footnotes',
mniInsFootnote: 'Insert Footnote',
mniDelFootnote: 'Delete All Footnotes',
mniNoteSettings: 'Notes Settings',
textGotoFootnote: 'Go to Footnotes',
tipChangeChart: 'Change Chart Type'
}, DE.Views.Toolbar || {}));
});

View file

@ -168,6 +168,7 @@ require([
'documenteditor/main/app/controller/RightMenu',
'documenteditor/main/app/controller/LeftMenu',
'documenteditor/main/app/controller/Main',
'documenteditor/main/app/view/FileMenuPanels',
'documenteditor/main/app/view/ParagraphSettings',
'documenteditor/main/app/view/HeaderFooterSettings',
'documenteditor/main/app/view/ImageSettings',

View file

@ -302,6 +302,7 @@
"DE.Controllers.Statusbar.textTrackChanges": "The document is opened with the Track Changes mode enabled",
"DE.Controllers.Statusbar.zoomText": "Zoom {0}%",
"DE.Controllers.Toolbar.confirmAddFontName": "The font you are going to save is not available on the current device.<br>The text style will be displayed using one of the system fonts, the saved font will be used when it is available.<br>Do you want to continue?",
"DE.Controllers.Toolbar.confirmDeleteFootnotes": "Do you want to delete all footnotes?",
"DE.Controllers.Toolbar.notcriticalErrorTitle": "Warning",
"DE.Controllers.Toolbar.textAccent": "Accents",
"DE.Controllers.Toolbar.textBracket": "Brackets",
@ -637,18 +638,18 @@
"DE.Controllers.Toolbar.txtSymbol_xsi": "Xi",
"DE.Controllers.Toolbar.txtSymbol_zeta": "Zeta",
"DE.Views.ChartSettings.textAdvanced": "Show advanced settings",
"DE.Views.ChartSettings.textArea": "Area Chart",
"DE.Views.ChartSettings.textBar": "Bar Chart",
"DE.Views.ChartSettings.textArea": "Area",
"DE.Views.ChartSettings.textBar": "Bar",
"DE.Views.ChartSettings.textChartType": "Change Chart Type",
"DE.Views.ChartSettings.textColumn": "Column Chart",
"DE.Views.ChartSettings.textColumn": "Column",
"DE.Views.ChartSettings.textEditData": "Edit Data",
"DE.Views.ChartSettings.textHeight": "Height",
"DE.Views.ChartSettings.textLine": "Line Chart",
"DE.Views.ChartSettings.textLine": "Line",
"DE.Views.ChartSettings.textOriginalSize": "Default Size",
"DE.Views.ChartSettings.textPie": "Pie Chart",
"DE.Views.ChartSettings.textPoint": "XY (Scatter) Chart",
"DE.Views.ChartSettings.textPie": "Pie",
"DE.Views.ChartSettings.textPoint": "XY (Scatter)",
"DE.Views.ChartSettings.textSize": "Size",
"DE.Views.ChartSettings.textStock": "Stock Chart",
"DE.Views.ChartSettings.textStock": "Stock",
"DE.Views.ChartSettings.textStyle": "Style",
"DE.Views.ChartSettings.textUndock": "Undock from panel",
"DE.Views.ChartSettings.textWidth": "Width",
@ -1115,6 +1116,25 @@
"DE.Views.MailMergeSettings.txtPrev": "To previous record",
"DE.Views.MailMergeSettings.txtUntitled": "Untitled",
"DE.Views.MailMergeSettings.warnProcessMailMerge": "Starting merge failed",
"DE.Views.NoteSettingsDialog.textTitle": "Notes Settings",
"DE.Views.NoteSettingsDialog.textLocation": "Location",
"DE.Views.NoteSettingsDialog.textFootnote": "Footnote",
"DE.Views.NoteSettingsDialog.textPageBottom": "Bottom of page",
"DE.Views.NoteSettingsDialog.textTextBottom": "Below text",
"DE.Views.NoteSettingsDialog.textFormat": "Format",
"DE.Views.NoteSettingsDialog.textNumFormat": "Number Format",
"DE.Views.NoteSettingsDialog.textStart": "Start at",
"DE.Views.NoteSettingsDialog.textNumbering": "Numbering",
"DE.Views.NoteSettingsDialog.textContinue": "Continuous",
"DE.Views.NoteSettingsDialog.textEachPage": "Restart each page",
"DE.Views.NoteSettingsDialog.textEachSection": "Restart each section",
"DE.Views.NoteSettingsDialog.textApplyTo": "Apply changes to",
"DE.Views.NoteSettingsDialog.textDocument": "Whole document",
"DE.Views.NoteSettingsDialog.textSection": "Current section",
"DE.Views.NoteSettingsDialog.textApply": "Apply",
"DE.Views.NoteSettingsDialog.textInsert": "Insert",
"DE.Views.NoteSettingsDialog.textCancel": "Cancel",
"DE.Views.NoteSettingsDialog.textCustom": "Custom Mark",
"DE.Views.PageMarginsDialog.cancelButtonText": "Cancel",
"DE.Views.PageMarginsDialog.notcriticalErrorTitle": "Warning",
"DE.Views.PageMarginsDialog.okButtonText": "Ok",
@ -1430,12 +1450,13 @@
"DE.Views.Toolbar.mniImageFromFile": "Picture from File",
"DE.Views.Toolbar.mniImageFromUrl": "Picture from URL",
"DE.Views.Toolbar.strMenuNoFill": "No Fill",
"DE.Views.Toolbar.textArea": "Area Chart",
"DE.Views.Toolbar.textArea": "Area",
"DE.Views.Toolbar.textAutoColor": "Automatic",
"DE.Views.Toolbar.textBar": "Bar Chart",
"DE.Views.Toolbar.textBar": "Bar",
"DE.Views.Toolbar.textBold": "Bold",
"DE.Views.Toolbar.textBottom": "Bottom: ",
"DE.Views.Toolbar.textColumn": "Column Chart",
"DE.Views.Toolbar.textCharts": "Charts",
"DE.Views.Toolbar.textColumn": "Column",
"DE.Views.Toolbar.textColumnsLeft": "Left",
"DE.Views.Toolbar.textColumnsOne": "One",
"DE.Views.Toolbar.textColumnsRight": "Right",
@ -1461,7 +1482,7 @@
"DE.Views.Toolbar.textItalic": "Italic",
"DE.Views.Toolbar.textLandscape": "Landscape",
"DE.Views.Toolbar.textLeft": "Left: ",
"DE.Views.Toolbar.textLine": "Line Chart",
"DE.Views.Toolbar.textLine": "Line",
"DE.Views.Toolbar.textMarginsLast": "Last Custom",
"DE.Views.Toolbar.textMarginsModerate": "Moderate",
"DE.Views.Toolbar.textMarginsNarrow": "Narrow",
@ -1474,11 +1495,11 @@
"DE.Views.Toolbar.textOddPage": "Odd Page",
"DE.Views.Toolbar.textPageMarginsCustom": "Custom margins",
"DE.Views.Toolbar.textPageSizeCustom": "Custom Page Size",
"DE.Views.Toolbar.textPie": "Pie Chart",
"DE.Views.Toolbar.textPoint": "XY (Scatter) Chart",
"DE.Views.Toolbar.textPie": "Pie",
"DE.Views.Toolbar.textPoint": "XY (Scatter)",
"DE.Views.Toolbar.textPortrait": "Portrait",
"DE.Views.Toolbar.textRight": "Right: ",
"DE.Views.Toolbar.textStock": "Stock Chart",
"DE.Views.Toolbar.textStock": "Stock",
"DE.Views.Toolbar.textStrikeout": "Strikeout",
"DE.Views.Toolbar.textStyleMenuDelete": "Delete style",
"DE.Views.Toolbar.textStyleMenuDeleteAll": "Delete all custom styles",
@ -1499,6 +1520,7 @@
"DE.Views.Toolbar.tipAlignLeft": "Align Left",
"DE.Views.Toolbar.tipAlignRight": "Align Right",
"DE.Views.Toolbar.tipBack": "Back",
"DE.Views.Toolbar.tipChangeChart": "Change Chart Type",
"DE.Views.Toolbar.tipClearStyle": "Clear Style",
"DE.Views.Toolbar.tipColorSchemas": "Change Color Scheme",
"DE.Views.Toolbar.tipColumns": "Insert columns",
@ -1565,5 +1587,11 @@
"DE.Views.Toolbar.txtScheme6": "Concourse",
"DE.Views.Toolbar.txtScheme7": "Equity",
"DE.Views.Toolbar.txtScheme8": "Flow",
"DE.Views.Toolbar.txtScheme9": "Foundry"
"DE.Views.Toolbar.txtScheme9": "Foundry",
"DE.Views.Toolbar.tipNotes": "Footnotes",
"DE.Views.Toolbar.mniInsFootnote": "Insert Footnote",
"DE.Views.Toolbar.mniDelFootnote": "Delete All Footnotes",
"DE.Views.Toolbar.mniNoteSettings": "Notes Settings",
"DE.Views.Toolbar.textGotoFootnote": "Go to Footnotes"
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 55 KiB

View file

@ -0,0 +1,124 @@
.footnote-tip-root {
position: absolute;
z-index: @zindex-tooltip + 5;
width: 250px;
.tip-arrow {
position: absolute;
overflow: hidden;
}
&.bottom {
margin: 15px 0 0 0;
.tip-arrow {
left: 50%;
top: -15px;
width: 26px;
height: 15px;
margin-left: -13px;
&:after {
top: 8px;
left: 5px;
.box-shadow(0 0 8px -1px rgba(0, 0, 0, 0.2));
}
}
}
&.top {
margin: 0 0px 15px 0;
.tip-arrow {
left: 50%;
bottom: -15px;
width: 26px;
height: 15px;
margin-left: -13px;
&:after {
top: -8px;
left: 5px;
}
}
}
}
.asc-footnotetip {
padding: 15px 8px 10px 15px;
border-radius: 5px;
background-color: #fff;
overflow: visible;
.box-shadow(0 4px 15px -2px rgba(0, 0, 0, 0.5));
font-size: 11px;
}
.asc-footnotetip .tip-arrow:after {
content: '';
position: absolute;
top: 5px;
left: 8px;
background-color: #fff;
width: 15px;
height: 15px;
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
.box-shadow(0 4px 8px -1px rgba(0, 0, 0, 0.2));
}
.asc-footnotetip .show-link {
margin-top: 15px;
label {
border-bottom: 1px dotted #445799;
color: #445799;
cursor: pointer;
}
}
.asc-footnotetip .move-ct {
position: absolute;
right: 0;
bottom: 0;
height: 16px;
margin: 8px;
.prev, .next {
width: 16px;
height: 16px;
display: inline-block;
cursor: pointer;
}
.prev {
background-position: @search-dlg-offset-x @search-dlg-offset-y;
}
.next {
background-position: @search-dlg-offset-x @search-dlg-offset-y - 16px;
}
.btn {
&:hover,
.over,
&:active,
&.active {
background-color: transparent !important;
}
&.disabled{
cursor: default;
.prev {
background-position: @search-dlg-offset-x - 32px @search-dlg-offset-y;
}
.next{
background-position: @search-dlg-offset-x - 32px @search-dlg-offset-y - 16px;
}
}
}
}

View file

@ -375,8 +375,6 @@ button.notify .btn-menu-comments {background-position: -0*@toolbar-icon-size -60
.header-name {
padding: 7px 2px 7px 10px;
font-weight: bold;
cursor: default;
}
}
}

View file

@ -149,7 +149,7 @@
.title {
padding: 5px 0 5px 20px;
float: left;
max-width: 95px;
//max-width: 95px;
overflow: hidden;
text-overflow: ellipsis;
}
@ -163,20 +163,12 @@
// charts
.menu-insertchart {
.group-description {
float: left;
width: 125px;
line-height: 58px;
padding-left: 6px;
padding-left: 4px;
}
.group-items-container {
float: left;
position: relative;
// & > div {
// float: left;
// margin: 0 0 0 14px;
// }
}
}
@ -341,6 +333,7 @@
.button-normal-icon(btn-zoomout, 58, @toolbar-icon-size);
.button-normal-icon(btn-columns, 82, @toolbar-icon-size);
.button-normal-icon(btn-pagemargins, 83, @toolbar-icon-size);
.button-normal-icon(btn-notes, 85, @toolbar-icon-size);
.button-normal-icon(mmerge-next, 71, @toolbar-icon-size);
.button-normal-icon(mmerge-last, 72, @toolbar-icon-size);

View file

@ -11,7 +11,10 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/common/apiCommon.js",
"../../../../sdkjs/common/SerializeCommonWordExcel.js",
"../../../../sdkjs/common/editorscommon.js",
"../../../../sdkjs/common/NumFormat.js",
"../../../../sdkjs/common/HistoryCommon.js",
"../../../../sdkjs/common/TableId.js",
"../../../../sdkjs/common/TableIdChanges.js",
"../../../../sdkjs/common/NumFormat.js",
"../../../../sdkjs/common/SerializeChart.js",
"../../../../sdkjs/common/AdvancedOptions.js",
"../../../../sdkjs/common/FontsFreeType/font_engine.js",
@ -28,7 +31,6 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/common/Drawings/Hit.js",
"../../../../sdkjs/common/Drawings/ArcTo.js",
"../../../../sdkjs/common/Drawings/ColorArray.js",
"../../../../sdkjs/common/Drawings/Format/Constants.js",
"../../../../sdkjs/common/Drawings/CommonController.js",
"../../../../sdkjs/word/Editor/GraphicObjects/DrawingStates.js",
"../../../../sdkjs/common/Drawings/Format/CreateGeometry.js",
@ -65,6 +67,7 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/common/Drawings/HatchPattern.js",
"../../../../sdkjs/common/scroll.js",
"../../../../sdkjs/common/Scrolls/iscroll.js",
"../../../../sdkjs/common/Scrolls/mobileTouchManagerBase.js",
"../../../../sdkjs/common/wordcopypaste.js",
"../../../../sdkjs/word/apiDefines.js",
"../../../../sdkjs/cell/utils/utils.js",
@ -82,12 +85,21 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/word/Editor/GraphicObjects/WrapManager.js",
"../../../../sdkjs/word/Editor/CollaborativeEditing.js",
"../../../../sdkjs/word/Editor/Comments.js",
"../../../../sdkjs/word/Editor/CommentsChanges.js",
"../../../../sdkjs/word/Editor/Styles.js",
"../../../../sdkjs/word/Editor/StylesChanges.js",
"../../../../sdkjs/word/Editor/ParagraphContent.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaTextPr.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaTextPrChanges.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaDrawing.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaDrawingChanges.js",
"../../../../sdkjs/word/Editor/Paragraph.js",
"../../../../sdkjs/word/Editor/ParagraphChanges.js",
"../../../../sdkjs/word/Editor/DocumentContentBase.js",
"../../../../sdkjs/word/Editor/Document.js",
"../../../../sdkjs/word/Editor/DocumentChanges.js",
"../../../../sdkjs/word/Editor/DocumentContent.js",
"../../../../sdkjs/word/Editor/DocumentContentChanges.js",
"../../../../sdkjs/word/Editor/DocumentControllerBase.js",
"../../../../sdkjs/word/Editor/LogicDocumentController.js",
"../../../../sdkjs/word/Editor/DrawingsController.js",
@ -95,25 +107,35 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/word/Editor/FlowObjects.js",
"../../../../sdkjs/word/Editor/ParagraphContentBase.js",
"../../../../sdkjs/word/Editor/Hyperlink.js",
"../../../../sdkjs/word/Editor/HyperlinkChanges.js",
"../../../../sdkjs/word/Editor/Field.js",
"../../../../sdkjs/word/Editor/FieldChanges.js",
"../../../../sdkjs/word/Editor/Run.js",
"../../../../sdkjs/word/Editor/RunChanges.js",
"../../../../sdkjs/word/Editor/Math.js",
"../../../../sdkjs/word/Editor/MathChanges.js",
"../../../../sdkjs/word/Editor/Paragraph_Recalculate.js",
"../../../../sdkjs/word/Editor/Sections.js",
"../../../../sdkjs/word/Editor/SectionsChanges.js",
"../../../../sdkjs/word/Editor/Numbering.js",
"../../../../sdkjs/word/Editor/HeaderFooter.js",
"../../../../sdkjs/word/Editor/Common.js",
"../../../../sdkjs/word/Editor/Numbering.js",
"../../../../sdkjs/word/Editor/NumberingChanges.js",
"../../../../sdkjs/word/Editor/Table.js",
"../../../../sdkjs/word/Editor/Table/TableChanges.js",
"../../../../sdkjs/word/Editor/Table/TableRecalculate.js",
"../../../../sdkjs/word/Editor/Table/TableDraw.js",
"../../../../sdkjs/word/Editor/Table/TableRow.js",
"../../../../sdkjs/word/Editor/Table/TableRowChanges.js",
"../../../../sdkjs/word/Editor/Table/TableCell.js",
"../../../../sdkjs/word/Editor/Table/TableCellChanges.js",
"../../../../sdkjs/word/Editor/Serialize2.js",
"../../../../sdkjs/word/Editor/Search.js",
"../../../../sdkjs/word/Editor/FontClassification.js",
"../../../../sdkjs/word/Editor/Spelling.js",
"../../../../sdkjs/word/Editor/Footnotes.js",
"../../../../sdkjs/word/Editor/FootnotesChanges.js",
"../../../../sdkjs/word/Editor/FootEndNote.js",
"../../../../sdkjs/word/Drawing/Graphics.js",
"../../../../sdkjs/word/Drawing/ShapeDrawer.js",
@ -122,6 +144,7 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/word/Drawing/Rulers.js",
"../../../../sdkjs/word/Drawing/HtmlPage.js",
"../../../../sdkjs/word/Drawing/documentrenderer.js",
"../../../../sdkjs/word/Drawing/mobileTouchManager.js",
"../../../../sdkjs/word/apiCommon.js",
"../../../../sdkjs/common/apiBase.js",
"../../../../sdkjs/word/api.js",

View file

@ -172,6 +172,7 @@ require([
'presentationeditor/main/app/controller/RightMenu',
'presentationeditor/main/app/controller/LeftMenu',
'presentationeditor/main/app/controller/Main',
'presentationeditor/main/app/view/FileMenuPanels',
'presentationeditor/main/app/view/ParagraphSettings',
'presentationeditor/main/app/view/ImageSettings',
'presentationeditor/main/app/view/ShapeSettings',

View file

@ -231,7 +231,7 @@ define([
this.api.SetTextBoxInputMode(parseInt(value) == 1);
/** coauthoring begin **/
if (this.mode.isEdit && this.mode.canLicense && !this.mode.isOffline && this.mode.canCoAuthoring) {
if (this.mode.isEdit && !this.mode.isOffline && this.mode.canCoAuthoring) {
value = Common.localStorage.getItem("pe-settings-coauthmode");
this.api.asc_SetFastCollaborative(value===null || parseInt(value) == 1);
}

View file

@ -142,6 +142,7 @@ define([
this.editorConfig = {};
this.appOptions = {};
this.plugins = undefined;
this.UICustomizePlugins = [];
Common.Gateway.on('init', _.bind(this.loadConfig, this));
Common.Gateway.on('showmessage', _.bind(this.onExternalMessage, this));
Common.Gateway.on('opendocument', _.bind(this.loadDocument, this));
@ -609,7 +610,7 @@ define([
me.api.SetTextBoxInputMode(value!==null && parseInt(value) == 1);
/** coauthoring begin **/
if (me.appOptions.isEdit && me.appOptions.canLicense && !me.appOptions.isOffline && me.appOptions.canCoAuthoring) {
if (me.appOptions.isEdit && !me.appOptions.isOffline && me.appOptions.canCoAuthoring) {
value = Common.localStorage.getItem("pe-settings-coauthmode");
if (value===null && Common.localStorage.getItem("pe-settings-autosave")===null &&
me.appOptions.customization && me.appOptions.customization.autosave===false) {
@ -639,7 +640,7 @@ define([
application.getController('Common.Controllers.ExternalDiagramEditor').setApi(this.api).loadConfig({config:this.editorConfig, customization: this.editorConfig.customization});
pluginsController.setApi(me.api);
me.updatePlugins(me.plugins);
me.updatePlugins(me.plugins, false);
me.api.asc_registerCallback('asc_onPluginsInit', _.bind(me.updatePluginsList, me));
documentHolderController.setApi(me.api);
@ -686,9 +687,14 @@ define([
if (me.needToUpdateVersion)
toolbarController.onApiCoAuthoringDisconnect();
me.api.UpdateInterfaceState();
if (me.appOptions.canBrandingExt)
Common.NotificationCenter.trigger('document:ready', 'main');
}
}, 50);
}
} else if (me.appOptions.canBrandingExt)
Common.NotificationCenter.trigger('document:ready', 'main');
if (this.appOptions.canAnalytics && false)
Common.component.Analytics.initialize('UA-12442749-13', 'Presentation Editor');
@ -778,7 +784,9 @@ define([
params.asc_getTrial() && headerView.setDeveloperMode(true);
this.appOptions.canRename && headerView.setCanRename(true);
this.appOptions.canBrandingExt = params.asc_getCanBranding() && (typeof this.editorConfig.customization == 'object');
this.appOptions.canBrandingExt = params.asc_getCanBranding() && (typeof this.editorConfig.customization == 'object' || this.editorConfig.plugins);
if (this.appOptions.canBrandingExt)
this.updatePlugins(this.plugins, true);
this.applyModeCommonElements();
this.applyModeEditorElements();
@ -1217,13 +1225,15 @@ define([
},
hidePreloader: function() {
if (!!this.appOptions.customization && !this.appOptions.customization.done) {
this.appOptions.customization.done = true;
if (!this.appOptions.isDesktopApp)
if (!this._state.customizationDone) {
this._state.customizationDone = true;
if (this.appOptions.customization && !this.appOptions.isDesktopApp)
this.appOptions.customization.about = true;
Common.Utils.applyCustomization(this.appOptions.customization, mapCustomizationElements);
if (this.appOptions.canBrandingExt)
if (this.appOptions.canBrandingExt) {
Common.Utils.applyCustomization(this.appOptions.customization, mapCustomizationExtElements);
Common.Utils.applyCustomizationPlugins(this.UICustomizePlugins);
}
}
Common.NotificationCenter.trigger('layout:changed', 'main');
@ -1500,7 +1510,7 @@ define([
},
applySettings: function() {
if (this.appOptions.isEdit && this.appOptions.canLicense && !this.appOptions.isOffline && this.appOptions.canCoAuthoring) {
if (this.appOptions.isEdit && !this.appOptions.isOffline && this.appOptions.canCoAuthoring) {
var value = Common.localStorage.getItem("pe-settings-coauthmode"),
oldval = this._state.fastCoauth;
this._state.fastCoauth = (value===null || parseInt(value) == 1);
@ -1581,8 +1591,11 @@ define([
}
},
updatePlugins: function(plugins) { // plugins from config
if (!plugins || !plugins.pluginsData || plugins.pluginsData.length<1) return;
updatePlugins: function(plugins, uiCustomize) { // plugins from config
if (!plugins) return;
var pluginsData = (uiCustomize) ? plugins.UIpluginsData : plugins.pluginsData;
if (!pluginsData || pluginsData.length<1) return;
var _createXMLHTTPObject = function() {
var xmlhttp;
@ -1620,7 +1633,7 @@ define([
var arr = [],
baseUrl = plugins.url;
plugins.pluginsData.forEach(function(item){
pluginsData.forEach(function(item){
var url = item;
if (!/(^https?:\/\/)/i.test(url) && !/(^www.)/i.test(item))
url = baseUrl + item;
@ -1633,14 +1646,14 @@ define([
autoStartGuid: plugins.autoStartGuid,
url: plugins.url,
pluginsData: arr
});
}, !!uiCustomize);
},
updatePluginsList: function(plugins) {
updatePluginsList: function(plugins, uiCustomize) {
var pluginStore = this.getApplication().getCollection('Common.Collections.Plugins'),
isEdit = this.appOptions.isEdit;
if (pluginStore && plugins) {
var arr = [];
if (plugins) {
var arr = [], arrUI = [];
plugins.pluginsData.forEach(function(item){
var variations = item.variations,
variationsArr = [];
@ -1651,7 +1664,9 @@ define([
isSupported = true; break;
}
}
if (isSupported && (isEdit || itemVar.isViewer))
if (isSupported && (isEdit || itemVar.isViewer)){
var isRelativeUrl = !(/(^https?:\/\/)/i.test(itemVar.url) || /(^www.)/i.test(itemVar.url));
item.isUICustomizer ? arrUI.push((isRelativeUrl) ? ((item.baseUrl ? item.baseUrl : plugins.url) + itemVar.url) : itemVar.url) :
variationsArr.push(new Common.Models.PluginVariation({
description: itemVar.description,
index: variationsArr.length,
@ -1668,10 +1683,11 @@ define([
buttons: itemVar.buttons,
size: itemVar.size,
initOnSelectionChanged: itemVar.initOnSelectionChanged,
isRelativeUrl: !(/(^https?:\/\/)/i.test(itemVar.url) || /(^www.)/i.test(itemVar.url))
isRelativeUrl: isRelativeUrl
}));
}
});
if (variationsArr.length>0)
if (variationsArr.length>0 && !item.isUICustomizer)
arr.push(new Common.Models.Plugin({
name : item.name,
guid: item.guid,
@ -1681,11 +1697,15 @@ define([
}));
});
pluginStore.reset(arr);
if (uiCustomize!==false) // from ui customizer in editor config or desktop event
this.UICustomizePlugins = arrUI;
this.appOptions.pluginsPath = (plugins.url);
this.appOptions.canPlugins = (arr.length>0);
} else {
if (!uiCustomize) {
if (pluginStore) pluginStore.reset(arr);
this.appOptions.pluginsPath = (plugins.url);
this.appOptions.canPlugins = (arr.length>0);
}
} else if (!uiCustomize){
this.appOptions.pluginsPath = '';
this.appOptions.canPlugins = false;
}
@ -1694,7 +1714,7 @@ define([
if (plugins.autoStartGuid)
this.api.asc_pluginRun(plugins.autoStartGuid, 0, '');
}
this.getApplication().getController('LeftMenu').enablePlugins();
if (!uiCustomize) this.getApplication().getController('LeftMenu').enablePlugins();
},
// Translation

View file

@ -95,7 +95,8 @@ define([
zoom_type: undefined,
zoom_percent: undefined,
fontsize: undefined,
in_equation: undefined
in_equation: undefined,
in_chart: false
};
this._isAddingShape = false;
this.slideSizeArr = [
@ -570,7 +571,8 @@ define([
no_paragraph = true,
no_text = true,
no_object = true,
in_equation = false;
in_equation = false,
in_chart = false;
while (++i < selectedObjects.length) {
type = selectedObjects[i].get_ObjectType();
@ -589,11 +591,17 @@ define([
if (type !== Asc.c_oAscTypeSelectElement.Image) {
no_text = false;
}
in_chart = type == Asc.c_oAscTypeSelectElement.Chart;
} else if (type === Asc.c_oAscTypeSelectElement.Math) {
in_equation = true;
}
}
if (in_chart !== this._state.in_chart) {
this.toolbar.btnInsertChart.updateHint(in_chart ? this.toolbar.tipChangeChart : this.toolbar.tipInsertChart);
this._state.in_chart = in_chart;
}
if (paragraph_locked!==undefined && this._state.prcontrolsdisable !== paragraph_locked) {
if (this._state.activated) this._state.prcontrolsdisable = paragraph_locked;
this.toolbar.lockToolbar(PE.enumLock.paragraphLock, paragraph_locked, {array: me.toolbar.paragraphControls});
@ -1450,20 +1458,39 @@ define([
onSelectChart: function(picker, item, record) {
var me = this,
type = record.get('type');
type = record.get('type'),
chart = false;
if (!this.diagramEditor)
this.diagramEditor = this.getApplication().getController('Common.Controllers.ExternalDiagramEditor').getView('Common.Views.ExternalDiagramEditor');
if (this.diagramEditor && me.api) {
this.diagramEditor.setEditMode(false);
this.diagramEditor.show();
var chart = me.api.asc_getChartObject(type);
if (chart) {
this.diagramEditor.setChartData(new Asc.asc_CChartBinary(chart));
var selectedElements = me.api.getSelectedElements();
if (selectedElements && _.isArray(selectedElements)) {
for (var i = 0; i< selectedElements.length; i++) {
if (Asc.c_oAscTypeSelectElement.Chart == selectedElements[i].get_ObjectType()) {
chart = true;
break;
}
}
}
if (chart) {
var props = new Asc.CAscChartProp();
props.changeType(type);
this.api.ChartApply(props);
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
} else {
if (!this.diagramEditor)
this.diagramEditor = this.getApplication().getController('Common.Controllers.ExternalDiagramEditor').getView('Common.Views.ExternalDiagramEditor');
if (this.diagramEditor && me.api) {
this.diagramEditor.setEditMode(false);
this.diagramEditor.show();
chart = me.api.asc_getChartObject(type);
if (chart) {
this.diagramEditor.setChartData(new Asc.asc_CChartBinary(chart));
}
me.toolbar.fireEvent('insertchart', me.toolbar);
}
me.toolbar.fireEvent('insertchart', me.toolbar);
}
},

View file

@ -200,7 +200,7 @@ define([
cls : 'btn-large-dataview',
iconCls : 'item-chartlist bar-normal',
menu : new Common.UI.Menu({
style: 'width: 560px;',
style: 'width: 435px; padding-top: 12px;',
items: [
{ template: _.template('<div id="id-chart-menu-type" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
]
@ -210,15 +210,15 @@ define([
me.mnuChartTypePicker = new Common.UI.DataView({
el: $('#id-chart-menu-type'),
parentMenu: btn.menu,
restoreHeight: 411,
restoreHeight: 421,
groups: new Common.UI.DataViewGroupStore([
{ id: 'menu-chart-group-bar', caption: me.textColumn },
{ id: 'menu-chart-group-line', caption: me.textLine },
{ id: 'menu-chart-group-pie', caption: me.textPie },
{ id: 'menu-chart-group-hbar', caption: me.textBar },
{ id: 'menu-chart-group-area', caption: me.textArea },
{ id: 'menu-chart-group-scatter', caption: me.textPoint },
{ id: 'menu-chart-group-stock', caption: me.textStock }
{ id: 'menu-chart-group-area', caption: me.textArea, inline: true },
{ id: 'menu-chart-group-scatter', caption: me.textPoint, inline: true },
{ id: 'menu-chart-group-stock', caption: me.textStock, inline: true }
]),
store: new Common.UI.DataViewStore([
{ group: 'menu-chart-group-bar', type: Asc.c_oAscChartTypeSettings.barNormal, iconCls: 'column-normal', selected: true},
@ -487,13 +487,13 @@ define([
textHeight: 'Height',
textEditData: 'Edit Data',
textChartType: 'Change Chart Type',
textLine: 'Line Chart',
textColumn: 'Column Chart',
textBar: 'Bar Chart',
textArea: 'Area Chart',
textPie: 'Pie Chart',
textPoint: 'XY (Scatter) Chart',
textStock: 'Stock Chart',
textLine: 'Line',
textColumn: 'Column',
textBar: 'Bar',
textArea: 'Area',
textPie: 'Pie',
textPoint: 'XY (Scatter)',
textStock: 'Stock',
textStyle: 'Style'
}, PE.Views.ChartSettings || {}));
});

View file

@ -175,18 +175,15 @@ define([
);
var me = this;
this.panels = {};
require(['presentationeditor/main/app/view/FileMenuPanels'], function(){
me.panels = {
'saveas' : (new PE.Views.FileMenuPanels.ViewSaveAs({menu:me})).render(),
'opts' : (new PE.Views.FileMenuPanels.Settings({menu:me})).render(),
'info' : (new PE.Views.FileMenuPanels.DocumentInfo({menu:me})).render(),
'rights' : (new PE.Views.FileMenuPanels.DocumentRights({menu:me})).render(),
'help' : (new PE.Views.FileMenuPanels.Help({menu:me})).render()
};
me.panels = {
'saveas' : (new PE.Views.FileMenuPanels.ViewSaveAs({menu:me})).render(),
'opts' : (new PE.Views.FileMenuPanels.Settings({menu:me})).render(),
'info' : (new PE.Views.FileMenuPanels.DocumentInfo({menu:me})).render(),
'rights' : (new PE.Views.FileMenuPanels.DocumentRights({menu:me})).render(),
'help' : (new PE.Views.FileMenuPanels.Help({menu:me})).render()
};
me.$el.find('.content-box').hide();
});
me.$el.find('.content-box').hide();
return this;
},

View file

@ -260,7 +260,7 @@ define([
this.lblAutosave.text(this.textAutoRecover);
}
/** coauthoring begin **/
$('tr.coauth.changes', this.el)[mode.isEdit && mode.canLicense && !mode.isOffline && mode.canCoAuthoring ? 'show' : 'hide']();
$('tr.coauth.changes', this.el)[mode.isEdit && !mode.isOffline && mode.canCoAuthoring ? 'show' : 'hide']();
/** coauthoring end **/
},
@ -303,7 +303,7 @@ define([
Common.localStorage.setItem("pe-settings-inputmode", this.chInputMode.isChecked() ? 1 : 0);
Common.localStorage.setItem("pe-settings-zoom", this.cmbZoom.getValue());
/** coauthoring begin **/
if (this.mode.isEdit && this.mode.canLicense && !this.mode.isOffline && this.mode.canCoAuthoring) {
if (this.mode.isEdit && !this.mode.isOffline && this.mode.canCoAuthoring) {
Common.localStorage.setItem("pe-settings-coauthmode", this.cmbCoAuthMode.getValue());
}
/** coauthoring end **/

View file

@ -554,7 +554,7 @@ define([
iconCls : 'btn-insertchart',
lock : [_set.slideDeleted, _set.lostConnect, _set.noSlides, _set.disableOnStart],
menu : new Common.UI.Menu({
style: 'width: 560px;',
style: 'width: 435px;',
items: [
{ template: _.template('<div id="id-toolbar-menu-insertchart" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
]
@ -564,15 +564,15 @@ define([
el: $('#id-toolbar-menu-insertchart'),
parentMenu: btn.menu,
showLast: false,
restoreHeight: 411,
restoreHeight: 421,
groups: new Common.UI.DataViewGroupStore([
{ id: 'menu-chart-group-bar', caption: me.textColumn },
{ id: 'menu-chart-group-bar', caption: me.textColumn, headername: me.textCharts },
{ id: 'menu-chart-group-line', caption: me.textLine },
{ id: 'menu-chart-group-pie', caption: me.textPie },
{ id: 'menu-chart-group-hbar', caption: me.textBar },
{ id: 'menu-chart-group-area', caption: me.textArea },
{ id: 'menu-chart-group-scatter', caption: me.textPoint },
{ id: 'menu-chart-group-stock', caption: me.textStock }
{ id: 'menu-chart-group-area', caption: me.textArea, inline: true },
{ id: 'menu-chart-group-scatter', caption: me.textPoint, inline: true },
{ id: 'menu-chart-group-stock', caption: me.textStock, inline: true }
]),
store: new Common.UI.DataViewStore([
{ group: 'menu-chart-group-bar', type: Asc.c_oAscChartTypeSettings.barNormal, allowSelected: true, iconCls: 'column-normal', selected: true},
@ -1676,13 +1676,13 @@ define([
textFitWidth: 'Fit to Width',
textZoom: 'Zoom',
tipInsertChart: 'Insert Chart',
textLine: 'Line Chart',
textColumn: 'Column Chart',
textBar: 'Bar Chart',
textArea: 'Area Chart',
textPie: 'Pie Chart',
textPoint: 'XY (Scatter) Chart',
textStock: 'Stock Chart',
textLine: 'Line',
textColumn: 'Column',
textBar: 'Bar',
textArea: 'Area',
textPie: 'Pie',
textPoint: 'XY (Scatter)',
textStock: 'Stock',
tipSynchronize: 'The document has been changed by another user. Please click to save your changes and reload the updates.',
txtScheme1: 'Office',
txtScheme2: 'Grayscale',
@ -1712,6 +1712,8 @@ define([
textShowBegin: 'Show from Beginning',
textShowCurrent: 'Show from Current slide',
textShowSettings: 'Show Settings',
tipInsertEquation: 'Insert Equation'
tipInsertEquation: 'Insert Equation',
textCharts: 'Charts',
tipChangeChart: 'Change Chart Type'
}, PE.Views.Toolbar || {}));
});

View file

@ -163,6 +163,7 @@ require([
'presentationeditor/main/app/controller/RightMenu',
'presentationeditor/main/app/controller/LeftMenu',
'presentationeditor/main/app/controller/Main',
'presentationeditor/main/app/view/FileMenuPanels',
'presentationeditor/main/app/view/ParagraphSettings',
'presentationeditor/main/app/view/ImageSettings',
'presentationeditor/main/app/view/ShapeSettings',

View file

@ -578,18 +578,18 @@
"PE.Controllers.Toolbar.txtSymbol_vdots": "Vertical Ellipsis",
"PE.Controllers.Toolbar.txtSymbol_xsi": "Xi",
"PE.Controllers.Toolbar.txtSymbol_zeta": "Zeta",
"PE.Views.ChartSettings.textArea": "Area Chart",
"PE.Views.ChartSettings.textBar": "Bar Chart",
"PE.Views.ChartSettings.textArea": "Area",
"PE.Views.ChartSettings.textBar": "Bar",
"PE.Views.ChartSettings.textChartType": "Change Chart Type",
"PE.Views.ChartSettings.textColumn": "Column Chart",
"PE.Views.ChartSettings.textColumn": "Column",
"PE.Views.ChartSettings.textEditData": "Edit Data",
"PE.Views.ChartSettings.textHeight": "Height",
"PE.Views.ChartSettings.textKeepRatio": "Constant Proportions",
"PE.Views.ChartSettings.textLine": "Line Chart",
"PE.Views.ChartSettings.textPie": "Pie Chart",
"PE.Views.ChartSettings.textPoint": "XY (Scatter) Chart",
"PE.Views.ChartSettings.textLine": "Line",
"PE.Views.ChartSettings.textPie": "Pie",
"PE.Views.ChartSettings.textPoint": "XY (Scatter)",
"PE.Views.ChartSettings.textSize": "Size",
"PE.Views.ChartSettings.textStock": "Stock Chart",
"PE.Views.ChartSettings.textStock": "Stock",
"PE.Views.ChartSettings.textStyle": "Style",
"PE.Views.ChartSettings.textWidth": "Width",
"PE.Views.DocumentHolder.aboveText": "Above",
@ -1190,15 +1190,16 @@
"PE.Views.Toolbar.textAlignMiddle": "Align text to the middle",
"PE.Views.Toolbar.textAlignRight": "Align text right",
"PE.Views.Toolbar.textAlignTop": "Align text to the top",
"PE.Views.Toolbar.textArea": "Area Chart",
"PE.Views.Toolbar.textArea": "Area",
"PE.Views.Toolbar.textArrangeBack": "Send to Background",
"PE.Views.Toolbar.textArrangeBackward": "Move Backward",
"PE.Views.Toolbar.textArrangeForward": "Move Forward",
"PE.Views.Toolbar.textArrangeFront": "Bring To Foreground",
"PE.Views.Toolbar.textBar": "Bar Chart",
"PE.Views.Toolbar.textBar": "Bar",
"PE.Views.Toolbar.textBold": "Bold",
"PE.Views.Toolbar.textCancel": "Cancel",
"PE.Views.Toolbar.textColumn": "Column Chart",
"PE.Views.Toolbar.textCharts": "Charts",
"PE.Views.Toolbar.textColumn": "Column",
"PE.Views.Toolbar.textCompactView": "View Compact Toolbar",
"PE.Views.Toolbar.textFitPage": "Fit to Slide",
"PE.Views.Toolbar.textFitWidth": "Fit to Width",
@ -1208,11 +1209,11 @@
"PE.Views.Toolbar.textInsText": "Insert text box",
"PE.Views.Toolbar.textInsTextArt": "Insert Text Art",
"PE.Views.Toolbar.textItalic": "Italic",
"PE.Views.Toolbar.textLine": "Line Chart",
"PE.Views.Toolbar.textLine": "Line",
"PE.Views.Toolbar.textNewColor": "Custom Color",
"PE.Views.Toolbar.textOK": "OK",
"PE.Views.Toolbar.textPie": "Pie Chart",
"PE.Views.Toolbar.textPoint": "XY (Scatter) Chart",
"PE.Views.Toolbar.textPie": "Pie",
"PE.Views.Toolbar.textPoint": "XY (Scatter)",
"PE.Views.Toolbar.textShapeAlignBottom": "Align Bottom",
"PE.Views.Toolbar.textShapeAlignCenter": "Align Center",
"PE.Views.Toolbar.textShapeAlignLeft": "Align Left",
@ -1222,7 +1223,7 @@
"PE.Views.Toolbar.textShowBegin": "Show from Beginning",
"PE.Views.Toolbar.textShowCurrent": "Show from Current slide",
"PE.Views.Toolbar.textShowSettings": "Show Settings",
"PE.Views.Toolbar.textStock": "Stock Chart",
"PE.Views.Toolbar.textStock": "Stock",
"PE.Views.Toolbar.textStrikeout": "Strikeout",
"PE.Views.Toolbar.textSubscript": "Subscript",
"PE.Views.Toolbar.textSuperscript": "Superscript",
@ -1232,6 +1233,7 @@
"PE.Views.Toolbar.tipAddSlide": "Add Slide",
"PE.Views.Toolbar.tipAdvSettings": "Advanced Settings",
"PE.Views.Toolbar.tipBack": "Back",
"PE.Views.Toolbar.tipChangeChart": "Change Chart Type",
"PE.Views.Toolbar.tipChangeSlide": "Change Slide Layout",
"PE.Views.Toolbar.tipClearStyle": "Clear Style",
"PE.Views.Toolbar.tipColorSchemas": "Change Color Scheme",

View file

@ -394,8 +394,6 @@
.header-name {
padding: 7px 2px 7px 10px;
font-weight: bold;
cursor: default;
}
}
}

View file

@ -174,20 +174,12 @@
// charts
.menu-insertchart {
.group-description {
float: left;
width: 125px;
line-height: 58px;
padding-left: 6px;
padding-left: 4px;
}
.group-items-container {
float: left;
position: relative;
& > div {
float: left;
margin: 0 0 0 14px;
}
}
}

View file

@ -8,6 +8,9 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/common/apiCommon.js",
"../../../../sdkjs/common/SerializeCommonWordExcel.js",
"../../../../sdkjs/common/editorscommon.js",
"../../../../sdkjs/common/HistoryCommon.js",
"../../../../sdkjs/common/TableId.js",
"../../../../sdkjs/common/TableIdChanges.js",
"../../../../sdkjs/common/NumFormat.js",
"../../../../sdkjs/common/SerializeChart.js",
"../../../../sdkjs/common/AdvancedOptions.js",
@ -25,7 +28,6 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/common/Drawings/Hit.js",
"../../../../sdkjs/common/Drawings/ArcTo.js",
"../../../../sdkjs/common/Drawings/ColorArray.js",
"../../../../sdkjs/common/Drawings/Format/Constants.js",
"../../../../sdkjs/common/Drawings/CommonController.js",
"../../../../sdkjs/common/Drawings/States.js",
"../../../../sdkjs/common/Drawings/Format/CreateGeometry.js",
@ -75,17 +77,23 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/slide/Drawing/ThemeLoader.js",
"../../../../sdkjs/word/Editor/Serialize2.js",
"../../../../sdkjs/word/Editor/Numbering.js",
"../../../../sdkjs/word/Editor/NumberingChanges.js",
"../../../../sdkjs/slide/Editor/CollaborativeEditing.js",
"../../../../sdkjs/word/Drawing/GraphicsEvents.js",
"../../../../sdkjs/word/Drawing/Rulers.js",
"../../../../sdkjs/word/Editor/Table.js",
"../../../../sdkjs/word/Editor/Table/TableChanges.js",
"../../../../sdkjs/word/Editor/Table/TableRecalculate.js",
"../../../../sdkjs/word/Editor/Table/TableDraw.js",
"../../../../sdkjs/word/Editor/Table/TableRow.js",
"../../../../sdkjs/word/Editor/Table/TableRowChanges.js",
"../../../../sdkjs/word/Editor/Table/TableCell.js",
"../../../../sdkjs/word/Editor/Table/TableCellChanges.js",
"../../../../sdkjs/word/Editor/Common.js",
"../../../../sdkjs/word/Editor/Sections.js",
"../../../../sdkjs/word/Editor/SectionsChanges.js",
"../../../../sdkjs/word/Editor/Styles.js",
"../../../../sdkjs/word/Editor/StylesChanges.js",
"../../../../sdkjs/slide/Editor/Format/StylesPrototype.js",
"../../../../sdkjs/word/Drawing/Graphics.js",
"../../../../sdkjs/word/Drawing/ShapeDrawer.js",
@ -99,10 +107,17 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/slide/Editor/Format/Layout.js",
"../../../../sdkjs/slide/Editor/Format/Comments.js",
"../../../../sdkjs/word/Editor/ParagraphContent.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaTextPr.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaTextPrChanges.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaDrawing.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaDrawingChanges.js",
"../../../../sdkjs/word/Editor/Paragraph.js",
"../../../../sdkjs/word/Editor/ParagraphChanges.js",
"../../../../sdkjs/word/Editor/DocumentContentBase.js",
"../../../../sdkjs/word/Editor/Document.js",
"../../../../sdkjs/word/Editor/DocumentChanges.js",
"../../../../sdkjs/word/Editor/DocumentContent.js",
"../../../../sdkjs/word/Editor/DocumentContentChanges.js",
"../../../../sdkjs/word/Editor/DocumentControllerBase.js",
"../../../../sdkjs/word/Editor/LogicDocumentController.js",
"../../../../sdkjs/word/Editor/DrawingsController.js",
@ -115,8 +130,11 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/word/Editor/Numbering.js",
"../../../../sdkjs/word/Editor/ParagraphContentBase.js",
"../../../../sdkjs/word/Editor/Hyperlink.js",
"../../../../sdkjs/word/Editor/HyperlinkChanges.js",
"../../../../sdkjs/word/Editor/Field.js",
"../../../../sdkjs/word/Editor/FieldChanges.js",
"../../../../sdkjs/word/Editor/Run.js",
"../../../../sdkjs/word/Editor/RunChanges.js",
"../../../../sdkjs/word/Math/mathTypes.js",
"../../../../sdkjs/word/Math/mathText.js",
"../../../../sdkjs/word/Math/mathContent.js",
@ -134,8 +152,10 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/word/Editor/Paragraph_Recalculate.js",
"../../../../sdkjs/word/Editor/HeaderFooter.js",
"../../../../sdkjs/word/Editor/Math.js",
"../../../../sdkjs/word/Editor/MathChanges.js",
"../../../../sdkjs/word/Editor/Spelling.js",
"../../../../sdkjs/word/Editor/Footnotes.js",
"../../../../sdkjs/word/Editor/FootnotesChanges.js",
"../../../../sdkjs/word/Editor/FootEndNote.js",
"../../../../sdkjs/word/Editor/Search.js",
"../../../../sdkjs/word/Editor/FontClassification.js",
@ -151,5 +171,8 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/common/plugins.js",
"../../../../sdkjs/word/apiBuilder.js",
"../../../../sdkjs/slide/apiBuilder.js",
"../../../../sdkjs/common/text_input.js"
"../../../../sdkjs/common/text_input.js",
"../../../../sdkjs/common/Scrolls/iscroll.js",
"../../../../sdkjs/common/Scrolls/mobileTouchManagerBase.js",
"../../../../sdkjs/slide/Drawing/mobileTouchManager.js"
];

View file

@ -174,6 +174,7 @@ require([
'spreadsheeteditor/main/app/controller/LeftMenu',
'spreadsheeteditor/main/app/controller/Main',
'spreadsheeteditor/main/app/controller/Print',
'spreadsheeteditor/main/app/view/FileMenuPanels',
'spreadsheeteditor/main/app/view/ParagraphSettings',
'spreadsheeteditor/main/app/view/ImageSettings',
'spreadsheeteditor/main/app/view/ChartSettings',

View file

@ -125,6 +125,7 @@ define([
this.api.isCEditorFocused = false;
this.editor.cellNameDisabled(false);
}
this.editor.$btnfunc.toggleClass('disabled', state == Asc.c_oAscCellEditorState.editText);
},
onApiCellSelection: function(info) {
@ -147,6 +148,7 @@ define([
onCellsRange: function(status) {
this.editor.cellNameDisabled(status != Asc.c_oAscSelectionDialogType.None);
this.editor.$btnfunc.toggleClass('disabled', status != Asc.c_oAscSelectionDialogType.None);
},
onLayoutResize: function(o, r) {

View file

@ -257,7 +257,7 @@ define([
(!(value!==null && parseInt(value) == 0)) ? this.api.asc_showComments() : this.api.asc_hideComments();
// this.getApplication().getController('DocumentHolder').setLiveCommenting(!(value!==null && parseInt(value) == 0));
if (this.mode.isEdit && this.mode.canLicense && !this.mode.isOffline && this.mode.canCoAuthoring) {
if (this.mode.isEdit && !this.mode.isOffline && this.mode.canCoAuthoring) {
value = Common.localStorage.getItem("sse-settings-coauthmode");
this.api.asc_SetFastCollaborative(value===null || parseInt(value) == 1);
}

View file

@ -147,6 +147,7 @@ define([
// Initialize api gateway
this.editorConfig = {};
this.plugins = undefined;
this.UICustomizePlugins = [];
Common.Gateway.on('init', _.bind(this.loadConfig, this));
Common.Gateway.on('showmessage', _.bind(this.onExternalMessage, this));
Common.Gateway.on('opendocument', _.bind(this.loadDocument, this));
@ -580,7 +581,7 @@ define([
this.isLiveCommenting = !(value!==null && parseInt(value) == 0);
this.isLiveCommenting?this.api.asc_showComments():this.api.asc_hideComments();
if (this.appOptions.isEdit && this.appOptions.canLicense && !this.appOptions.isOffline && this.appOptions.canCoAuthoring) {
if (this.appOptions.isEdit && !this.appOptions.isOffline && this.appOptions.canCoAuthoring) {
value = Common.localStorage.getItem("sse-settings-coauthmode");
if (value===null && Common.localStorage.getItem("sse-settings-autosave")===null &&
this.appOptions.customization && this.appOptions.customization.autosave===false) {
@ -620,7 +621,7 @@ define([
if (!me.appOptions.isEditMailMerge && !me.appOptions.isEditDiagram) {
pluginsController.setApi(me.api);
me.updatePlugins(me.plugins);
me.updatePlugins(me.plugins, false);
me.api.asc_registerCallback('asc_onPluginsInit', _.bind(me.updatePluginsList, me));
}
@ -692,9 +693,13 @@ define([
}
if (me.needToUpdateVersion)
toolbarController.onApiCoAuthoringDisconnect();
if (me.appOptions.canBrandingExt)
Common.NotificationCenter.trigger('document:ready', 'main');
}
}, 50);
}
} else if (me.appOptions.canBrandingExt)
Common.NotificationCenter.trigger('document:ready', 'main');
if (me.appOptions.canAnalytics && false)
Common.component.Analytics.initialize('UA-12442749-13', 'Spreadsheet Editor');
@ -790,7 +795,9 @@ define([
if (this.appOptions.canBranding)
this.headerView.setBranding(this.editorConfig.customization);
this.appOptions.canBrandingExt = params.asc_getCanBranding() && (typeof this.editorConfig.customization == 'object');
this.appOptions.canBrandingExt = params.asc_getCanBranding() && (typeof this.editorConfig.customization == 'object' || this.editorConfig.plugins);
if (this.appOptions.canBrandingExt)
this.updatePlugins(this.plugins, true);
params.asc_getTrial() && this.headerView.setDeveloperMode(true);
this.appOptions.canRename && this.headerView.setCanRename(true);
@ -1356,13 +1363,15 @@ define([
},
hidePreloader: function() {
if (!!this.appOptions.customization && !this.appOptions.customization.done) {
this.appOptions.customization.done = true;
if (!this.appOptions.isDesktopApp)
if (!this._state.customizationDone) {
this._state.customizationDone = true;
if (this.appOptions.customization && !this.appOptions.isDesktopApp)
this.appOptions.customization.about = true;
Common.Utils.applyCustomization(this.appOptions.customization, mapCustomizationElements);
if (this.appOptions.canBrandingExt)
if (this.appOptions.canBrandingExt) {
Common.Utils.applyCustomization(this.appOptions.customization, mapCustomizationExtElements);
Common.Utils.applyCustomizationPlugins(this.UICustomizePlugins);
}
}
this.stackLongActions.pop({id: InitApplication, type: Asc.c_oAscAsyncActionType.BlockInteraction});
@ -1752,7 +1761,7 @@ define([
},
applySettings: function() {
if (this.appOptions.isEdit && this.appOptions.canLicense && !this.appOptions.isOffline && this.appOptions.canCoAuthoring) {
if (this.appOptions.isEdit && !this.appOptions.isOffline && this.appOptions.canCoAuthoring) {
var value = Common.localStorage.getItem("sse-settings-coauthmode"),
oldval = this._state.fastCoauth;
this._state.fastCoauth = (value===null || parseInt(value) == 1);
@ -1807,8 +1816,11 @@ define([
if (url) this.iframePrint.src = url;
},
updatePlugins: function(plugins) { // plugins from config
if (!plugins || !plugins.pluginsData || plugins.pluginsData.length<1) return;
updatePlugins: function(plugins, uiCustomize) { // plugins from config
if (!plugins) return;
var pluginsData = (uiCustomize) ? plugins.UIpluginsData : plugins.pluginsData;
if (!pluginsData || pluginsData.length<1) return;
var _createXMLHTTPObject = function() {
var xmlhttp;
@ -1846,7 +1858,7 @@ define([
var arr = [],
baseUrl = plugins.url;
plugins.pluginsData.forEach(function(item){
pluginsData.forEach(function(item){
var url = item;
if (!/(^https?:\/\/)/i.test(url) && !/(^www.)/i.test(item))
url = baseUrl + item;
@ -1859,14 +1871,14 @@ define([
autoStartGuid: plugins.autoStartGuid,
url: plugins.url,
pluginsData: arr
});
}, !!uiCustomize);
},
updatePluginsList: function(plugins) {
updatePluginsList: function(plugins, uiCustomize) {
var pluginStore = this.getApplication().getCollection('Common.Collections.Plugins'),
isEdit = this.appOptions.isEdit;
if (pluginStore && plugins) {
var arr = [];
if (plugins) {
var arr = [], arrUI = [];
plugins.pluginsData.forEach(function(item){
var variations = item.variations,
variationsArr = [];
@ -1877,7 +1889,9 @@ define([
isSupported = true; break;
}
}
if (isSupported && (isEdit || itemVar.isViewer))
if (isSupported && (isEdit || itemVar.isViewer)) {
var isRelativeUrl = !(/(^https?:\/\/)/i.test(itemVar.url) || /(^www.)/i.test(itemVar.url));
item.isUICustomizer ? arrUI.push((isRelativeUrl) ? ((item.baseUrl ? item.baseUrl : plugins.url) + itemVar.url) : itemVar.url) :
variationsArr.push(new Common.Models.PluginVariation({
description: itemVar.description,
index: variationsArr.length,
@ -1894,10 +1908,11 @@ define([
buttons: itemVar.buttons,
size: itemVar.size,
initOnSelectionChanged: itemVar.initOnSelectionChanged,
isRelativeUrl: !(/(^https?:\/\/)/i.test(itemVar.url) || /(^www.)/i.test(itemVar.url))
isRelativeUrl: isRelativeUrl
}));
}
});
if (variationsArr.length>0)
if (variationsArr.length>0 && !item.isUICustomizer)
arr.push(new Common.Models.Plugin({
name : item.name,
guid: item.guid,
@ -1907,11 +1922,15 @@ define([
}));
});
pluginStore.reset(arr);
if (uiCustomize!==false) // from ui customizer in editor config or desktop event
this.UICustomizePlugins = arrUI;
this.appOptions.pluginsPath = (plugins.url);
this.appOptions.canPlugins = (arr.length>0);
} else {
if (!uiCustomize) {
if (pluginStore) pluginStore.reset(arr);
this.appOptions.pluginsPath = (plugins.url);
this.appOptions.canPlugins = (arr.length>0);
}
} else if (!uiCustomize){
this.appOptions.pluginsPath = '';
this.appOptions.canPlugins = false;
}
@ -1920,7 +1939,7 @@ define([
if (plugins.autoStartGuid)
this.api.asc_pluginRun(plugins.autoStartGuid, 0, '');
}
this.getApplication().getController('LeftMenu').enablePlugins();
if (!uiCustomize) this.getApplication().getController('LeftMenu').enablePlugins();
},
leavePageText: 'You have unsaved changes in this document. Click \'Stay on this Page\' then \'Save\' to save them. Click \'Leave this Page\' to discard all the unsaved changes.',

View file

@ -150,6 +150,7 @@ define([
if (settingsType == Common.Utils.documentSettingsType.Image) {
if (value.asc_getChartProperties() !== null) {
settingsType = Common.Utils.documentSettingsType.Chart;
this._settings[settingsType].btn.updateHint(this.rightmenu.txtChartSettings);
} else if (value.asc_getShapeProperties() !== null) {
settingsType = Common.Utils.documentSettingsType.Shape;
if (value.asc_getShapeProperties().asc_getTextArtProperties()) {
@ -177,6 +178,7 @@ define([
this._settings[settingsType].props = sparkLineInfo;
this._settings[settingsType].locked = isSparkLocked;
this._settings[settingsType].hidden = 0;
this._settings[settingsType].btn.updateHint(this.rightmenu.txtSparklineSettings);
}
var lastactive = -1, currentactive, priorityactive = -1,

View file

@ -100,7 +100,8 @@ define([
tablename: undefined,
namedrange_locked: false,
fontsize: undefined,
multiselect: false
multiselect: false,
sparklines_disabled: false
};
var checkInsertAutoshape = function(e, action) {
@ -205,10 +206,8 @@ define([
toolbar.btnTextOrient.menu.on('item:click', _.bind(this.onTextOrientationMenu, this));
toolbar.btnInsertImage.menu.on('item:click', _.bind(this.onInsertImageMenu, this));
toolbar.btnInsertHyperlink.on('click', _.bind(this.onHyperlink, this));
toolbar.btnInsertChart.on('click', _.bind(this.onInsertChart, this));
// if (toolbar.mnuInsertChartPicker) toolbar.mnuInsertChartPicker.on('item:click', _.bind(this.onSelectChart, this));
// if (toolbar.mnuInsertSparkPicker) toolbar.mnuInsertSparkPicker.on('item:click', _.bind(this.onSelectSpark, this));
toolbar.btnEditChart.on('click', _.bind(this.onInsertChart, this));
toolbar.mnuInsertChartPicker.on('item:click', _.bind(this.onSelectChart, this));
toolbar.btnEditChart.on('click', _.bind(this.onEditChart, this));
toolbar.btnInsertText.on('click', _.bind(this.onBtnInsertTextClick, this));
toolbar.btnInsertText.menu.on('item:click', _.bind(this.onInsertTextClick, this));
toolbar.btnInsertShape.menu.on('hide:after', _.bind(this.onInsertShapeHide, this));
@ -272,7 +271,7 @@ define([
setApi: function(api) {
this.api = api;
this.api.asc_registerCallback('asc_onInitTablePictures', _.bind(this.onApiInitTableTemplates, this));
this.api.asc_registerCallback('asc_onSendThemeColors', _.bind(this.onSendThemeColors, this));
this.api.asc_registerCallback('asc_onInitEditorStyles', _.bind(this.onApiInitEditorStyles, this));
this.api.asc_registerCallback('asc_onCoAuthoringDisconnect',_.bind(this.onApiCoAuthoringDisconnect, this, true));
Common.NotificationCenter.on('api:disconnect', _.bind(this.onApiCoAuthoringDisconnect, this));
@ -743,7 +742,7 @@ define([
Common.component.Analytics.trackEvent('ToolBar', 'Add Hyperlink');
},
onInsertChart: function(btn) {
onEditChart: function(btn) {
if (!this.editMode) return;
var me = this, info = me.api.asc_getCellInfo();
if (info.asc_getFlags().asc_getSelectionType()!=Asc.c_oAscSelectionType.RangeImage) {
@ -774,37 +773,30 @@ define([
onSelectChart: function(picker, item, record, e) {
if (!this.editMode) return;
var me = this, info = me.api.asc_getCellInfo();
if (info.asc_getFlags().asc_getSelectionType()!=Asc.c_oAscSelectionType.RangeImage) {
var win, props;
if (me.api){
var ischartedit = ( info.asc_getFlags().asc_getSelectionType() == Asc.c_oAscSelectionType.RangeChart || info.asc_getFlags().asc_getSelectionType() == Asc.c_oAscSelectionType.RangeChartText);
if (ischartedit) {
} else {
props = me.api.asc_getChartObject();
if (props) {
props.putType(record.get('type'));
me.api.asc_addChartDrawingObject(props);
}
}
}
}
if (e.type !== 'click')
me.toolbar.btnInsertChart.menu.hide();
Common.NotificationCenter.trigger('edit:complete', this.toolbar);
},
var me = this,
info = me.api.asc_getCellInfo(),
type = info.asc_getFlags().asc_getSelectionType(),
group = record.get('group'),
isSpark = (group == 'menu-chart-group-sparkcolumn' || group == 'menu-chart-group-sparkline' || group == 'menu-chart-group-sparkwin');
onSelectSpark: function(picker, item, record, e) {
if (!this.editMode) return;
var me = this, info = me.api.asc_getCellInfo(), type = info.asc_getFlags().asc_getSelectionType();
if (type==Asc.c_oAscSelectionType.RangeCells || type==Asc.c_oAscSelectionType.RangeCol ||
type==Asc.c_oAscSelectionType.RangeRow || type==Asc.c_oAscSelectionType.RangeMax) {
var props;
if (me.api){
if (type!=Asc.c_oAscSelectionType.RangeImage && me.api) {
var win, props;
if (isSpark && (type==Asc.c_oAscSelectionType.RangeCells || type==Asc.c_oAscSelectionType.RangeCol ||
type==Asc.c_oAscSelectionType.RangeRow || type==Asc.c_oAscSelectionType.RangeMax)) {
var sparkLineInfo = info.asc_getSparklineInfo();
if (!!sparkLineInfo) {
var props = new Asc.sparklineGroup();
props.asc_setType(record.get('type'));
this.api.asc_setSparklineGroup(sparkLineInfo.asc_getId(), props);
} else {
// add sparkline
}
} else if (!isSpark) {
var ischartedit = ( type == Asc.c_oAscSelectionType.RangeChart || type == Asc.c_oAscSelectionType.RangeChartText);
props = me.api.asc_getChartObject();
if (props) {
props.putType(record.get('type'));
me.api.asc_addChartDrawingObject(props);
(ischartedit) ? me.api.asc_editChartDrawingObject(props) : me.api.asc_addChartDrawingObject(props);
}
}
}
@ -1366,14 +1358,21 @@ define([
},
onTableTplMenuOpen: function(cmp) {
var scroller = this.toolbar.mnuTableTemplatePicker.scroller;
this.onApiInitTableTemplates(this.api.asc_getTablePictures(this.api.asc_getCellInfo().asc_getFormatTableInfo()));
var scroller = this.toolbar.mnuTableTemplatePicker.scroller;
if (scroller) {
scroller.update({alwaysVisibleY: true});
scroller.scrollTop(0);
}
},
onSendThemeColors: function() {
// get new table templates
if (this.toolbar.btnTableTemplate.rendered && this.toolbar.btnTableTemplate.cmpEl.hasClass('open'))
this.onTableTplMenuOpen();
},
onApiInitTableTemplates: function(images) {
var store = this.getCollection('TableTemplates');
if (store) {
@ -1385,7 +1384,8 @@ define([
type : item.asc_getType(),
imageUrl : item.asc_getImage(),
allowSelected : true,
selected : false
selected : false,
tip : item.asc_getDisplayName()
});
});
@ -1432,7 +1432,7 @@ define([
},
onApiChartDblClick: function() {
this.onInsertChart(this.btnInsertChart);
this.onEditChart(this.btnInsertChart);
},
onApiCanRevert: function(which, can) {
@ -1626,6 +1626,16 @@ define([
toolbar.lockToolbar(SSE.enumLock.cantHyperlink, (selectionType == Asc.c_oAscSelectionType.RangeShapeText) && (this.api.asc_canAddShapeHyperlink()===false), { array: [toolbar.btnInsertHyperlink]});
need_disable = selectionType != Asc.c_oAscSelectionType.RangeCells && selectionType != Asc.c_oAscSelectionType.RangeCol &&
selectionType != Asc.c_oAscSelectionType.RangeRow && selectionType != Asc.c_oAscSelectionType.RangeMax;
if (this._state.sparklines_disabled !== need_disable) {
var len = toolbar.mnuInsertChartPicker.store.length;
for (var i=0; i<3; i++) {
toolbar.mnuInsertChartPicker.store.at(len-i-1).set({disabled: need_disable});
this._state.sparklines_disabled = need_disable;
}
}
if (editOptionsDisabled) return;
/* read font params */
@ -2001,17 +2011,13 @@ define([
if (!_.isUndefined(opts.headings)) {
if (this.api) {
var current = this.api.asc_getSheetViewSettings();
current.asc_setShowRowColHeaders(!opts.headings);
this.api.asc_setSheetViewSettings(current);
this.api.asc_setDisplayHeadings(!opts.headings);
}
}
if (!_.isUndefined(opts.gridlines)) {
if (this.api) {
current = this.api.asc_getSheetViewSettings();
current.asc_setShowGridLines(!opts.gridlines);
this.api.asc_setSheetViewSettings(current);
this.api.asc_setDisplayGridlines(!opts.gridlines);
}
}
@ -2394,6 +2400,7 @@ define([
clear: [_set.selImage, _set.selChart, _set.selChartText, _set.selShape, _set.selShapeText, _set.coAuth]
});
toolbar.lockToolbar(SSE.enumLock.coAuthText, is_objLocked);
toolbar.lockToolbar(SSE.enumLock.coAuthText, is_objLocked && (seltype==Asc.c_oAscSelectionType.RangeChart || seltype==Asc.c_oAscSelectionType.RangeChartText), { array: [toolbar.btnInsertChart] } );
}
$('#ce-func-label').toggleClass('disabled', is_image || is_mode_2 || coauth_disable);

View file

@ -335,35 +335,35 @@
<!--<div id="spark-dlg-radio-single" style="display: block;"></div>-->
<!--</div>-->
<table cols="2" style="width: 100%;">
<!--<tr>-->
<!--<td colspan=2 >-->
<!--<label class="header"><%= scope.textDataRange %></label>-->
<!--</td>-->
<!--</tr>-->
<!--<tr>-->
<!--<td class="padding-small" width="200">-->
<!--<div id="spark-dlg-txt-range" class="input-row" style="margin-right: 10px;"></div>-->
<!--</td>-->
<!--<td class="padding-small" style="text-align: right;">-->
<!--<button type="button" class="btn btn-text-default" id="spark-dlg-btn-data" style="min-width: 100px;"><%= scope.textSelectData %></button>-->
<!--</td>-->
<!--</tr>-->
<!--<tr>-->
<!--<td colspan=2 >-->
<!--<label class="header"><%= scope.textLocationRange %></label>-->
<!--</td>-->
<!--</tr>-->
<!--<tr>-->
<!--<td class="padding-large" width="200">-->
<!--<div id="spark-dlg-txt-location" class="input-row" style="margin-right: 10px;"></div>-->
<!--</td>-->
<!--<td class="padding-large" style="text-align: right;">-->
<!--<button type="button" class="btn btn-text-default" id="spark-dlg-btn-location-data" style="min-width: 100px;"><%= scope.textSelectData %></button>-->
<!--</td>-->
<!--</tr>-->
<!--<tr>-->
<!--<td colspan=2 class="padding-large"></td>-->
<!--</tr>-->
<tr>
<td colspan=2 >
<label class="header"><%= scope.textDataRange %></label>
</td>
</tr>
<tr>
<td class="padding-small" width="200">
<div id="spark-dlg-txt-range" class="input-row" style="margin-right: 10px;"></div>
</td>
<td class="padding-small" style="text-align: right;">
<button type="button" class="btn btn-text-default" id="spark-dlg-btn-data" style="min-width: 100px;"><%= scope.textSelectData %></button>
</td>
</tr>
<tr>
<td colspan=2 >
<label class="header"><%= scope.textLocationRange %></label>
</td>
</tr>
<tr>
<td class="padding-large" width="200">
<div id="spark-dlg-txt-location" class="input-row" style="margin-right: 10px;"></div>
</td>
<td class="padding-large" style="text-align: right;">
<button type="button" class="btn btn-text-default" id="spark-dlg-btn-location-data" style="min-width: 100px;"><%= scope.textSelectData %></button>
</td>
</tr>
<tr>
<td colspan=2 class="padding-large"></td>
</tr>
<tr>
<td colspan=2 class="padding-small">
<label class="header"><%= scope.textEmptyCells %></label>

View file

@ -102,7 +102,6 @@ define([
cellNameDisabled: function(disabled){
(disabled) ? this.$cellname.attr('disabled', 'disabled') : this.$cellname.removeAttr('disabled');
this.$btnfunc.toggleClass('disabled', disabled);
this.btnNamedRanges.setDisabled(disabled);
},

View file

@ -109,20 +109,23 @@ define([
this.inputRange.setValue(settings.range ? settings.range : '');
if (settings.type===undefined)
settings.type = Asc.c_oAscSelectionDialogType.Chart;
if (settings.api) {
me.api = settings.api;
me.api.asc_setSelectionDialogMode(Asc.c_oAscSelectionDialogType.Chart, settings.range ? settings.range : '');
me.api.asc_setSelectionDialogMode(settings.type, settings.range ? settings.range : '');
me.api.asc_unregisterCallback('asc_onSelectionRangeChanged', _.bind(me.onApiRangeChanged, me));
me.api.asc_registerCallback('asc_onSelectionRangeChanged', _.bind(me.onApiRangeChanged, me));
Common.NotificationCenter.trigger('cells:range', Asc.c_oAscSelectionDialogType.Chart);
Common.NotificationCenter.trigger('cells:range', settings.type);
}
me.inputRange.validation = function(value) {
if (settings.validation) {
return settings.validation.call(me, value);
} else {
var isvalid = me.api.asc_checkDataRange(Asc.c_oAscSelectionDialogType.Chart, value, false);
var isvalid = me.api.asc_checkDataRange(settings.type, value, false);
return (isvalid==Asc.c_oAscError.ID.DataRangeError) ? me.txtInvalidRange : true;
}
};

View file

@ -654,7 +654,7 @@ define([
cls : 'btn-large-dataview',
iconCls : 'item-chartlist bar-normal',
menu : new Common.UI.Menu({
style: 'width: 560px;',
style: 'width: 435px; padding-top: 12px;',
items: [
{ template: _.template('<div id="id-chart-menu-type" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
]
@ -665,15 +665,15 @@ define([
me.mnuChartTypePicker = new Common.UI.DataView({
el: $('#id-chart-menu-type'),
parentMenu: btn.menu,
restoreHeight: 411,
restoreHeight: 421,
groups: new Common.UI.DataViewGroupStore([
{ id: 'menu-chart-group-bar', caption: me.textColumn },
{ id: 'menu-chart-group-line', caption: me.textLine },
{ id: 'menu-chart-group-pie', caption: me.textPie },
{ id: 'menu-chart-group-hbar', caption: me.textBar },
{ id: 'menu-chart-group-area', caption: me.textArea },
{ id: 'menu-chart-group-scatter', caption: me.textPoint },
{ id: 'menu-chart-group-stock', caption: me.textStock }
{ id: 'menu-chart-group-area', caption: me.textArea, inline: true },
{ id: 'menu-chart-group-scatter', caption: me.textPoint, inline: true },
{ id: 'menu-chart-group-stock', caption: me.textStock, inline: true }
]),
store: new Common.UI.DataViewStore([
{ group: 'menu-chart-group-bar', type: Asc.c_oAscChartTypeSettings.barNormal, iconCls: 'column-normal', selected: true},
@ -762,9 +762,9 @@ define([
cls : 'btn-large-dataview',
iconCls : 'item-chartlist spark-column',
menu : new Common.UI.Menu({
style: 'width: 210px;',
style: 'width: 200px; padding-top: 12px;',
items: [
{ template: _.template('<div id="id-spark-menu-type" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
{ template: _.template('<div id="id-spark-menu-type" class="menu-insertchart" style="margin: 5px 5px 0 10px;"></div>') }
]
})
});
@ -772,17 +772,17 @@ define([
me.mnuSparkTypePicker = new Common.UI.DataView({
el: $('#id-spark-menu-type'),
parentMenu: btn.menu,
restoreHeight: 200,
restoreHeight: 120,
allowScrollbar: false,
groups: new Common.UI.DataViewGroupStore([
{ id: 'menu-chart-group-sparkcolumn', caption: me.textColumnSpark },
{ id: 'menu-chart-group-sparkline', caption: me.textLineSpark },
{ id: 'menu-chart-group-sparkwin', caption: me.textWinLossSpark }
{ id: 'menu-chart-group-sparkcolumn', inline: true },
{ id: 'menu-chart-group-sparkline', inline: true },
{ id: 'menu-chart-group-sparkwin', inline: true }
]),
store: new Common.UI.DataViewStore([
{ group: 'menu-chart-group-sparkcolumn', type: Asc.c_oAscSparklineType.Column, allowSelected: true, iconCls: 'spark-column'},
{ group: 'menu-chart-group-sparkline', type: Asc.c_oAscSparklineType.Line, allowSelected: true, iconCls: 'spark-line'},
{ group: 'menu-chart-group-sparkwin', type: Asc.c_oAscSparklineType.Stacked, allowSelected: true, iconCls: 'spark-win'}
{ group: 'menu-chart-group-sparkcolumn', type: Asc.c_oAscSparklineType.Column, allowSelected: true, iconCls: 'spark-column', tip: me.textColumnSpark},
{ group: 'menu-chart-group-sparkline', type: Asc.c_oAscSparklineType.Line, allowSelected: true, iconCls: 'spark-line', tip: me.textLineSpark},
{ group: 'menu-chart-group-sparkwin', type: Asc.c_oAscSparklineType.Stacked, allowSelected: true, iconCls: 'spark-win', tip: me.textWinLossSpark}
]),
itemTemplate: _.template('<div id="<%= id %>" class="item-chartlist <%= iconCls %>"></div>')
});
@ -979,7 +979,8 @@ define([
win.setSettings({
api : me.api,
range : props.getRange(),
validation: validation
validation: validation,
type : Asc.c_oAscSelectionDialogType.Chart
});
}
},
@ -1305,13 +1306,13 @@ define([
textHeight: 'Height',
textEditData: 'Edit Data and Location',
textChartType: 'Change Chart Type',
textLine: 'Line Chart',
textColumn: 'Column Chart',
textBar: 'Bar Chart',
textArea: 'Area Chart',
textPie: 'Pie Chart',
textPoint: 'XY (Scatter) Chart',
textStock: 'Stock Chart',
textLine: 'Line',
textColumn: 'Column',
textBar: 'Bar',
textArea: 'Area',
textPie: 'Pie',
textPoint: 'XY (Scatter)',
textStock: 'Stock',
textStyle: 'Style',
textAdvanced: 'Show advanced settings',
strSparkColor: 'Color',

View file

@ -94,6 +94,8 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
this.horAxisProps = null;
this.currentAxisProps = null;
this.dataRangeValid = '';
this.sparkDataRangeValid = '';
this.dataLocationRangeValid = '';
this.currentChartType = this._state.ChartType;
this.storageName = (this.isChart) ? 'sse-chart-settings-adv-category' : 'sse-spark-settings-adv-category';
},
@ -125,7 +127,7 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
cls : 'btn-large-dataview',
iconCls : 'item-chartlist bar-normal',
menu : new Common.UI.Menu({
style: 'width: 560px;',
style: 'width: 435px; padding-top: 12px;',
additionalAlign: menuAddAlign,
items: [
{ template: _.template('<div id="id-chart-dlg-menu-type" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
@ -136,15 +138,15 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
me.mnuChartTypePicker = new Common.UI.DataView({
el: $('#id-chart-dlg-menu-type'),
parentMenu: btn.menu,
restoreHeight: 411,
restoreHeight: 421,
groups: new Common.UI.DataViewGroupStore([
{ id: 'menu-chart-group-bar', caption: me.textColumn },
{ id: 'menu-chart-group-line', caption: me.textLine },
{ id: 'menu-chart-group-pie', caption: me.textPie },
{ id: 'menu-chart-group-hbar', caption: me.textBar },
{ id: 'menu-chart-group-area', caption: me.textArea },
{ id: 'menu-chart-group-scatter', caption: me.textPoint },
{ id: 'menu-chart-group-stock', caption: me.textStock }
{ id: 'menu-chart-group-area', caption: me.textArea, inline: true },
{ id: 'menu-chart-group-scatter', caption: me.textPoint, inline: true },
{ id: 'menu-chart-group-stock', caption: me.textStock, inline: true }
]),
store: new Common.UI.DataViewStore([
{ group: 'menu-chart-group-bar', type: Asc.c_oAscChartTypeSettings.barNormal, iconCls: 'column-normal', selected: true},
@ -782,10 +784,10 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
cls : 'btn-large-dataview',
iconCls : 'item-chartlist spark-column',
menu : new Common.UI.Menu({
style: 'width: 210px;',
style: 'width: 200px; padding-top: 12px;',
additionalAlign: menuAddAlign,
items: [
{ template: _.template('<div id="id-spark-dlg-menu-type" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
{ template: _.template('<div id="id-spark-dlg-menu-type" class="menu-insertchart" style="margin: 5px 5px 0 10px;"></div>') }
]
})
});
@ -793,16 +795,16 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
me.mnuSparkTypePicker = new Common.UI.DataView({
el: $('#id-spark-dlg-menu-type'),
parentMenu: btn.menu,
restoreHeight: 200,
restoreHeight: 120,
groups: new Common.UI.DataViewGroupStore([
{ id: 'menu-chart-group-sparkcolumn', caption: me.textColumnSpark },
{ id: 'menu-chart-group-sparkline', caption: me.textLineSpark },
{ id: 'menu-chart-group-sparkwin', caption: me.textWinLossSpark }
{ id: 'menu-chart-group-sparkcolumn', inline: true },
{ id: 'menu-chart-group-sparkline', inline: true },
{ id: 'menu-chart-group-sparkwin', inline: true }
]),
store: new Common.UI.DataViewStore([
{ group: 'menu-chart-group-sparkcolumn', type: Asc.c_oAscSparklineType.Column, allowSelected: true, iconCls: 'spark-column'},
{ group: 'menu-chart-group-sparkline', type: Asc.c_oAscSparklineType.Line, allowSelected: true, iconCls: 'spark-line'},
{ group: 'menu-chart-group-sparkwin', type: Asc.c_oAscSparklineType.Stacked, allowSelected: true, iconCls: 'spark-win'}
{ group: 'menu-chart-group-sparkcolumn', type: Asc.c_oAscSparklineType.Column, allowSelected: true, iconCls: 'spark-column', tip: me.textColumnSpark},
{ group: 'menu-chart-group-sparkline', type: Asc.c_oAscSparklineType.Line, allowSelected: true, iconCls: 'spark-line', tip: me.textLineSpark},
{ group: 'menu-chart-group-sparkwin', type: Asc.c_oAscSparklineType.Stacked, allowSelected: true, iconCls: 'spark-win', tip: me.textWinLossSpark}
]),
itemTemplate: _.template('<div id="<%= id %>" class="item-chartlist <%= iconCls %>"></div>')
});
@ -840,7 +842,7 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
labelText: this.textSingle,
name: 'asc-radio-sparkline'
});
*/
this.txtSparkDataRange = new Common.UI.InputField({
el : $('#spark-dlg-txt-range'),
name : 'range',
@ -853,7 +855,7 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
this.btnSelectSparkData = new Common.UI.Button({
el: $('#spark-dlg-btn-data')
});
// this.btnSelectSparkData.on('click', _.bind(this.onSelectData, this));
this.btnSelectSparkData.on('click', _.bind(this.onSelectSparkData, this));
this.txtSparkDataLocation = new Common.UI.InputField({
el : $('#spark-dlg-txt-location'),
@ -865,11 +867,10 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
});
this.btnSelectLocationData = new Common.UI.Button({
el: $('#spark-dlg-btn-data')
el: $('#spark-dlg-btn-location-data')
});
// this.btnSelectLocationData.on('click', _.bind(this.onSelectData, this));
*/
this.btnSelectLocationData.on('click', _.bind(this.onSelectLocationData, this));
this._arrEmptyCells = [
{ value: Asc.c_oAscEDispBlanksAs.Gap, displayValue: this.textGaps },
{ value: Asc.c_oAscEDispBlanksAs.Zero, displayValue: this.textZero },
@ -1371,6 +1372,30 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
this.spnSparkMinValue.setValue((props.asc_getManualMin() !== null) ? props.asc_getManualMin() : '', true);
this.spnSparkMaxValue.setValue((props.asc_getManualMax() !== null) ? props.asc_getManualMax() : '', true);
var value = props.asc_getDataRanges();
if (value && value.length==2) {
this.txtSparkDataRange.setValue((value[0]) ? value[0] : '');
this.txtSparkDataLocation.setValue((value[1]) ? value[1] : '');
this.sparkDataRangeValid = value[0];
this.txtSparkDataRange.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.dataLocationRangeValid = value[1];
this.txtSparkDataLocation.validation = function(value) {
if (_.isEmpty(value))
return true;
var isvalid = me.api.asc_checkDataRange(Asc.c_oAscSelectionDialogType.FormatTable, value, false);
return (isvalid==Asc.c_oAscError.ID.DataRangeError) ? me.textInvalidRange : true;
};
}
this._changedProps = new Asc.sparklineGroup();
this._noApply = false;
}
@ -1472,7 +1497,8 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
win.setSettings({
api : me.api,
isRows : (me.cmbDataDirect.getValue()==0),
range : (!_.isEmpty(me.txtDataRange.getValue()) && (me.txtDataRange.checkValidate()==true)) ? me.txtDataRange.getValue() : me.dataRangeValid
range : (!_.isEmpty(me.txtDataRange.getValue()) && (me.txtDataRange.checkValidate()==true)) ? me.txtDataRange.getValue() : me.dataRangeValid,
type : Asc.c_oAscSelectionDialogType.Chart
});
}
},
@ -1489,6 +1515,63 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
}
},
onSelectSparkData: function() {
var me = this;
if (me.api) {
var handlerDlg = function(dlg, result) {
if (result == 'ok') {
me.sparkDataRangeValid = dlg.getSettings();
me.txtSparkDataRange.setValue(me.sparkDataRangeValid);
me.txtSparkDataRange.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(me.txtSparkDataRange.getValue()) && (me.txtSparkDataRange.checkValidate()==true)) ? me.txtSparkDataRange.getValue() : me.sparkDataRangeValid,
type : Asc.c_oAscSelectionDialogType.Chart
});
}
},
onSelectLocationData: function() {
var me = this;
if (me.api) {
var handlerDlg = function(dlg, result) {
if (result == 'ok') {
me.dataLocationRangeValid = dlg.getSettings();
me.txtSparkDataLocation.setValue(me.dataLocationRangeValid);
me.txtSparkDataLocation.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(me.txtSparkDataLocation.getValue()) && (me.txtSparkDataLocation.checkValidate()==true)) ? me.txtSparkDataLocation.getValue() : me.dataLocationRangeValid,
type : Asc.c_oAscSelectionDialogType.FormatTable
});
}
},
show: function() {
Common.Views.AdvancedSettingsWindow.prototype.show.apply(this, arguments);
@ -1511,7 +1594,7 @@ define([ 'text!spreadsheeteditor/main/app/template/ChartSettingsDlg.template'
textBar: 'Bar',
textArea: 'Area',
textPie: 'Pie',
textPoint: 'Point',
textPoint: 'XY (Scatter)',
textStock: 'Stock',
textDataRows: 'in rows',
textDataColumns: 'in columns',

View file

@ -162,18 +162,15 @@ define([
);
var me = this;
this.panels = {};
require(['spreadsheeteditor/main/app/view/FileMenuPanels'], function(){
me.panels = {
'saveas' : (new SSE.Views.FileMenuPanels.ViewSaveAs({menu:me})).render(),
'opts' : (new SSE.Views.FileMenuPanels.Settings({menu:me})).render(),
'info' : (new SSE.Views.FileMenuPanels.DocumentInfo({menu:me})).render(),
'rights' : (new SSE.Views.FileMenuPanels.DocumentRights({menu:me})).render(),
'help' : (new SSE.Views.FileMenuPanels.Help({menu:me})).render()
};
me.panels = {
'saveas' : (new SSE.Views.FileMenuPanels.ViewSaveAs({menu:me})).render(),
'opts' : (new SSE.Views.FileMenuPanels.Settings({menu:me})).render(),
'info' : (new SSE.Views.FileMenuPanels.DocumentInfo({menu:me})).render(),
'rights' : (new SSE.Views.FileMenuPanels.DocumentRights({menu:me})).render(),
'help' : (new SSE.Views.FileMenuPanels.Help({menu:me})).render()
};
me.$el.find('.content-box').hide();
});
me.$el.find('.content-box').hide();
return this;
},

View file

@ -652,7 +652,7 @@ define([
this.lblAutosave.text(this.textAutoRecover);
}
$('tr.coauth', this.el)[mode.canCoAuthoring && mode.isEdit ? 'show' : 'hide']();
$('tr.coauth.changes', this.el)[mode.isEdit && mode.canLicense && !mode.isOffline && mode.canCoAuthoring? 'show' : 'hide']();
$('tr.coauth.changes', this.el)[mode.isEdit && !mode.isOffline && mode.canCoAuthoring? 'show' : 'hide']();
},
setApi: function(api) {
@ -733,7 +733,7 @@ define([
Common.localStorage.setItem("sse-settings-zoom", this.cmbZoom.getValue());
/** coauthoring begin **/
Common.localStorage.setItem("sse-settings-livecomment", this.chLiveComment.isChecked() ? 1 : 0);
if (this.mode.isEdit && this.mode.canLicense && !this.mode.isOffline && this.mode.canCoAuthoring)
if (this.mode.isEdit && !this.mode.isOffline && this.mode.canCoAuthoring)
Common.localStorage.setItem("sse-settings-coauthmode", this.cmbCoAuthMode.getValue());
/** coauthoring end **/
Common.localStorage.setItem("sse-settings-fontrender", this.cmbFontRender.getValue());

View file

@ -251,7 +251,8 @@ define([
win.show(xy.left + 65, xy.top + 77);
win.setSettings({
api : me.api,
range : (!_.isEmpty(me.txtDataRange.getValue()) && (me.txtDataRange.checkValidate()==true)) ? me.txtDataRange.getValue() : me.dataRangeValid
range : (!_.isEmpty(me.txtDataRange.getValue()) && (me.txtDataRange.checkValidate()==true)) ? me.txtDataRange.getValue() : me.dataRangeValid,
type : Asc.c_oAscSelectionDialogType.Chart
});
}
},

View file

@ -255,6 +255,7 @@ define([
txtShapeSettings: 'Shape Settings',
txtTextArtSettings: 'Text Art Settings',
txtChartSettings: 'Chart Settings',
txtSparklineSettings: 'Sparkline Settings',
txtTableSettings: 'Table Settings'
}, SSE.Views.RightMenu || {}));
});

View file

@ -140,7 +140,7 @@ define([
setApi: function(o) {
this.api = o;
if (o) {
this.api.asc_registerCallback('asc_onInitTablePictures', _.bind(this.onApiInitTableTemplates, this));
this.api.asc_registerCallback('asc_onSendThemeColors', _.bind(this.onSendThemeColors, this));
}
return this;
},
@ -347,6 +347,14 @@ define([
}
},
onSendThemeColors: function() {
// get new table templates
if (this.cmbTableTemplate) {
this.onApiInitTableTemplates(this.api.asc_getTablePictures(this._originalProps));
this.cmbTableTemplate.menuPicker.scroller.update({alwaysVisibleY: true});
}
},
onApiInitTableTemplates: function(Templates){
var self = this;
this._isTemplatesChanged = true;
@ -387,7 +395,8 @@ define([
type : template.asc_getType(),
imageUrl : template.asc_getImage(),
allowSelected : true,
selected : false
selected : false,
tip : template.asc_getDisplayName()
});
});
self.cmbTableTemplate.menuPicker.store.add(arr);

View file

@ -505,33 +505,13 @@ define([
id : 'id-toolbar-btn-insertchart',
cls : 'btn-toolbar',
iconCls : 'btn-insertchart',
lock : [_set.editCell, _set.selChartText, _set.selShape, _set.selShapeText, _set.selImage, _set.lostConnect, _set.coAuth]
/*,menu : new Common.UI.Menu({
items : [
this.mnuInsertChart = new Common.UI.MenuItem({
caption: this.textInsCharts,
value: 'chart',
menu: new Common.UI.Menu({
menuAlign: 'tl-tr',
style: 'width: 560px;',
items: [
{ template: _.template('<div id="id-toolbar-menu-insertchart" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
]
})
}),
this.mnuInsertSparkline = new Common.UI.MenuItem({
caption: this.textInsSparklines,
value: 'chart',
menu: new Common.UI.Menu({
menuAlign: 'tl-tr',
style: 'width: 210px;',
items: [
{ template: _.template('<div id="id-toolbar-menu-insertspark" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
]
})
})
lock : [_set.editCell, _set.selChartText, _set.selShape, _set.selShapeText, _set.selImage, _set.lostConnect, _set.coAuth, _set.coAuthText],
menu : new Common.UI.Menu({
style: 'width: 435px;',
items: [
{ template: _.template('<div id="id-toolbar-menu-insertchart" class="menu-insertchart" style="margin: 5px 5px 5px 10px;"></div>') }
]
})*/
})
});
me.btnEditChart = new Common.UI.Button({
@ -1304,7 +1284,7 @@ define([
this.btnWrap.updateHint(this.tipWrap);
this.btnTextOrient.updateHint(this.tipTextOrientation);
this.btnInsertImage.updateHint(this.tipInsertImage);
this.btnInsertChart.updateHint(this.tipInsertChart);
this.btnInsertChart.updateHint(this.tipInsertChartSpark);
this.btnInsertText.updateHint(this.tipInsertText);
this.btnInsertHyperlink.updateHint(this.tipInsertHyperlink + Common.Utils.String.platformKey('Ctrl+K'));
this.btnInsertShape.updateHint(this.tipInsertShape);
@ -1714,20 +1694,22 @@ define([
]
}));
/*
this.mnuInsertChartPicker = new Common.UI.DataView({
el: $('#id-toolbar-menu-insertchart'),
parentMenu: this.mnuInsertChart.menu,
parentMenu: this.btnInsertChart.menu,
showLast: false,
restoreHeight: 411,
restoreHeight: 539,
groups: new Common.UI.DataViewGroupStore([
{ id: 'menu-chart-group-bar', caption: this.textColumn },
{ id: 'menu-chart-group-line', caption: this.textLine },
{ id: 'menu-chart-group-pie', caption: this.textPie },
{ id: 'menu-chart-group-hbar', caption: this.textBar },
{ id: 'menu-chart-group-area', caption: this.textArea },
{ id: 'menu-chart-group-scatter', caption: this.textPoint },
{ id: 'menu-chart-group-stock', caption: this.textStock }
{ id: 'menu-chart-group-bar', caption: me.textColumn, headername: me.textCharts },
{ id: 'menu-chart-group-line', caption: me.textLine },
{ id: 'menu-chart-group-pie', caption: me.textPie },
{ id: 'menu-chart-group-hbar', caption: me.textBar },
{ id: 'menu-chart-group-area', caption: me.textArea, inline: true },
{ id: 'menu-chart-group-scatter', caption: me.textPoint, inline: true },
{ id: 'menu-chart-group-stock', caption: me.textStock, inline: true },
{ id: 'menu-chart-group-sparkcolumn', inline: true, headername: me.textSparks },
{ id: 'menu-chart-group-sparkline', inline: true },
{ id: 'menu-chart-group-sparkwin', inline: true }
]),
store: new Common.UI.DataViewStore([
{ group: 'menu-chart-group-bar', type: Asc.c_oAscChartTypeSettings.barNormal, allowSelected: true, iconCls: 'column-normal', selected: true},
@ -1754,29 +1736,13 @@ define([
{ group: 'menu-chart-group-area', type: Asc.c_oAscChartTypeSettings.areaStacked, allowSelected: true, iconCls: 'area-stack'},
{ group: 'menu-chart-group-area', type: Asc.c_oAscChartTypeSettings.areaStackedPer, allowSelected: true, iconCls: 'area-pstack'},
{ group: 'menu-chart-group-scatter', type: Asc.c_oAscChartTypeSettings.scatter, allowSelected: true, iconCls: 'point-normal'},
{ group: 'menu-chart-group-stock', type: Asc.c_oAscChartTypeSettings.stock, allowSelected: true, iconCls: 'stock-normal'}
{ group: 'menu-chart-group-stock', type: Asc.c_oAscChartTypeSettings.stock, allowSelected: true, iconCls: 'stock-normal'},
{ group: 'menu-chart-group-sparkcolumn', type: Asc.c_oAscSparklineType.Column, allowSelected: true, iconCls: 'spark-column', tip: me.textColumnSpark},
{ group: 'menu-chart-group-sparkline', type: Asc.c_oAscSparklineType.Line, allowSelected: true, iconCls: 'spark-line', tip: me.textLineSpark},
{ group: 'menu-chart-group-sparkwin', type: Asc.c_oAscSparklineType.Stacked, allowSelected: true, iconCls: 'spark-win', tip: me.textWinLossSpark}
]),
itemTemplate: _.template('<div id="<%= id %>" class="item-chartlist <%= iconCls %>"></div>')
});
this.mnuInsertSparkPicker = new Common.UI.DataView({
el: $('#id-toolbar-menu-insertspark'),
parentMenu: this.mnuInsertSparkline.menu,
showLast: false,
restoreHeight: 200,
allowScrollbar: false,
groups: new Common.UI.DataViewGroupStore([
{ id: 'menu-chart-group-sparkcolumn', caption: this.textColumnSpark },
{ id: 'menu-chart-group-sparkline', caption: this.textLineSpark },
{ id: 'menu-chart-group-sparkwin', caption: this.textWinLossSpark }
]),
store: new Common.UI.DataViewStore([
{ group: 'menu-chart-group-sparkcolumn', type: Asc.c_oAscSparklineType.Column, allowSelected: true, iconCls: 'spark-column'},
{ group: 'menu-chart-group-sparkline', type: Asc.c_oAscSparklineType.Line, allowSelected: true, iconCls: 'spark-line'},
{ group: 'menu-chart-group-sparkwin', type: Asc.c_oAscSparklineType.Stacked, allowSelected: true, iconCls: 'spark-win'}
]),
itemTemplate: _.template('<div id="<%= id %>" class="item-chartlist <%= iconCls %>"></div>')
})
*/
},
setApi: function(api) {
@ -2124,17 +2090,19 @@ define([
textInsText: 'Insert text box',
textInsTextArt: 'Insert Text Art',
textInsCharts: 'Charts',
textLine: 'Line Chart',
textColumn: 'Column Chart',
textBar: 'Bar Chart',
textArea: 'Area Chart',
textPie: 'Pie Chart',
textPoint: 'Point Chart',
textStock: 'Stock Chart',
textInsSparklines: 'Sparklines',
textLine: 'Line',
textColumn: 'Column',
textBar: 'Bar',
textArea: 'Area',
textPie: 'Pie',
textPoint: 'XY (Scatter)',
textStock: 'Stock',
textLineSpark: 'Line',
textColumnSpark: 'Column',
textWinLossSpark: 'Win/Loss',
tipInsertEquation: 'Insert Equation'
tipInsertEquation: 'Insert Equation',
textCharts: 'Charts',
textSparks: 'Sparklines',
tipInsertChartSpark: 'Insert Chart or Sparkline'
}, SSE.Views.Toolbar || {}));
});

View file

@ -164,6 +164,7 @@ require([
'spreadsheeteditor/main/app/controller/LeftMenu',
'spreadsheeteditor/main/app/controller/Main',
'spreadsheeteditor/main/app/controller/Print',
'spreadsheeteditor/main/app/view/FileMenuPanels',
'spreadsheeteditor/main/app/view/ParagraphSettings',
'spreadsheeteditor/main/app/view/ImageSettings',
'spreadsheeteditor/main/app/view/ChartSettings',

View file

@ -721,33 +721,48 @@
"SSE.Views.CellRangeDialog.txtInvalidRange": "ERROR! Invalid cells range",
"SSE.Views.CellRangeDialog.txtTitle": "Select Data Range",
"SSE.Views.ChartSettings.textAdvanced": "Show advanced settings",
"SSE.Views.ChartSettings.textArea": "Area Chart",
"SSE.Views.ChartSettings.textBar": "Bar Chart",
"SSE.Views.ChartSettings.textArea": "Area",
"SSE.Views.ChartSettings.textBar": "Bar",
"SSE.Views.ChartSettings.textChartType": "Change Chart Type",
"SSE.Views.ChartSettings.textColumn": "Column Chart",
"SSE.Views.ChartSettings.textColumn": "Column",
"SSE.Views.ChartSettings.textEditData": "Edit Data and Location",
"SSE.Views.ChartSettings.textHeight": "Height",
"SSE.Views.ChartSettings.textKeepRatio": "Constant Proportions",
"SSE.Views.ChartSettings.textLine": "Line Chart",
"SSE.Views.ChartSettings.textPie": "Pie Chart",
"SSE.Views.ChartSettings.textPoint": "XY (Scatter) Chart",
"SSE.Views.ChartSettings.textLine": "Line",
"SSE.Views.ChartSettings.textPie": "Pie",
"SSE.Views.ChartSettings.textPoint": "XY (Scatter)",
"SSE.Views.ChartSettings.textRanges": "Data Range",
"SSE.Views.ChartSettings.textSelectData": "Select Data",
"SSE.Views.ChartSettings.textSize": "Size",
"SSE.Views.ChartSettings.textStock": "Stock Chart",
"SSE.Views.ChartSettings.textStock": "Stock",
"SSE.Views.ChartSettings.textStyle": "Style",
"SSE.Views.ChartSettings.textType": "Type",
"SSE.Views.ChartSettings.textWidth": "Width",
"SSE.Views.ChartSettings.textLineSpark": "Line",
"SSE.Views.ChartSettings.textColumnSpark": "Column",
"SSE.Views.ChartSettings.textWinLossSpark": "Win/Loss",
"SSE.Views.ChartSettings.strSparkColor": "Color",
"SSE.Views.ChartSettings.strLineWeight": "Line Weight",
"SSE.Views.ChartSettings.textMarkers": "Markers",
"SSE.Views.ChartSettings.textNewColor": "Add New Custom Color",
"SSE.Views.ChartSettings.textHighPoint": "High Point",
"SSE.Views.ChartSettings.textLowPoint": "Low Point",
"SSE.Views.ChartSettings.textNegativePoint": "Negative Point",
"SSE.Views.ChartSettings.textFirstPoint": "First Point",
"SSE.Views.ChartSettings.textLastPoint": "Last Point",
"SSE.Views.ChartSettings.strTemplate": "Template",
"SSE.Views.ChartSettings.textShow": "Show",
"SSE.Views.ChartSettings.textBorderSizeErr": "The entered value is incorrect.<br>Please enter a value between 0 pt and 1584 pt.",
"SSE.Views.ChartSettingsDlg.cancelButtonText": "Cancel",
"SSE.Views.ChartSettingsDlg.errorMaxRows": "ERROR! The maximum number of data series per chart is 255",
"SSE.Views.ChartSettingsDlg.errorStockChart": "Incorrect row order. To build a stock chart place the data on the sheet in the following order:<br> opening price, max price, min price, closing price.",
"SSE.Views.ChartSettingsDlg.textArea": "Area Chart",
"SSE.Views.ChartSettingsDlg.textArea": "Area",
"SSE.Views.ChartSettingsDlg.textAuto": "Auto",
"SSE.Views.ChartSettingsDlg.textAxisCrosses": "Axis Crosses",
"SSE.Views.ChartSettingsDlg.textAxisOptions": "Axis Options",
"SSE.Views.ChartSettingsDlg.textAxisPos": "Axis Position",
"SSE.Views.ChartSettingsDlg.textAxisSettings": "Axis Settings",
"SSE.Views.ChartSettingsDlg.textBar": "Bar Chart",
"SSE.Views.ChartSettingsDlg.textBar": "Bar",
"SSE.Views.ChartSettingsDlg.textBetweenTickMarks": "Between Tick Marks",
"SSE.Views.ChartSettingsDlg.textBillions": "Billions",
"SSE.Views.ChartSettingsDlg.textBottom": "Bottom",
@ -755,7 +770,7 @@
"SSE.Views.ChartSettingsDlg.textCenter": "Center",
"SSE.Views.ChartSettingsDlg.textChartElementsLegend": "Chart Elements &<br/>Chart Legend",
"SSE.Views.ChartSettingsDlg.textChartTitle": "Chart Title",
"SSE.Views.ChartSettingsDlg.textColumn": "Column Chart",
"SSE.Views.ChartSettingsDlg.textColumn": "Column",
"SSE.Views.ChartSettingsDlg.textCross": "Cross",
"SSE.Views.ChartSettingsDlg.textCustom": "Custom",
"SSE.Views.ChartSettingsDlg.textDataColumns": "in columns",
@ -813,8 +828,8 @@
"SSE.Views.ChartSettingsDlg.textOut": "Out",
"SSE.Views.ChartSettingsDlg.textOuterTop": "Outer Top",
"SSE.Views.ChartSettingsDlg.textOverlay": "Overlay",
"SSE.Views.ChartSettingsDlg.textPie": "Pie Chart",
"SSE.Views.ChartSettingsDlg.textPoint": "XY (Scatter) Chart",
"SSE.Views.ChartSettingsDlg.textPie": "Pie",
"SSE.Views.ChartSettingsDlg.textPoint": "XY (Scatter)",
"SSE.Views.ChartSettingsDlg.textReverse": "Values in reverse order",
"SSE.Views.ChartSettingsDlg.textRight": "Right",
"SSE.Views.ChartSettingsDlg.textRightOverlay": "Right Overlay",
@ -828,7 +843,7 @@
"SSE.Views.ChartSettingsDlg.textShowGrid": "Grid Lines",
"SSE.Views.ChartSettingsDlg.textShowValues": "Display chart values",
"SSE.Views.ChartSettingsDlg.textSmooth": "Smooth",
"SSE.Views.ChartSettingsDlg.textStock": "Stock Chart",
"SSE.Views.ChartSettingsDlg.textStock": "Stock",
"SSE.Views.ChartSettingsDlg.textStraight": "Straight",
"SSE.Views.ChartSettingsDlg.textStyle": "Style",
"SSE.Views.ChartSettingsDlg.textTenMillions": "10 000 000",
@ -849,6 +864,24 @@
"SSE.Views.ChartSettingsDlg.textXAxisTitle": "X Axis Title",
"SSE.Views.ChartSettingsDlg.textYAxisTitle": "Y Axis Title",
"SSE.Views.ChartSettingsDlg.txtEmpty": "This field is required",
"SSE.Views.ChartSettingsDlg.textLineSpark": "Line",
"SSE.Views.ChartSettingsDlg.textColumnSpark": "Column",
"SSE.Views.ChartSettingsDlg.textWinLossSpark": "Win/Loss",
"SSE.Views.ChartSettingsDlg.textSparkRanges": "Sparkline Ranges",
"SSE.Views.ChartSettingsDlg.textLocationRange": "Location Range",
"SSE.Views.ChartSettingsDlg.textEmptyCells": "Hidden and Empty cells",
"SSE.Views.ChartSettingsDlg.textShowEmptyCells": "Show empty cells as",
"SSE.Views.ChartSettingsDlg.textShowData": "Show data in hidden rows and columns",
"SSE.Views.ChartSettingsDlg.textGroup": "Group Sparkline",
"SSE.Views.ChartSettingsDlg.textSingle": "Single Sparkline",
"SSE.Views.ChartSettingsDlg.textGaps": "Gaps",
"SSE.Views.ChartSettingsDlg.textZero": "Zero",
"SSE.Views.ChartSettingsDlg.textEmptyLine": "Connect data points with line",
"SSE.Views.ChartSettingsDlg.textShowSparkAxis": "Show Axis",
"SSE.Views.ChartSettingsDlg.textReverseOrder": "Reverse order",
"SSE.Views.ChartSettingsDlg.textAutoEach": "Auto for Each",
"SSE.Views.ChartSettingsDlg.textSameAll": "Same for All",
"SSE.Views.ChartSettingsDlg.textTitleSparkline": "Sparkline - Advanced Settings",
"SSE.Views.DigitalFilterDialog.cancelButtonText": "Cancel",
"SSE.Views.DigitalFilterDialog.capAnd": "And",
"SSE.Views.DigitalFilterDialog.capCondition1": "equals",
@ -1219,6 +1252,7 @@
"SSE.Views.RightMenu.txtParagraphSettings": "Text Settings",
"SSE.Views.RightMenu.txtSettings": "Common Settings",
"SSE.Views.RightMenu.txtShapeSettings": "Shape Settings",
"SSE.Views.RightMenu.txtSparklineSettings": "Sparkline Settings",
"SSE.Views.RightMenu.txtTableSettings": "Table Settings",
"SSE.Views.RightMenu.txtTextArtSettings": "Text Art Settings",
"SSE.Views.SetValueDialog.cancelButtonText": "Cancel",
@ -1425,6 +1459,15 @@
"SSE.Views.Toolbar.textBottomBorders": "Bottom Borders",
"SSE.Views.Toolbar.textCenterBorders": "Inside Vertical Borders",
"SSE.Views.Toolbar.textClockwise": "Angle Clockwise",
"SSE.Views.Toolbar.textArea": "Area",
"SSE.Views.Toolbar.textBar": "Bar",
"SSE.Views.Toolbar.textColumn": "Column",
"SSE.Views.Toolbar.textLine": "Line",
"SSE.Views.Toolbar.textPie": "Pie",
"SSE.Views.Toolbar.textPoint": "XY (Scatter)",
"SSE.Views.Toolbar.textStock": "Stock",
"SSE.Views.Toolbar.textCharts": "Charts",
"SSE.Views.Toolbar.textSparks": "Sparklines",
"SSE.Views.Toolbar.textCompactToolbar": "View Compact Toolbar",
"SSE.Views.Toolbar.textCounterCw": "Angle Counterclockwise",
"SSE.Views.Toolbar.textDelLeft": "Shift Cells Left",
@ -1494,6 +1537,7 @@
"SSE.Views.Toolbar.tipInsertOpt": "Insert Cells",
"SSE.Views.Toolbar.tipInsertShape": "Insert Autoshape",
"SSE.Views.Toolbar.tipInsertText": "Insert Text",
"SSE.Views.Toolbar.tipInsertChartSpark": "Insert Chart or Sparkline",
"SSE.Views.Toolbar.tipMerge": "Merge",
"SSE.Views.Toolbar.tipNewDocument": "New Document",
"SSE.Views.Toolbar.tipNumFormat": "Number Format",
@ -1578,6 +1622,9 @@
"SSE.Views.Toolbar.txtTime": "Time",
"SSE.Views.Toolbar.txtUnmerge": "Unmerge Cells",
"SSE.Views.Toolbar.txtYen": "¥ Yen",
"SSE.Views.Toolbar.textLineSpark": "Line",
"SSE.Views.Toolbar.textColumnSpark": "Column",
"SSE.Views.Toolbar.textWinLossSpark": "Win/Loss",
"SSE.Views.Top10FilterDialog.cancelButtonText": "Cancel",
"SSE.Views.Top10FilterDialog.okButtonText": "OK",
"SSE.Views.Top10FilterDialog.textType": "Show",

View file

@ -459,8 +459,6 @@
.header-name {
padding: 7px 2px 7px 10px;
font-weight: bold;
cursor: default;
}
}
}

View file

@ -172,20 +172,12 @@ button:active:not(.disabled) .btn-change-shape {background-position: -56px -
.menu-insertchart {
.group-description {
float: left;
width: 125px;
line-height: 58px;
padding-left: 6px;
padding-left: 4px;
}
.group-items-container {
float: left;
position: relative;
& > div {
float: left;
margin: 0 0 0 14px;
}
}
}

View file

@ -8,6 +8,9 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/common/apiCommon.js",
"../../../../sdkjs/common/SerializeCommonWordExcel.js",
"../../../../sdkjs/common/editorscommon.js",
"../../../../sdkjs/common/HistoryCommon.js",
"../../../../sdkjs/common/TableId.js",
"../../../../sdkjs/common/TableIdChanges.js",
"../../../../sdkjs/common/NumFormat.js",
"../../../../sdkjs/common/SerializeChart.js",
"../../../../sdkjs/common/AdvancedOptions.js",
@ -25,7 +28,6 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/common/Drawings/Hit.js",
"../../../../sdkjs/common/Drawings/ArcTo.js",
"../../../../sdkjs/common/Drawings/ColorArray.js",
"../../../../sdkjs/common/Drawings/Format/Constants.js",
"../../../../sdkjs/common/Drawings/CommonController.js",
"../../../../sdkjs/common/Drawings/States.js",
"../../../../sdkjs/common/Drawings/Format/CreateGeometry.js",
@ -61,7 +63,8 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/common/Overlay.js",
"../../../../sdkjs/common/Drawings/HatchPattern.js",
"../../../../sdkjs/common/scroll.js",
"../../../../sdkjs/cell/view/iscroll.js",
"../../../../sdkjs/common/Scrolls/iscroll.js",
"../../../../sdkjs/common/Scrolls/mobileTouchManagerBase.js",
"../../../../sdkjs/common/wordcopypaste.js",
"../../../../sdkjs/cell/apiDefines.js",
"../../../../sdkjs/cell/document/empty-workbook.js",
@ -114,12 +117,21 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/cell/Private/comments.js",
"../../../../sdkjs/word/Editor/Common.js",
"../../../../sdkjs/word/Editor/Comments.js",
"../../../../sdkjs/word/Editor/CommentsChanges.js",
"../../../../sdkjs/word/Editor/Styles.js",
"../../../../sdkjs/word/Editor/StylesChanges.js",
"../../../../sdkjs/word/Editor/ParagraphContent.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaTextPr.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaTextPrChanges.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaDrawing.js",
"../../../../sdkjs/word/Editor/Paragraph/ParaDrawingChanges.js",
"../../../../sdkjs/word/Editor/Paragraph.js",
"../../../../sdkjs/word/Editor/ParagraphChanges.js",
"../../../../sdkjs/word/Editor/DocumentContentBase.js",
"../../../../sdkjs/word/Editor/Document.js",
"../../../../sdkjs/word/Editor/DocumentChanges.js",
"../../../../sdkjs/word/Editor/DocumentContent.js",
"../../../../sdkjs/word/Editor/DocumentContentChanges.js",
"../../../../sdkjs/word/Editor/DocumentControllerBase.js",
"../../../../sdkjs/word/Editor/LogicDocumentController.js",
"../../../../sdkjs/word/Editor/DrawingsController.js",
@ -127,22 +139,32 @@ var sdk_dev_scrpipts = [
"../../../../sdkjs/word/Editor/FlowObjects.js",
"../../../../sdkjs/word/Editor/ParagraphContentBase.js",
"../../../../sdkjs/word/Editor/Hyperlink.js",
"../../../../sdkjs/word/Editor/HyperlinkChanges.js",
"../../../../sdkjs/word/Editor/Field.js",
"../../../../sdkjs/word/Editor/FieldChanges.js",
"../../../../sdkjs/word/Editor/Run.js",
"../../../../sdkjs/word/Editor/RunChanges.js",
"../../../../sdkjs/word/Editor/Math.js",
"../../../../sdkjs/word/Editor/MathChanges.js",
"../../../../sdkjs/word/Editor/Paragraph_Recalculate.js",
"../../../../sdkjs/word/Editor/Sections.js",
"../../../../sdkjs/word/Editor/SectionsChanges.js",
"../../../../sdkjs/word/Editor/Numbering.js",
"../../../../sdkjs/word/Editor/NumberingChanges.js",
"../../../../sdkjs/word/Editor/HeaderFooter.js",
"../../../../sdkjs/word/Editor/Table.js",
"../../../../sdkjs/word/Editor/Table/TableChanges.js",
"../../../../sdkjs/word/Editor/Table/TableRecalculate.js",
"../../../../sdkjs/word/Editor/Table/TableDraw.js",
"../../../../sdkjs/word/Editor/Table/TableRow.js",
"../../../../sdkjs/word/Editor/Table/TableRowChanges.js",
"../../../../sdkjs/word/Editor/Table/TableCell.js",
"../../../../sdkjs/word/Editor/Table/TableCellChanges.js",
"../../../../sdkjs/word/Editor/Serialize2.js",
"../../../../sdkjs/word/Editor/FontClassification.js",
"../../../../sdkjs/word/Editor/Spelling.js",
"../../../../sdkjs/word/Editor/Footnotes.js",
"../../../../sdkjs/word/Editor/FootnotesChanges.js",
"../../../../sdkjs/word/Editor/FootEndNote.js",
"../../../../sdkjs/word/Editor/GraphicObjects/WrapManager.js",
"../../../../sdkjs/word/Math/mathTypes.js",